|
35 / 28 / 10
Регистрация: 11.04.2022
Сообщений: 197
|
||||||
Прием данных по UART на STM32F010.03.2023, 10:28. Показов 6421. Ответов 35
Здравствуйте. При попытке принять пачку байтов читаю только 1 байт, в прерывание повторно заходит, но RXNE не поднят
Включение прерывания по RXNE включает еще по ORE, на overrun не проверял.
0
|
||||||
| 10.03.2023, 10:28 | |
|
Ответы с готовыми решениями:
35
Прием данных по UART с прерыванями UART на STM32F4Discovery (некорректный прием данных) Прием данных с UART |
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,717
|
|
| 12.03.2023, 15:35 | |
|
В HAL по дебильному устроена функция приема usart. Там вызов колбека происходит когда весь массив заполнен. И выходит я не смогу контролировать массив если допустим пакет пришол не полный.
Добавлено через 13 минут Вот если можно было как то переходить по вектору прерывания и вызывать отдельную функцию когда регистор приемника полон вот тогда да было бы здорово. Добавлено через 4 часа 24 минуты Ошибся можно и один байт принимать через прерывание.
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
|||||||
| 12.03.2023, 16:03 | |||||||
|
Вот например мое решение
0
|
|||||||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,717
|
|||||||
| 12.03.2023, 16:13 | |||||||
Такой объём да ещё используются одни if без else if хотя бы.
0
|
|||||||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
||||
| 12.03.2023, 16:34 | ||||
![]() работай на прямую с прерываниями они генерятся в файле stm32f1xx_it.c Добавлено через 1 минуту
это функция которая вызывает колбек функции Добавлено через 7 минут например
0
|
||||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,717
|
|
| 12.03.2023, 16:50 | |
|
По сути чем хорошо HAL это тем что очень легко конфигурировать периферию STM.
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
||
| 12.03.2023, 16:55 | ||
0
|
||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,717
|
|
| 12.03.2023, 18:31 | |
|
Я частично уже перелез на MicroC for ARM но столкнулся с инициализацией USB там мрак.
0
|
|
| 12.03.2023, 19:35 | ||
|
в самих точках еще бы разобраться немного не хватает инфы мне что нужно например для ком порта, а просто конечную точку создать вроде не сложно...
0
|
||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,717
|
|
| 12.03.2023, 20:04 | |
|
0
|
|
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,717
|
||||||
| 12.03.2023, 20:11 | ||||||
|
Да кстати по теме. Код принимает пачку байт а именно из 10 байт и отправляет обратно. Всё видно в терминале.
0
|
||||||
|
35 / 28 / 10
Регистрация: 11.04.2022
Сообщений: 197
|
|
| 13.03.2023, 10:29 [ТС] | |
|
VladimirU, а как попадает в HAL_UART_RxCpltCallback? мне непонятно( Ну вот пришло прерывание, что буфер приема не пуст, что-то куда-то считали, из HAL_UART_Receive_IT попадаем в Callback? и там снова в HAL_UART_Receive_IT ? это же обработчик прерывания или я неправильно понял? Часто в proteus моделируете? насколько хороша там реализация логики МК. Использование cube только для примеров или и для реализации проектов?
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
||||
| 13.03.2023, 13:21 | ||||
|
куб генерит обработчик прерываний функцию, в частности HAL_UART_IRQHandler ( HAL_(имя интерфейса)_IRQHandler ), которая проверяет сбрасывает флаги и вызывают, если нужно, колбэк-функции. Добавлено через 1 минуту
0
|
||||
|
35 / 28 / 10
Регистрация: 11.04.2022
Сообщений: 197
|
||||
| 13.03.2023, 14:56 [ТС] | ||||
|
Но сразу же возникает момент в том, что даже в вашем примере
0
|
||||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
|||
| 13.03.2023, 15:00 | |||
|
0
|
|||
| 13.03.2023, 15:00 | |
|
Приём данных по UART Atmega8 Прием данных на пк с UART, ATMEGA16 Прием данных по UART в 8052 LaunchPad: прием данных с UART в MSP430 Корректный прием данных из UART на Delphi Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|