Stm32 с чего начать изучение...
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Stm32 с чего начать изучение...
[uquote="azhel12",url="/forum/viewtopic.php?p=4316651#p4316651"]Однако где-то мне потом все равно придется указать, что X точка в дескрипторе - это на самом деле Y точка в программе, чего я делать не хочу.[/uquote]В классе контроллера должен быть алгоритм, который из списка конечных точек в дескрипторе сконфигурирует регистры контроллера. А сам дескриптор от этого должен быть свободен, у него другая задача - описать конфигурацию и функционал устройства. Из этой конфигурации все и должны брать информацию, и хост, и само устройство.
- Реклама
Re: Stm32 с чего начать изучение...
[uquote="VladislavS",url="/forum/viewtopic.php?p=4316672#p4316672"]В классе контроллера должен быть алгоритм, который из списка конечных точек в дескрипторе сконфигурирует регистры контроллера.[/uquote]Тогда в целом мы про одно и то же говорим, что надо определить описание устройства (конфигурации, интерфейсы, точки) и из них "родить" конкретные элементы программы. Только вы это завернули сразу в дескриптор (и тип так назвали), я сделал почти то же самое, только практически наоборот - сначала определил иерархию, из которой собирается дескриптор (собственно, поэтому мне и не нужен оказался доступ к спискам интерфейсов/точек в компайл-тайме, он изначально был).
Рад, что все больше вижу C++ в этой области, надеясь, что если он и не вытеснит Си, то как минимум люди не будут его сторониться.
Рад, что все больше вижу C++ в этой области, надеясь, что если он и не вытеснит Си, то как минимум люди не будут его сторониться.
Re: Stm32 с чего начать изучение...
Добрый вечер! В Кубе создал проект и запустил генерацию.

Далее открываю этот проект в Кейле. Пытаюсь Build - ругается. ЧТо не хватает. Кейл установил последний, лицезия есть....


Далее открываю этот проект в Кейле. Пытаюсь Build - ругается. ЧТо не хватает. Кейл установил последний, лицезия есть....

- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Stm32 с чего начать изучение...
Ошибку специально закрыли чтобы труднее угадать было? 
Re: Stm32 с чего начать изучение...
загадка какая-то. Видимо, так звезды сошлись. Попробуйте "ввести здесь текст для поиска", потому как наши телепаты уехали к генералу Морозу.
- Реклама
Re: Stm32 с чего начать изучение...
[uquote="VladislavS",url="/forum/viewtopic.php?p=4334763#p4334763"]Ошибку специально закрыли чтобы труднее угадать было?
[/uquote]
Уппс!
Error: *** Project 'Blink', Target 'Blink', Device 'STMicroelectronics::STM32F407VETx' is not supported by Toolchain ! ***.
P.S. Еще и Toolchain надо ставить?!
Уппс!
Error: *** Project 'Blink', Target 'Blink', Device 'STMicroelectronics::STM32F407VETx' is not supported by Toolchain ! ***.
P.S. Еще и Toolchain надо ставить?!
Re: Stm32 с чего начать изучение...
Не знаю, как в Кубе, но обычно последние буквы Tx (T6, T7) не указывают, поскольку они относятся к упаковке и температурному диапазону
Re: Stm32 с чего начать изучение...
[uquote="MLX90640",url="/forum/viewtopic.php?p=4334865#p4334865"]Не знаю, как в Кубе, но обычно последние буквы Tx (T6, T7) не указывают....[/uquote]
Я только еще начал изучать. Делал по видеокурсу с ютуба. Там в Кубе первоначальные настройки делают, потом в Кейле открывают...
Могу ошибаться, возможно Кейл не видит с каким процессором хочу работать....
Проц указал, какой у меня на тестовой плате стоит. В Кубе сокращенного варианта нет.
Я только еще начал изучать. Делал по видеокурсу с ютуба. Там в Кубе первоначальные настройки делают, потом в Кейле открывают...
Могу ошибаться, возможно Кейл не видит с каким процессором хочу работать....
Проц указал, какой у меня на тестовой плате стоит. В Кубе сокращенного варианта нет.
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Stm32 с чего начать изучение...
Dmitry_77, начните вот с этого


Re: Stm32 с чего начать изучение...
[uquote="VladislavS",url="/forum/viewtopic.php?p=4334975#p4334975"]Dmitry_77, начните вот с этого[/uquote]
Спасибо!
Спасибо!
- Eddy_Em
- Собутыльник Кота
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
- Контактная информация:
Re: Stm32 с чего начать изучение...
Товарищи, а у кого сишный стартап для STM32G0 завалялся? Думал, там так же, как в F0, но нет: другие прерывания. Пока что сижу, вручную правлю… Уныло!
UPD: уже переделал. Остается проверить флаги компилятора и т.п. И можно попробовать помигать диодом, адаптируя код под F0. Здесь еще и внутренних генераторов пара лишних (правда, HSI48 нет, но все равно на G070 нет USB).
UPD2: это просто жесть какая-то! Там есть RCC->PLLCFGR! И туева хуча разных каналов… С одной стороны, это - хорошо, т.к. реже будет вариант, что нет возможности задать нужную скорость на SPI или I2C, т.к. "кормящий" их канал не той частоты. С другой - это ж трындец, сколько нужно кода понаписать, чтобы хоть базовую часть моих сниппетов под F0 на G0 портировать!
UPD3: даже собралось, но тестировать как-нибудь потом буду. Всмомнил, что такую же кучу выходов тактирования с PLL видел на F407. Чтобы настроить, нужно на одном экране перед глазами схему тактирования держать, а на другом - флаги PLLCFGR. И внимательно читать предельные частоты на все. И мучиться, подбирая оптимальную частоту PLL…
UPD: уже переделал. Остается проверить флаги компилятора и т.п. И можно попробовать помигать диодом, адаптируя код под F0. Здесь еще и внутренних генераторов пара лишних (правда, HSI48 нет, но все равно на G070 нет USB).
UPD2: это просто жесть какая-то! Там есть RCC->PLLCFGR! И туева хуча разных каналов… С одной стороны, это - хорошо, т.к. реже будет вариант, что нет возможности задать нужную скорость на SPI или I2C, т.к. "кормящий" их канал не той частоты. С другой - это ж трындец, сколько нужно кода понаписать, чтобы хоть базовую часть моих сниппетов под F0 на G0 портировать!
UPD3: даже собралось, но тестировать как-нибудь потом буду. Всмомнил, что такую же кучу выходов тактирования с PLL видел на F407. Чтобы настроить, нужно на одном экране перед глазами схему тактирования держать, а на другом - флаги PLLCFGR. И внимательно читать предельные частоты на все. И мучиться, подбирая оптимальную частоту PLL…
Последний раз редактировалось Eddy_Em Чт дек 22, 2022 21:18:11, всего редактировалось 1 раз.
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Stm32 с чего начать изучение...
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341253#p4341253"]Товарищи, а у кого сишный стартап для STM32G0 завалялся?[/uquote]Все стартапы для Cortex-M отличаются только таблицей векторов прерываний. Могу подсказать где есть C-шные стартапы и линкерскрипты абсолютно на все STM32 контроллеры. CTRL-C CTRL-V их оттуда 30 секунд делов. Но для этого надо переступить через себя и использовать нечто на W начинающееся и на s заканчивающееся...
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341253#p4341253"]Пока что сижу, вручную правлю… Уныло![/uquote]
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341253#p4341253"]UPD2: это просто жесть какая-то! Там есть RCC->PLLCFGR![/uquote]Это вот из-за этого скромного количества кода такие страдания?
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341253#p4341253"]И туева хуча разных каналов…[/uquote]Где ты их там нашёл? Проще систему тактирования ещё придумать надо
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341253#p4341253"]Пока что сижу, вручную правлю… Уныло![/uquote]
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341253#p4341253"]UPD2: это просто жесть какая-то! Там есть RCC->PLLCFGR![/uquote]Это вот из-за этого скромного количества кода такие страдания?
Код: Выделить всё
RCC->CR |= RCC_CR_HSEON;
while(!(RCC->CR & RCC_CR_HSERDY));
RCC->PLLCFGR = RCC_PLLCFGR_PLLSRC_HSE
| _VAL2FLD(RCC_PLLCFGR_PLLM,1-1) | _VAL2FLD(RCC_PLLCFGR_PLLN,8)
| _VAL2FLD(RCC_PLLCFGR_PLLR,2-1) | (1?RCC_PLLCFGR_PLLREN:0)
| _VAL2FLD(RCC_PLLCFGR_PLLP,4-1) | (0?RCC_PLLCFGR_PLLPEN:0);
RCC->CR |= RCC_CR_PLLON;
while(!(RCC->CR & RCC_CR_PLLRDY));
RCC->CFGR = RCC_CFGR_MCOSEL_DISABLE | RCC_CFGR_MCOPRE_DIV8
| RCC_CFGR_PPRE_DIV1 | RCC_CFGR_HPRE_DIV1
| RCC_CFGR_SW_PLLRCLK;Спойлер
- Eddy_Em
- Собутыльник Кота
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
- Контактная информация:
Re: Stm32 с чего начать изучение...
VladislavS, я и без калокуба нормально обхожусь. И уж тем более, без гнилой мастдайки. Вообще тебя не понимаю: ты - мазохист что ли, уродоваться на игровой приставке, пытаясь ее прошивку превратить в ОС общего назначения?
Вот, создал новую поддиректорию. Тестировать буду позже. Наверняка что-нибудь важное пропустил: на F407 у меня не с первого раза завелось… Да и не факт, что там еще каких-нибудь эдаких флагов не нужно будет gcc передать, кроме изменения cortex-m0 на cortex-m0plus.
Пока, кстати, вообще никаких плюсов в STM32G0 по сравнению с F0 не вижу. Кроме дополнительных телодвижений, чтобы перейти с F0 на G0. И в линейке G0 нет аналогов STM32F072 (по крайней мере, по цене). И HSI48 с синхронизацией по USB выкинули, ироды проклятые! Типа, хочешь USB - ставь кварц! Да нафиг он мне сдался?
Вот, создал новую поддиректорию. Тестировать буду позже. Наверняка что-нибудь важное пропустил: на F407 у меня не с первого раза завелось… Да и не факт, что там еще каких-нибудь эдаких флагов не нужно будет gcc передать, кроме изменения cortex-m0 на cortex-m0plus.
Пока, кстати, вообще никаких плюсов в STM32G0 по сравнению с F0 не вижу. Кроме дополнительных телодвижений, чтобы перейти с F0 на G0. И в линейке G0 нет аналогов STM32F072 (по крайней мере, по цене). И HSI48 с синхронизацией по USB выкинули, ироды проклятые! Типа, хочешь USB - ставь кварц! Да нафиг он мне сдался?
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Stm32 с чего начать изучение...
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341300#p4341300"]Вот, создал новую поддиректорию[/uquote]Я уже как-то давно говорил - SCB->CCR Readonly. Откуда ты эту ересь опять скопипастил?

[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341300#p4341300"]Типа, хочешь USB - ставь кварц![/uquote]Нет в G0 USB от слова совсем, хоть 10 кварцев поставь. 
Спойлер
- Eddy_Em
- Собутыльник Кота
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
- Контактная информация:
Re: Stm32 с чего начать изучение...
VladislavS, в G0 есть USB: на G0A/B!
И правда: глянул на сайте ARM, этот регистр RW у M3, но RO у M0. И нафиг туда писать дефолтное значение - тоже непонятно.
Лень просто взять, да вычистить из всех этих скопипащенных неизвестно откуда кусков все ненужное…
Из F0, вестимо. А туда она ХЗ откуда попала. Видать, из каких-нибудь M3/M4. Это же чисто ARMянская фича, надо удалить, спасибо.Откуда ты эту ересь опять скопипастил?
И правда: глянул на сайте ARM, этот регистр RW у M3, но RO у M0. И нафиг туда писать дефолтное значение - тоже непонятно.
Лень просто взять, да вычистить из всех этих скопипащенных неизвестно откуда кусков все ненужное…
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Stm32 с чего начать изучение...
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341321#p4341321"]VladislavS, в G0 есть USB: на G0A/B![/uquote]Каюсь, эти с буквами пропустил. Но у них и HSI48 есть для этого.
Re: Stm32 с чего начать изучение...
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341300#p4341300"]Пока, кстати, вообще никаких плюсов в STM32G0 по сравнению с F0 не вижу. Кроме дополнительных телодвижений, чтобы перейти с F0 на G0. И в линейке G0 нет аналогов STM32F072 (по крайней мере, по цене). И HSI48 с синхронизацией по USB выкинули, ироды проклятые! Типа, хочешь USB - ставь кварц! Да нафиг он мне сдался?[/uquote]
У ST F072C8 стоит $1.97 крупными партиями, а G0B0CE - $1.7. На али понятное дело цены другие, но они падают, на днях G431CB за $3 заказывал(а ты до сих пор F303 мучаешь), G0B1CB по $3.56 есть. И HSI48 естественно от SOF по прежнему триммится, никто из новых серий это выбрасывать не будет.
У ST F072C8 стоит $1.97 крупными партиями, а G0B0CE - $1.7. На али понятное дело цены другие, но они падают, на днях G431CB за $3 заказывал(а ты до сих пор F303 мучаешь), G0B1CB по $3.56 есть. И HSI48 естественно от SOF по прежнему триммится, никто из новых серий это выбрасывать не будет.
PLLCFGR в большинстве серий есть, у G0 PLL еще простенький, с H7 и близко не сравним...Eddy_Em писал(а):Там есть RCC->PLLCFGR! И туева хуча разных каналов… С одной стороны, это - хорошо, т.к. реже будет вариант, что нет возможности задать нужную скорость на SPI или I2C, т.к. "кормящий" их канал не той частоты. С другой - это ж трындец, сколько нужно кода понаписать, чтобы хоть базовую часть моих сниппетов под F0 на G0 портировать!
- Eddy_Em
- Собутыльник Кота
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
- Контактная информация:
Re: Stm32 с чего начать изучение...
Ну, H7 - вообще дичь какая-то адова! Не представляю, кому оно может понадобиться, если дешевле и проще купить одноплатник, а RT и всякую периферию приаттачить к нему на более дешевом и простом МК.
Я вот, думаю, надо разработать расширяемую управляемую розетку в блоках под DIN-рейку. Основной блок - на апельсинке-0, расширения - хоть на STM32F030 (там-то ног много не надо: пара каналов на симисторы или реле + RS-485 + несколько GPIO для конфигурирования адреса; адрес - или перемычками, или шину межблочную сделать, как у NI'шных крейдлов, тогда автоматом буде). А из самого сложного на МК, с чем приходилось иметь дело, был (точнее - есть, я еще только плату нарисовал, как получу компоненты, буду прошивку писать) контроллер восьми независимых ШД. Туда аж 100-ногую F303 пришлось совать. С F407 тоже начал понемногу работать, но пока не вижу никаких преимуществ. Флоаты и математика мне пока не нужны: я квадрокоптеры не разрабатываю. Как раз, чаще всего нужны вообще элементарные (иной раз и 8 ног хватило бы) МК, но мне что-то совсем восьмибитки опротивели, по удобству разработки таки STM32 приятней, чем STM8.
Да, что насчет цены, то сейчас какая-то дичь творится: F030, которые были по 25-30 рублей, уже переплюнули по цене F103C6T6!
Я вот, думаю, надо разработать расширяемую управляемую розетку в блоках под DIN-рейку. Основной блок - на апельсинке-0, расширения - хоть на STM32F030 (там-то ног много не надо: пара каналов на симисторы или реле + RS-485 + несколько GPIO для конфигурирования адреса; адрес - или перемычками, или шину межблочную сделать, как у NI'шных крейдлов, тогда автоматом буде). А из самого сложного на МК, с чем приходилось иметь дело, был (точнее - есть, я еще только плату нарисовал, как получу компоненты, буду прошивку писать) контроллер восьми независимых ШД. Туда аж 100-ногую F303 пришлось совать. С F407 тоже начал понемногу работать, но пока не вижу никаких преимуществ. Флоаты и математика мне пока не нужны: я квадрокоптеры не разрабатываю. Как раз, чаще всего нужны вообще элементарные (иной раз и 8 ног хватило бы) МК, но мне что-то совсем восьмибитки опротивели, по удобству разработки таки STM32 приятней, чем STM8.
Да, что насчет цены, то сейчас какая-то дичь творится: F030, которые были по 25-30 рублей, уже переплюнули по цене F103C6T6!
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Stm32 с чего начать изучение...
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4341253#p4341253"]С другой - это ж трындец, сколько нужно кода понаписать, чтобы хоть базовую часть моих сниппетов под F0 на G0 портировать![/uquote]Перестаём называть скетчи сниппетами и пишем нормальные библиотеки, чтобы они при переходе с одного чипа на другой работали. Вот смотри, в G0 появился новый для тебя модуль DMAMUX. Можно сделать затычку, а можно посмотреть, что он есть в чипах G0, G4 и H7 и написать один раз нормально под них всех. Тогда компилируем под G071 - получаем

А если под H750, то

Конечно, при написании библиотеки надо больше чем в один мануал заглянуть, но потом при повседневной разработке вообще не надо будет RM открывать. У меня некоторые модули даже на китайцев c RISC-V перекочевали.
А если под H750, то
Конечно, при написании библиотеки надо больше чем в один мануал заглянуть, но потом при повседневной разработке вообще не надо будет RM открывать. У меня некоторые модули даже на китайцев c RISC-V перекочевали.
Спойлер
- Eddy_Em
- Собутыльник Кота
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
- Контактная информация:
Re: Stm32 с чего начать изучение...
VladislavS, нет уж, кресты — это чересчур!


