STM32. CMSIS #8. UART работа на прерываниях
ฝัง
- เผยแพร่เมื่อ 8 ก.พ. 2025
- Купить книгу "Освоение STM32 самостоятельно" по CMSIS:
• При печати на Xprinter...
Скачать PVS-Studio для проверки своего кода можно бесплатно на:
pvs-studio.com...
Официальная страничка в TH-cam:
/ pvsstudiotool
Официальная страничка ВКонтакте:
pvsstud...
В данном видео подробнее рассматриваем условия запуска прерываний UART`а на микроконтроллере STM32F1 через библиотеку CMSIS и учимся это делать на достаточно больших примерах. Обязательно проверяем правильность написания кода по правилам MISRA C статическим анализатором кода PVS-Studio.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Станьте спонсором канала, и вы получите доступ к эксклюзивным бонусам, в том числе к готовым проектам видео. Подробнее:
/ @nrelectronics
или через Яндекс-деньги:
money.yandex.r...
Настораживает то, что в cmsis столько нарушений стандарта misra. А урок Ваш понравился. Лайк.
Спасибо! Возможно из-за того, что CMSIS старая библиотека, и стандарту не так проверялась как HAL, хотя мне это кажется тоже странным. В общем много вопросов к библиотеке CMSIS.
Пробуйте работать вместе со статическим анализатором кода.
Один из лучших техно каналов!
Спасибо, стараюсь! Этот канал для всех интересующихся программированием и разработкой изделий на основе микроконтроллеров!!!
@@NRelectronics ваш канал как альтернатива народ стрим)
Это для меня высокая оценка! Благодарю!!!
оо) как и обещали. спасибо!
Стараюсь всегда обещания сдерживать, не как на других каналах.
@@NRelectronics за это вас и смотрю)
еще вопрос, есть ли в планах осветить такую тему как юсб? хотя б на HAL
Благодарю, приятно слышать! USB на хале будет точно! На CMSISe не обещаю, посмотрим по времени как у меня будет. Ethernet также планирую.
Снова здрасти ) резет снова заработал. Справа от кладки Flash download ( на которой вы ставили галочку reset and run) , есть вкладка Pack , на этой вкладке нужно убрать галочку Enable
Спасибо за совет! Как буду за компом обязательно проверю и в каком-нибудь новом видео сообщу обязательно!)
Здрасти. По моим наблюдениям , частота Xtal , возможность изменять которую убрали в последней обнове Keil , ни на что и не влияла. А вот то что контроллер перестал резетиться ,после этой обновы, и нужно постоянно нажимать резет ,я заметил ))) Не хотел обновляться , но пытливый ум ))) заставил. Кстати оптимизация default это оптимизация O2 ))) внизу есть строчка - compiler control string , там это видно
Вот вот. Изменили и окно стало серым для кварца. Вот с резетом это конечно неудобство, ну как так, полезную функцию заглючили. О2 заметил, что по размерам такая же как и default, интересная особенность...
@@NRelectronics вы меня не совсем поняли, default это по умолчанию , а по умолчанию используется оптимизация O2 . Без оптимизации это O0
👍🏼
Привет, в видео вы упомянули книгу, еще не написали?
сейчас приостановил временно работы, т.к. пошли интересные дисплеи DWIN.
повторяю ваш проект, у вас получилось объявить переменные не статик. а у меня кеил требует чтоб они были статик, так как нигде не оприделены. почему так происходит?(
Допускаю, что у нас разные версии компилятора, у меня старее у вас новее, появились особенности работы определения, но это не точно. Нужно открывать два проекта рядом и смотреть. Попробуйте поменять версию языка, С99 и какие у вас есть...
@@NRelectronics ага, понял. спасибо
Пожалуйста)
Сколько не повторял не получилось. И не только Ваше видео смотрел. Почему-то за один байт приёма происходит три-четыре раза прерывание. Так и плюнул. Буду дальше на Atmega чудить. Сложные эти стм
Надо ведь просто разобраться. Стм все равно ведь на голову лучше атмеги.
подскажите, смотрю в регистрах есть выбор 8 или 9 бит. а что на счет 7? можно так настроить?
Здравствуйте. По памяти кажется нет. Обычная посылка это байт, восемь бит. Посмотрите что там с включением чётности, кажется он занимал восьмой, проверьте.
@@NRelectronics я понимаю. но в аврках можно настраивать и 7 и 6 бит, так как некоторые устройства общаются именно по 7 битному протоколу. Странно что стм такие навороченные но не имеют элементарной фигни.
Возможно это есть, просто уже не помню. Посмотрю по свободе. Ок.
@@NRelectronics хорошо. Спасибо
PVS программа не для этого используется. Она имеет смысл только в больших командах где идет большой поток комитов. Но, сам лично испытывал этот софт и нашей команде он не подошел, потомучто мы не делаем такого объема простых мелких ошибок. А вот сложные ошибки эта программа не способно находить, к сожалению.
Она используется в любых местах где есть код, вне зависимости от размера команды.
а что за книга упомянута в видео?
Пишу для изучения МК STM32 на понятном языке.
@@NRelectronics хочется увидеть) будем ждать
Спасибо. Будет пока не скоро, в работе она.
USART1 -> BRR = 0x1D4C это 7500 а надо 9600. Или как это рассчитывается?
Внимательно пожалуйста посчитайте. Если было не правильно, то данные в видео бились бы...
Что это за программка для передачи данных на компьютер, как установить и настроить? В arduino IDE все просто, открыл монитор порта и все. (
Advanced Serial Port Terminal 5.5. Она не сложнее терминалки в ардуино ide.
@@NRelectronics Спасибо
Пожалуйста)