- Цукабдь!!! Который раз упарываюсь черепом. mse homjak(664 знак., 04.03.2026 16:38, ARM, полностью, +1)
- Нужно передать произвольный кадр ETHERNET без LWIP через функцию
(HAL_ETH_Transmit) - Ни у кого нет примера? Трудности с заполнением
структуры hetc - Balda(25.02.2026 10:03, ARM, полностью)
- ... Думал так все сложно.. Оказалось по Дескриптеру указателя
буфера передачи закатать данные и все.. Ушло.. Во бля, думал опять
на неделю зависну.. Только вопрос в контр сумме фрейма. Не пойму
самому считать или мак за меня сделает.. - Balda(28.02.2026 10:49)
- Гопота codex великолепно справляется с задачами по LWIP. - POV(25.02.2026 10:20)
- Спасибо за наводку! Эта софтина за 5 минут поправила проект, на
который я все выходные положил безуспешно. За такое, пожалуй, и
двадцатку не жалко. - vesago(02.03.2026 09:24)
- Это что значит, можно поподробнее? - Balda(25.02.2026 10:25)
- Ну я пользуюсь CursorAI. Если агента GPT-5.3 Codex (или помладше)
активировать и давать задачи - с первого справляется почти со всем.
А если уж логи стека активировать, то вообще без проблем по их
анализу. POV(1 знак., 25.02.2026 10:28, картинка)
- Блин, еще и с этим разбираться... Не потяну я.. - Balda(25.02.2026 10:38)
- Там не надо ни с чем разбираться. Открываешь свой проект, пишешь
что надо сделать. Он в реальном времени вносит правки, их сразу
видно, что куда он написал. К примеру мне недавно CursorAI написал
минуты за 2 с нуля модуль FTP-сервера под мои требования. При этом
обозвал функции в моём стиле, модуль сам подключил к проекту,
вставил где нужно инициализацию, увидел, что у меня в проекте есть
Firewall, добавил туда пункт для FTP, изменил настройки, подправил
Web-интерфейс. После FDA(545 знак., 28.02.2026 18:51)
- Как-то (может и не здесь) была тема про некую особость выводов
STM32 которые для кварца 32768. Это РС14 и РС15. Они какие-то
ненастоящие дял ввода/вывода? Дохлые? Короче сейчас у меня это
просто вход. От оптрона. Выход оптрона подтянут к 3В через 3,3К. С
него на вход МК последовательный резистор 300 Ом. И параллельно
входу 1000пФ. С той стороны оптрона выход другого устройства.
Сейчас на стенде это 1 метр. И вот работало-работало пару недель и
бац. Не видит импульсов (там Лaгyнoв(334 знак., 27.02.2026 09:46, ARM, полностью)
- Столкнулся с проблемой использования встроенного I2C у Artery
AT32F407 Мне нужно передать данные сперва по одному адресу, потом
по другому. Работу веду по прерываниям. Первая порция передается
нормально, а дальше начинаются проблемы. Генерить рестарт на шине
модуль I2C не умеет, генерить стоп тоже проблема, вместо этого
предлагается еще раз генерить старт. Я так и делаю, но после этого
начинаются чудеса. Первый байт (адрес с битом направления передачи)
передается, а дальше AlexBi(436 знак., 14.02.2026 22:53, ARM, полностью)
- UPD:
В результате некоторого количества экспериментов пришел к
такому решению: после передачи передачи байта второго адреса опять
заставляю выдать старт, после которого опять передаю второй адрес,
дальше вторая порция данных нормально выдается. Нашел более правильный вариант, оказалось, что после установки
бита команды на передачу старта по непонятной причине
устанавливался бит приема байта, т.е. признак того, что что-то
принято. Пока этот принятый байт AlexBi(677 знак., 19.02.2026 14:46)
- C i2c какой то вселенский заговор. Редко где нормально работающий
аппаратный модуль а у китайцев - так и вовсе безглючных похоже нет.
Я теперь когда о новом устройстве думаю исключаю i2c как класс если
условия использования не дают возможности реализовать обмен
ногодрыгом, все стараюсь посадить на spi. - 3m(17.02.2026 15:12)
- Ну как же? У всех STM32, кроме F103, нормальный I2C. Разве что,
конечно, алгоритм идиотский: даже используя DMA, все равно нужно
провести часть работы вручную… - Eddy_Em(18.02.2026 08:38)
- НетЬ. У всех STM32 убогий I2C c теми или иными багами. Вообще у STM
нет ни одного прямого периферийного узла. UART, таймеры, SPI -
везде говнеца подложено. Но дешево и популярно, не отнять. - LightElf(18.02.2026 15:15)
- Убогий i2c в stm32 не у всех а только у стареньких которые китайцы
и клонировали. В серии STM32G i2c работает как автомат калашникова и даже по dma! Но в войну
такое не для россиянцев. А у китайпрома все даже хуже чем в f103
(Puya, %ля!) - 3m(25.02.2026 14:59)
- Ну, ХЗ, где вы там баги находите. STM32F0 - все отлично,
контроллеры термодатчиков TSYS01 на БТА уже восемь лет работают (по
16 датчиков на контроллер). На F303 тоже никаких проблем.
Единственно, нужно питание всякой шушеры через p-канальный мосфет
вешать, т.к. бывают некоторые убогие датчики, которые SCL или DAT
подвешивают вусмерть. Eddy_Em(180 знак., 18.02.2026 15:54)
- С СПИ, особенно. Как там аппаратный НСС поживает? - mse homjak(18.02.2026 16:30)
- Без понятия, я slaveselect никогда не использую, потому как больше
одной железки на SPI не вешаю, ибо нефиг тут! - Eddy_Em(18.02.2026 17:18)
- Макароны тоже по одной штуке варите? :D - Ralex(18.02.2026 17:29)
- А у меня элементарно нет идей, какое нужно придумать устройство,
чтобы к нему больше одного датчика с SPI нужно было подключить! Вот
I2C куда как чаще встречается. По SPI разве что экранчик или
угловой энкодер. Ну вот делал платку для телескопа, которая с двух
энкодеров в два интерфейса USB данные передает, посадил каждый
энкодер на свой SPI, чтобы не мешали друг другу и можно было
параллельно читать. - Eddy_Em(18.02.2026 17:37)
- У меня 8шт ацп ads1220 и еще 3шт 74hc165 на одном spi. - 3m(25.02.2026 14:52)
- у мну на одном SPI 3 шт АЦП, на втором SPI - OLED, а на I2C вообще
свальный грех - еепром, датчик температуры, датчик атмосферного
давления, микросхема зарядки АКБ, микросхема счетчик
электроэнергии, короче картинка покажет Ralex(1 знак., 18.02.2026 17:47, картинка)
- Я предпочитаю брать один внешний АЦП и ставить три мультиплексора.
Есть хорошая методика, позволяющая практически к нулю свести
влияние мультиплексоров. Но в данном случае никакого аппаратного SS
не выйдет: их же аж три штуки надо! - Eddy_Em(18.02.2026 18:41)
- Бывают входы, на которые могут попадать произвольные посторонние
напряжения. В этом ключе, схема на одном АЦП уязвима - напряжение
вне диапазона сместит коммутатор и все каналы поплывут. Nikolay_Po(87 знак., 25.02.2026 15:33)
- Да дажэ с одним АЦП. С нормальным СПИ работать можно так, заряжаем
таймер на сэмплрейт, от него стартуем ДМА, которое пихает 16 бит в
СПИ и по прерыванию от окончания педерачи СПИ, вычитываем данные.
Что имеем с СТМ? Настраиваем таймер на сэмплрейт, по прерыванию
ручкаме машем портом НСС, запускаем СПИ(тут дажэ из прерывания нет
смысла выходить, накладные расходы на вход-выход примерно такого-жэ
порядка), отмахиваем НСС взад, вычитываем данные. Зокат солнца
вручную. И mse homjak(91 знак., 18.02.2026 20:45)
- SSM + SSI, и не нужно беспокоиться: Eddy_Em(118 знак., 18.02.2026 21:24)
- Из доков или сам так делал? Когда я озаботился и пару дней
подпрыгивал, находил по форумам советы бывалых. Они тожэ цытировали
ДШ, но в концэ приписывали, что НСС нужно, таки, махать вручную.
Ибо у СТМ лапки. - mse homjak(19.02.2026 10:19)
- железный NSS там (только!) для того, чтобы сказать STM'у, что он
больше не мастер. beefdeadbeef(94 знак., 19.02.2026 12:17)
- сомнительно - Ralex(19.02.2026 12:21)
- Ну, я тоже сомневался. А как до дела дошло - хрен вам, а не
аппаратный контроль. Чипов-то на линии мастера может быть много, на
кой хрен им аппаратный CS-выход, если одного всё равно не хватит?
Вот оно и не работает как выход. Мало того, в своих проектах я этот
вывод из работы исключю - есть непонятки, типа того, что даже когда
он не используется, и вдруг упадёт в ноль, то SPI принудительно
переводится в ведомого. Ну его нафиг. - Nikolay_Po(19.02.2026 12:42)
- rm0008 нам сообщает, что вот-де, "NSS management by hardware or
software for both master and slave: dynamic change beefdeadbeef(72 знак., 19.02.2026 12:31)
- Это, наверное, последние версии ДШ. В старых было расписано как
должно быть по жизни. А так, похожэ, что Томсоны купили задорого
часть периферии у какой-то конторы, с родственниками топов, в
учредителях. И, смешнее всего, что и китайцам пришлось тариться
периферией в том-жэ лабазе. Одно дело, когда в отзывах "залил
прошивку и сразу заработало" и другое "блин, они сделали правильный
СПИ, как теперь с этим жыдь?!!!111" - mse homjak(19.02.2026 16:54)
- Это я процитировал реальную строчку из рабочего кода. Не нужно им
"махать": один раз разрешил (SSI+SSM), и забыл! Eddy_Em(98 знак., 19.02.2026 10:51, ссылка)
- Это 3 АЦП с 8 входов каждый, при этом они работают как диф пары
поэтому 4 канала данных на 1 АЦП. А иногда не диф, тогда больше чем
4 канала, но зависимых. Если бы все 17 каналов измерений я одним
АЦП измерял, пришлось бы дольше усреднять (уменьшаем шум
усреднением). Мультиплексор применялся в предыдущей модели прибора,
но там было всего 7 каналов измерений, а тут 17. - Ralex(18.02.2026 18:50)
- негатив слейв селект? вери гуд, беттер зан евер :-P - Ralex(18.02.2026 16:39)
- в EFM32, КМК, хорош - Vit(18.02.2026 03:20)
- Ну не знаю прям, но никаких претензий к i2с что сделан в STM32L476.
Я им изначально пользовался через HAL. С 2016 года. Правда в
подавляющих случаях это ЕЕПРОМ. Но недавно стал и DS3231
опрашивать. Правда всё это - чисто ручками. Никаких прерываний или,
не дай бог, DMA. :-)) - Лaгyнoв(17.02.2026 16:51)
- болвана спрашивал? док ES0002 POV(1 знак., 14.02.2026 22:59, картинка)
- Высокая латентность вызова ioctl(hspi, SPI_IOC_MESSAGE(1), tr) -
передача даже одного байта стоит ~150 мкс на вызов, когда смена
состояния GPIO через тот-же ioctl занимает ~2.5 мкс. Система
Embedded Linux core 5.10 на TI Arm A8. - Chip_n_Go_24(19.02.2026 17:06,
, ARM, полностью)
- принялся разделывать stm32h7r3 - писать crt, шаблоны раскладки шин
и памяти на них, для скрипта линкера и тд. оказалось сильно
затруднительно лазить по доке в которой over 3700 страниц. чтоб
было удобнее кодить - сделал две картики, объединил мапу адресов
кусков внутреннего озу и флеша с их раскладкой на шинах - так
работать стало значительно веселей, может кому пригодится. klen(1028 знак., 18.02.2026 00:16, ARM, картинка, картинка, полностью, +3)
- Пишу под ГД32Ф103. Есть вариант определить что мы стартуем после
перепрошивки. Мне после перепрошивки надо обновлять данные во
внешней епром. Можно это как нибудь сделать? - IBAH(13.02.2026 15:41, ARM, полностью)
- Апдйт CubeIDE - работаю на версии 1.15 Апдейтер предлагает
поставить 2.0.0 Апдейтится, или это сулит гемор? Mty1(1 знак., 13.02.2026 00:42, ARM, картинка, полностью)
- Чего-то озаботился Бэкап регистрами, что в RTC под батарейкой. Кой
чего хранить. Читаю некий код сейчас из нулевого - 0х000032F2.
Чтобы туда не записывал - всё равно потом читается изначальные
данные. Там какая-то блокировка записи есть? Надо чего
разблокировать как флэш? - Лaгyнoв(08.02.2026 10:19, ARM, полностью)
- Подскажите - нужно в stm32f411 сделать запуск DMA от внешнего пина.
По каждому фронту - одна передача DMA из памяти в GPIO. Пробовал
завести сигнал запуска на ETR TIM1 и по update event запускать DMA.
Работает, но только если counter = 1 TIM1 с вдвое меньшей частотой.
С counter = 0 не запускается. Пробовал через Output Compare -
похожая история, с каждым тактом не получается. Посоветуйте -
сделать? - Mty1(03.02.2026 16:01, ARM, полностью)
- Генеральный директор АО «Байкал Электроникс» Андрей Евдокимов
сообщил в сторис личного телеграм-канала о возможности заказать
микроконтроллер Baikal U-1000. «Наша новая прелесть! Совершенно
серийный Baikal U-1000. В любых количествах!» — написал Евдокимов в
сопроводительном комментарии к сторис с фотографией
микроконтроллера. - mse homjak(20.12.2025 18:38, ARM, полностью)
- Типо вот тута доки выложили. В принципе, при наличии USB HS OTG
отсутствие Ethernet не так критично - можно снаружи привесить
USB-Ethernet LightElf(1 знак., 03.02.2026 16:02, ссылка)
- Доставило: Embedded MicroPython. - TahoeReload(20.12.2025 20:13,
)
- А нормальная дата шита на него где? - LightElf(20.12.2025 18:48)
- что-то оно сильно похоже на ch32h417, только дым пожиже. Не в
осуждение, и не копия, но прямо видится сходство мысли. - AVF(09.01.2026 13:03)
- а это не оно? >>> SciFi(1 знак., 20.12.2025 19:44, ссылка)
- Иш чего! Доки захотел. Вышли на фабричные объёмы и то хлеб. Тока не
пойму, 3 ядра, зачем? mse homjak(129 знак., 20.12.2025 19:30)
- Традиция такая. "Зульфия мой халат гладит у доски, шьёт Гюли, а
Фатьма штопает носки"(c) Три ядра - красота, что ни говори... Но, с
другой стороны, флэша тоже три? - Idler(21.12.2025 00:39)
- Там прикольно, что три разных ядра :-) причём отладчиком доступ
только к двум, зато третье ядро само может работать отладчиком. В
общем, "сумрачно все в этом мире бушующем, есть AVR, за него и
держись..." - LightElf(20.12.2025 21:21)
- Коллеги, расскажите кто использует софтверные прерывания в АРМах и
как вы это делаете. - my504(13.10.2025 11:41, ARM, полностью, +1)
- Терминологическая непонятка: что вы имеете в виду под софтверными
прерываниями? Есть, как минимум, три расшифровки: инструкция SVC,
прерывание PendSV, программный вызов аппаратного прерывания путем
манипуляций с регистрами NVIC. - LightElf(13.10.2025 12:39)
- Смотря какой ARM. Есть специальные регистры, записью единицы в бит
которых, принудительно взводится любое прерывание. И я использовал
вектора прерываний неиспользуемой, выключенной периферии. - Nikolay_Po(13.10.2025 11:57)
- Кортекс 4. AT32F435. В системе команд есть инструкция софтверного
прерывания. Вот про нее и вопрос. Как вызвать и кто будет
обработчиком. Как пользоваться EXTINT-ом (там есть софтверный
триггер), а так же через свободную периферию, я знаю. Хотелось бы
узнать про внутриядерный механизм через упомянутую инструкцию. - my504(13.10.2025 12:04)
- LightElf ответил. Именно так. - Nikolay_Po(13.10.2025 13:44)
- инструкция SVC (раньше называлась SWI) вызывает исключение SVCall,
вектор 11. Дальше делаете что хотите. - LightElf(13.10.2025 12:42, +1)
- Спасибо. А как она выглядит в Си? - my504(13.10.2025 14:09)
- От компилятора зависит, это нестандартная вещь. - LightElf(13.10.2025 21:24)
- Наверное так (для GCC): Nikolay_Po(166 знак., 13.10.2025 14:24, ссылка, ссылка)
- Вопрос в догон. Обработчик SVC один - SVC_Handler. Что определяет
параметр этой инструкции? Как понимать 11 вектор? - my504(13.10.2025 14:31)
- Насчет вектора - непонятен вопрос. Номера векторов перечислены в
хедере на конкретный проц. LightElf(359 знак., 13.10.2025 21:11)
- Там два параметра. Первый, код, определяет условие, по которому
срабатывает исключение (можно, например, сравнивать значение с
допуском и по выходу за пределы - исключаться). Второе значение -
типа блокнотика, куда можно записать свою цифру, 8 бит, для
передачи обработчику - чтобы в обработчике прерывания прочитать и
принять к сведению. Nikolay_Po(91 знак., 13.10.2025 16:49)
- Тут почитать можно. Andrew_Q(2 знак., 13.10.2025 15:22, ссылка, картинка)
- Не про это? Из FREERTOS. Andrew_Q(1 знак., 13.10.2025 12:11, картинка)
- Дикпик что-то вещает на эту тему. - POV(13.10.2025 11:51)
- В вопросе должно содержаться половина ответа, а тут даже на
половину вопроса не тянет... :-) - il-2(13.10.2025 11:49)
- ++ Eddy_Em(30 знак., 13.10.2025 14:05)
- Прогнал CH32H417RM через переводчик, что-то понять можно, если
будете рихтовать - буду признателен за обновление General(31 знак., 06.01.2026 16:36 - 20:08, ARM, ссылка, полностью)
- Почему в обработчике прерываний К1921ВГ015 (RISC-V 32 бит), такое
странное сохранение контекста регистров с использованием регистра
t0? Peter_M(628 знак., 27.01.2026 11:17, ARM, ссылка, полностью)
- Господа, шел 1568 день подружить LWIP с одновременной работой TCP и
UDP. имею 2шт TCP_PCB из 6; 1шт UDP_PCB из 2х.UDP отправляет 3(три)
байта информации каждые 100 мс. по TCP идут протоколы Modbus tcp,
IEC104. ДЛя отправки данных реализована очередь FIFO. Если не
отправлять UDP - все идет как по маслу.. при включении отправки по
UDP наблюдаю. от погоды на марсе Balda(860 знак., 18.12.2025 19:59, ARM, полностью)