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...

ความคิดเห็น •

  • @PastuhMedvedey
    @PastuhMedvedey 3 ปีที่แล้ว

    Настораживает то, что в cmsis столько нарушений стандарта misra. А урок Ваш понравился. Лайк.

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว +1

      Спасибо! Возможно из-за того, что CMSIS старая библиотека, и стандарту не так проверялась как HAL, хотя мне это кажется тоже странным. В общем много вопросов к библиотеке CMSIS.

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว +1

      Пробуйте работать вместе со статическим анализатором кода.

  • @Udafff49
    @Udafff49 3 ปีที่แล้ว

    Один из лучших техно каналов!

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว +1

      Спасибо, стараюсь! Этот канал для всех интересующихся программированием и разработкой изделий на основе микроконтроллеров!!!

    • @openFrimeTv
      @openFrimeTv 3 ปีที่แล้ว

      @@NRelectronics ваш канал как альтернатива народ стрим)

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว +1

      Это для меня высокая оценка! Благодарю!!!

  • @openFrimeTv
    @openFrimeTv 3 ปีที่แล้ว

    оо) как и обещали. спасибо!

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว

      Стараюсь всегда обещания сдерживать, не как на других каналах.

    • @openFrimeTv
      @openFrimeTv 3 ปีที่แล้ว

      @@NRelectronics за это вас и смотрю)
      еще вопрос, есть ли в планах осветить такую тему как юсб? хотя б на HAL

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว

      Благодарю, приятно слышать! USB на хале будет точно! На CMSISe не обещаю, посмотрим по времени как у меня будет. Ethernet также планирую.

  • @VasyaPupkinus
    @VasyaPupkinus 3 ปีที่แล้ว

    Снова здрасти ) резет снова заработал. Справа от кладки Flash download ( на которой вы ставили галочку reset and run) , есть вкладка Pack , на этой вкладке нужно убрать галочку Enable

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว

      Спасибо за совет! Как буду за компом обязательно проверю и в каком-нибудь новом видео сообщу обязательно!)

  • @VasyaPupkinus
    @VasyaPupkinus 3 ปีที่แล้ว +2

    Здрасти. По моим наблюдениям , частота Xtal , возможность изменять которую убрали в последней обнове Keil , ни на что и не влияла. А вот то что контроллер перестал резетиться ,после этой обновы, и нужно постоянно нажимать резет ,я заметил ))) Не хотел обновляться , но пытливый ум ))) заставил. Кстати оптимизация default это оптимизация O2 ))) внизу есть строчка - compiler control string , там это видно

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว

      Вот вот. Изменили и окно стало серым для кварца. Вот с резетом это конечно неудобство, ну как так, полезную функцию заглючили. О2 заметил, что по размерам такая же как и default, интересная особенность...

    • @VasyaPupkinus
      @VasyaPupkinus 3 ปีที่แล้ว

      @@NRelectronics вы меня не совсем поняли, default это по умолчанию , а по умолчанию используется оптимизация O2 . Без оптимизации это O0

  • @АбуЗаррФарадей
    @АбуЗаррФарадей 3 ปีที่แล้ว

    👍🏼

  • @Левша-н8ф
    @Левша-н8ф 2 ปีที่แล้ว

    Привет, в видео вы упомянули книгу, еще не написали?

    • @NRelectronics
      @NRelectronics  2 ปีที่แล้ว

      сейчас приостановил временно работы, т.к. пошли интересные дисплеи DWIN.

  • @РоманСоловей-б6с
    @РоманСоловей-б6с ปีที่แล้ว

    повторяю ваш проект, у вас получилось объявить переменные не статик. а у меня кеил требует чтоб они были статик, так как нигде не оприделены. почему так происходит?(

    • @NRelectronics
      @NRelectronics  ปีที่แล้ว

      Допускаю, что у нас разные версии компилятора, у меня старее у вас новее, появились особенности работы определения, но это не точно. Нужно открывать два проекта рядом и смотреть. Попробуйте поменять версию языка, С99 и какие у вас есть...

    • @РоманСоловей-б6с
      @РоманСоловей-б6с ปีที่แล้ว

      @@NRelectronics ага, понял. спасибо

    • @NRelectronics
      @NRelectronics  ปีที่แล้ว

      Пожалуйста)

  • @ShashHryundel
    @ShashHryundel ปีที่แล้ว

    Сколько не повторял не получилось. И не только Ваше видео смотрел. Почему-то за один байт приёма происходит три-четыре раза прерывание. Так и плюнул. Буду дальше на Atmega чудить. Сложные эти стм

    • @NRelectronics
      @NRelectronics  ปีที่แล้ว

      Надо ведь просто разобраться. Стм все равно ведь на голову лучше атмеги.

  • @РоманСоловей-б6с
    @РоманСоловей-б6с 2 ปีที่แล้ว

    подскажите, смотрю в регистрах есть выбор 8 или 9 бит. а что на счет 7? можно так настроить?

    • @NRelectronics
      @NRelectronics  2 ปีที่แล้ว

      Здравствуйте. По памяти кажется нет. Обычная посылка это байт, восемь бит. Посмотрите что там с включением чётности, кажется он занимал восьмой, проверьте.

    • @РоманСоловей-б6с
      @РоманСоловей-б6с 2 ปีที่แล้ว

      @@NRelectronics я понимаю. но в аврках можно настраивать и 7 и 6 бит, так как некоторые устройства общаются именно по 7 битному протоколу. Странно что стм такие навороченные но не имеют элементарной фигни.

    • @NRelectronics
      @NRelectronics  2 ปีที่แล้ว

      Возможно это есть, просто уже не помню. Посмотрю по свободе. Ок.

    • @РоманСоловей-б6с
      @РоманСоловей-б6с 2 ปีที่แล้ว

      @@NRelectronics хорошо. Спасибо

  • @ivan101ist
    @ivan101ist 9 หลายเดือนก่อน

    PVS программа не для этого используется. Она имеет смысл только в больших командах где идет большой поток комитов. Но, сам лично испытывал этот софт и нашей команде он не подошел, потомучто мы не делаем такого объема простых мелких ошибок. А вот сложные ошибки эта программа не способно находить, к сожалению.

    • @NRelectronics
      @NRelectronics  9 หลายเดือนก่อน

      Она используется в любых местах где есть код, вне зависимости от размера команды.

  • @setdetser1808
    @setdetser1808 3 ปีที่แล้ว

    а что за книга упомянута в видео?

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว

      Пишу для изучения МК STM32 на понятном языке.

    • @setdetser1808
      @setdetser1808 3 ปีที่แล้ว

      @@NRelectronics хочется увидеть) будем ждать

    • @NRelectronics
      @NRelectronics  3 ปีที่แล้ว

      Спасибо. Будет пока не скоро, в работе она.

  • @ВасяПупкин-п8ц7ц
    @ВасяПупкин-п8ц7ц ปีที่แล้ว

    USART1 -> BRR = 0x1D4C это 7500 а надо 9600. Или как это рассчитывается?

    • @NRelectronics
      @NRelectronics  ปีที่แล้ว

      Внимательно пожалуйста посчитайте. Если было не правильно, то данные в видео бились бы...

  • @ВасяПупкин-п8ц7ц
    @ВасяПупкин-п8ц7ц ปีที่แล้ว

    Что это за программка для передачи данных на компьютер, как установить и настроить? В arduino IDE все просто, открыл монитор порта и все. (

    • @NRelectronics
      @NRelectronics  ปีที่แล้ว

      Advanced Serial Port Terminal 5.5. Она не сложнее терминалки в ардуино ide.

    • @ВасяПупкин-п8ц7ц
      @ВасяПупкин-п8ц7ц ปีที่แล้ว

      @@NRelectronics Спасибо

    • @NRelectronics
      @NRelectronics  ปีที่แล้ว

      Пожалуйста)