STM32. CMSIS #1. RCC - настройки тактирования. Часть 1. Теория

Поделиться
HTML-код
  • Опубликовано: 21 окт 2024
  • Купить книгу "Освоение STM32 самостоятельно" по CMSIS:
    sl.aliexpress....
    Подробно в видео рассказываются настройки системы тактирования STM32 для дальнейшей работы с библиотекой CMSIS. Проводится показ где находятся те или иные параметры наглядно на схеме тактирования в STM32CubeMX 6.
    __________________________________________________
    Вы можете помочь каналу через Яндекс-деньги:
    money.yandex.r...
    или через банковскую карту:
    4377 7237 6190 5714
    __________________________________________________

Комментарии • 66

  • @ЭмильСадыков-ъ8л
    @ЭмильСадыков-ъ8л 3 года назад +3

    Рад, что продолжаете по этой теме делать гайды

    • @NRelectronics
      @NRelectronics  3 года назад

      Спасибо. Все по мере наличия свободного времени. Ещё планирую чисто по HAL' у...

  • @openFrimeTv
    @openFrimeTv 3 года назад +5

    спасибо. учусь на ваших роликах)

    • @NRelectronics
      @NRelectronics  3 года назад

      Спасибо! Обучайте теперь по ним и других.

    • @openFrimeTv
      @openFrimeTv 3 года назад

      @@NRelectronics мои ролики про контролеры не заходят людям к сожалению. по этому пока рано) буду обучаться только сам

  • @ЛюбомирБезган
    @ЛюбомирБезган 2 года назад

    Спасибо огромное, Николай!
    После этого видео я перестал испытывать страх перед чтением документации о регистрах!

    • @NRelectronics
      @NRelectronics  2 года назад +1

      Пожалуйста! Рад, что контент избавляет и от страха тоже! 👍

  • @ProshkaBalashikha
    @ProshkaBalashikha Год назад

    Мне было очень интересно вас слушать, спасибо вам!

    • @NRelectronics
      @NRelectronics  Год назад

      Спасибо Вам за тёплые слова.

  • @ВалерийГалкин-ю4щ
    @ВалерийГалкин-ю4щ 3 года назад +7

    CMSIS - это то, что надо при программировании микроконтроллеров STM и Milandr. Золотая середина между Cube и Assembler. Очень полезная тема.

    • @NRelectronics
      @NRelectronics  3 года назад +2

      Согласен полностью, что золотая серидина.

    • @arzamas1988
      @arzamas1988 2 года назад

      мне кажется, что CMSIS для любого ARM подойдет...

  • @vicgreen1413
    @vicgreen1413 3 года назад +6

    Это не CMSIS - это подробнейший разбор документации по тактированию. Кстати, очень хороший.
    Библиотека CMSIS включает в себя следующие компоненты:
    CMSIS-CORE: API для ядра Cortex-M и периферии. Стандартизированный интерфейс доступен для Cortex-M0, Cortex-M3, Cortex-M4, SC000, и SC300. Включает дополнительные SIMD-инструкции для Cortex-M4.
    CMSIS-Driver: определяет основные драйверы интерфейсов периферии. Содержит API для операционных систем реального времени (ОСРВ, или англ. Real-Time operating systems - RTOS) и соединяет микроконтроллер с промежуточным ПО (стек коммуникации, файловая система или графический интерфейс).
    CMSIS-DSP: коллекция из более чем 60 функций для различных типов данных (относятся к обработке сигналов): с фиксированной точкой и с плавающей точкой (одинарной точности, 32 бита). Библиотека доступна для Cortex-M0, Cortex-M3, и Cortex-M4. Реализация библиотеки для Cortex-M4 оптимизирована c использованием SIMD-инструкций.
    CMSIS-RTOS API: общий API для систем реального времени. Используя функции данного интерфейса вы можете отойти от конкретной реализации операционной системы.
    CMSIS-DAP (Debug Access Port): стандартизованное программное обеспечение для отладчика (Debug Unit).
    Вот научиться использовать это.......

    • @NRelectronics
      @NRelectronics  3 года назад +1

      Спасибо. Просто понимая какие регистры для чего и что к чему, то и писать на CMSIS уже и не трудно.

    • @vicgreen1413
      @vicgreen1413 3 года назад +3

      @@NRelectronics Это не критика - это уточнение. Разбор регистов и взаимосвязеу с шинами сделали великолепный.

    • @NRelectronics
      @NRelectronics  3 года назад +3

      Все норм. Я понял вас, все ОК. Просто понимание регистров нужно для CMSIS, которое напрямую обращается к этим регистрам, без надстроек на HAL.

  • @klondike2009
    @klondike2009 2 года назад

    Спасибо большое автору! Давно искал подобные уроки!

  • @qwwq8201
    @qwwq8201 3 года назад +6

    Больше роликов делайте по CMSIS.

    • @NRelectronics
      @NRelectronics  3 года назад +2

      По мере свободного времени. Мог бы делать больше. Спасибо, учту.

  • @Scherbakov
    @Scherbakov 3 года назад

    Ждём вторую часть. Очень интересно как правильно затактировать таймеры, дма и usb..

  • @osmanmirzoev6351
    @osmanmirzoev6351 2 года назад

    Спасибо большое. Неплохо было бы если под каждый видеоурок прикрепить примерный код касающейся данной темы.

    • @NRelectronics
      @NRelectronics  2 года назад

      Пожалуйста.
      В этом видео кода нет ведь.

  • @Arduino_Kit
    @Arduino_Kit 3 года назад

    Круто

    • @NRelectronics
      @NRelectronics  3 года назад

      Подписывайтесь и изучайте вместе со всеми!

  • @Embedded_Developer
    @Embedded_Developer 3 года назад +2

    в#TOP!

  • @ПарисПифагоров
    @ПарисПифагоров 2 года назад

    очень хорошее видео. уточните пожалуйста - (13.40) вы переводите мануал и пропускаете 8 Мгц + /- 1%, в это время знак "%" выскакивает. Я только начинаю изучать и возможно что-то не понимаю. СПС

    • @NRelectronics
      @NRelectronics  2 года назад

      Да, оговорился. Внутренняя тактовая частота генератора RC - 8 МГц и с допуском частота 1%. Спасибо большое за фидбэк.

  • @mi4ell
    @mi4ell 3 года назад

    Это видео называется : "STM32. CMSIS #1. RCC - настройки тактирования. Часть 1. Теория "
    А часть 2, с практикой есть? я у вас на канале найти не могу...

    • @NRelectronics
      @NRelectronics  3 года назад

      Все верно. Будет сделано. В проекте.

    • @mi4ell
      @mi4ell 3 года назад

      @@NRelectronics Спасибо!

    • @NRelectronics
      @NRelectronics  3 года назад

      Пожалуйста)

  • @paveloberkovich9674
    @paveloberkovich9674 2 года назад

    здравствуйте .я ваш новый зритель(и я новичек в СТМ) и я видимо не нашел ответ на мой вопрос,а вопрос такой как на практике от чего отталкиваться при выборе того или иного делителя или частоты шин скажем есть проект и какую частоту выбрать и т.д.а уже с помощью вашего видео настоить будет не сложно. на 8 битных всего этого нету.может скините что почитать или посмотреть видео на примере средней сложности .спасибо

    • @NRelectronics
      @NRelectronics  2 года назад +1

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

    • @paveloberkovich9674
      @paveloberkovich9674 2 года назад

      @@NRelectronics тоесть определяется скоростью периферии или ее протоколом (spi,i2c)+ для таймеров и прочего
      отдельные настройки.ясно спасибо

    • @NRelectronics
      @NRelectronics  2 года назад

      Частотой работы spi вашего дисплея например... И настраиваете соответственно ваш мк.

  • @ShashHryundel
    @ShashHryundel Год назад

    Про флаги ничего не понял. Зачем они нужны? Помните пожалуйста, если не трудно

    • @NRelectronics
      @NRelectronics  Год назад +1

      Флаги, это как бы ответ микроконтроллера на наши воздействия, записи в регистры. Иногда, после включения/изменения переферии МК взводится(устанавливается) флаг - чаще единичка, реже нуль, вместо единички и мы по этому флагу производим дальнейшую работу с МК.

  • @dobroliub1908
    @dobroliub1908 3 года назад +1

    Регистрам быть))))

  • @avi-crakhome2524
    @avi-crakhome2524 3 года назад +2

    Основная проблема при использовании CMSIS - числовые делители и множители не всегда нативны. Например кубик показывает множитель 10, математически получается верная частота, а в регистр нужно записать 8. Потому-что по документации от ST: 8 это 10 для этого регистра. Для старших чипов ещё веселей, там иногда используют сдвиговые регистры. И тогда 1,2,3,4,5 превращаются в 1,2,4,8,16.

    • @CoBaldr
      @CoBaldr 3 года назад +2

      В данный момент мучаю Н750, никакого дискомфорта не вызывает:) так что это все сугубо субъективщина.

    • @NRelectronics
      @NRelectronics  3 года назад

      Сдвиговые регистры соответствующими командами надо показать. Так чтобы с 10 и 8 было не попадалось, допускаю что не обратил внимание.

    • @ИванВасильев-т4ш
      @ИванВасильев-т4ш 3 года назад

      а если просто задефайнить в отдельном файле, а потом подключать по надобности. Сильно не пинайте я только учусь и CMSIS уж дюже нравится.

    • @NRelectronics
      @NRelectronics  3 года назад

      можно конечно комментировать дефайны.

  • @николай-г7ю3з
    @николай-г7ю3з 3 года назад +1

    Если честно, не понял о чем видео, потому что вы просто документацию читаете. Я могу и сам ее почитать, только полезно будет для тех кто английский плохо знает и все. Хотелось бы разобраться как настраивать частоту правильно на практике и какие варианты есть, хотя бы базовые. Потому что чтение документации особо ясность не вносит. Понятно, что там сложная система тактирования, но я ожидал хотя бы увидеть какие то примеры хотя бы настройки тактирования шин. Ну ладно, это больше я считаю конструктивная критика, видео может кому то показаться полезным. Может в других видео что то полезное для себя найду

    • @NRelectronics
      @NRelectronics  3 года назад +1

      после ваших слов "...Потому что чтение документации особо ясность не вносит..." - это как ножом по сердцу ребят, эксклюзивно перевожу документацию на канале, никто такого не делает на каналах, и то непонятно как делать, ну что такое...

    • @николай-г7ю3з
      @николай-г7ю3з 3 года назад

      @@NRelectronics я не так выразился может. Документация обязательна к прочтению, я всегда к ней обращаюсь в первую очередь, вместо статей в интернете. Просто чтение функций битов различных регистров в монотонном варианте это не то, что я ожидал, вот и все.

    • @NRelectronics
      @NRelectronics  3 года назад

      а, теперь понятно, значит сделаю как-нибудь видео с настройками на CMSIS, просто по дефолту оно уже стоит в 72МГц и понижение легкое путем рас комментирования нужной меньшей частоты, ок, сбацаем подробное практическое видео ;)

  • @iprogproscript5731
    @iprogproscript5731 3 года назад

    Можно показать как настроить тактирование на Н743

    • @NRelectronics
      @NRelectronics  3 года назад

      Но там ведь почти как в этом видео, просто больше ;-)

    • @iprogproscript5731
      @iprogproscript5731 3 года назад

      @@NRelectronics Неа. )) Тут на днях обновили CUBE IDE и теперь даже максималку надо руками делать. И да Вы вроде обещали как то снять видео по созданию проекта без генерации в CUBE но в среде CUBE IDE Если не сложно на H743 могли бы сделать.

    • @NRelectronics
      @NRelectronics  3 года назад

      Про обновления cube ide и дописывания руками не успел услышать. Да, CMSIS будет идоя Кейла и для cube ide CMSIS, семейство только не могу пока обещать.

    • @iprogproscript5731
      @iprogproscript5731 3 года назад

      @@NRelectronics Да любое семейство подойдет. Но вот H743 в сети очень мало. А 103 и 407 очень много так что H743 будет топчик

    • @vicgreen1413
      @vicgreen1413 3 года назад

      Куча примеров на GIThabe и Хабре... прямо с исходниками.

  • @АнатольПетрович-д5д
    @АнатольПетрович-д5д 3 года назад +1

    Не остановиться бы на пол дороге ?!!!!

    • @NRelectronics
      @NRelectronics  3 года назад

      Вот же. Постараюсь очень этого не сделать.

  • @AccelYT
    @AccelYT 3 года назад +1

    Мда, думал тут напишут инициализацию тактирования через CMSIS, а чувак тупо полчаса читал RM, ничего нового от себя не привнеся, и не написав ни строчки кода 👎

    • @NRelectronics
      @NRelectronics  3 года назад +2

      Инициализация на 72МГц написана уже при генерировании, переписывать ровно тоже самое это сделать ремейк)) у нас никто не читает RM, потому что все чуваки ленивые. А с этой инфой можно все в хидере перенастроить.

  • @kospov2002
    @kospov2002 3 года назад +2

    Да вашуж мать! Сидел три вечера сношался с системой тактирования на f103 пилюле чтоб запустить через cmsis, без осцилографа оказалось трудно понять запустился ли к примеру ФАПЧ(а так бы вывел наружу да померил, но дома увы только мозг), ибо систик пока не разобрал, в итоге первый вечер психуя топил свою тупость в алкоголе до восьми утра, второй вечер стал принемать в себе дегенеративные изменения, и лишь на третий вечер наковырял, ну как наковырял-удалил проект от урока и хренанул с нуля(вкорячивал на чистую в куб в рукопашку cmsis), оказалос что нельзя верить чужим урокам полностью, ибо некоторые дяди, видать с корыстной целью устранения конкурентов, вкорячивают в примере куски HAL в перемешку cmsis, а может это вообще происки амереканских спец. служб или даже самого Байдена!. И таки да флэшь латэнси надо настраивать тоже-ибо у меня походу падал hse вместе с ФАПЧ и контроллер аварийно переходил на hsi. Боже! Когда ты это осознаëшь-это как понять, что дверь толкаемая тобой в течение полу часа, тупо открывается в другую сторону! Но мир был создан без дверей и люди сами всë усложняют! Поэтому ОГРОМНОЕ СПАСИБО за очередное видео!!! И да прибудет с вами вселенское хорошо! Ну и печеньки)))

    • @olegp.3012
      @olegp.3012 3 года назад

      Если у вас установлена среда keil uvision, рабочий пример настройки RCC на CMSIS можно дернуть с проекта созданного в этой среде. Так для bluepill, в файле sustem_stm32f10x.c находятся готовые пресеты для частот 24, 36, 48, 56 и 72 MHz. Но под другую ide код нужно будет адаптировать, например, в CMSIS cubeide не определен дефайн RCC_CFGR_PLLSRC_PREDIV1, нужно писать RCC_CFGR_PLLSRC.

    • @NRelectronics
      @NRelectronics  3 года назад

      Абсолютно верно.

    • @kospov2002
      @kospov2002 3 года назад

      @@olegp.3012 Да собственно какая IDE особо роли не играет... cmsis я так понял от ARM либа и куда ты еë прикрутишь там и норм. Проблема в незнании элементарных вещей, грубо говоря автор сего канала наверняка прочитав мой комент поулыбался над моей безграмотностью, а вот тот кто находится на адекватном со мной уровне наверняка впитал мой опыт ))) Поэтому, Мужики!-не расслабляемся! Учимся и читаем! Читаем и учимся! Спасибо таким каналам! Всем успехов!