Все доброго времени суток.
Задался я целью за год изучить программирование под STM32 микроконтроллеры. Была куплена отладночная плата на STM32F103C8T6, ST-Link v2 и прочьи мелочи.
Начал читать что и к чему - основной язык С++. В ютубе конечно есть "быстрый старт" в Arduino IDE, но как по мне - не истинный путь.
Так же найден был такой проект как "MicroPython", он меня, скажем так, манит, потому как знаю Пайтон на не плохом уровне. Но там как-то все не понятно, как быть с МК, в которых малый объём памяти - не ясно.
Остался один единственный и походу верный вариант - С++. Но четкого пути я так и не нашёл.
Это была предыстория, основа вопроса в чем: как и с чего начать изучать СТМ32, при минимальных знания с++? Что почитать, что посмотреть? Желательно,конечно, на русском языке.
Хотелось бы за короткий промежуток времени научиться " контролировать " мк и заставлять его делать то что хочу)
По этому прошу помощи в наставлении меня на путь истинный)
То что вы выбрали С++ путь, это правильно.
1. Сгенерируйте проект в STM32CubeMx. Задайте параметры пинов, подключите необходимую периферию (UART, SPI).
2. Экспортируйте проект в IAR ARM или Keil.
3. Собирайте код и заливайте в плату. Вы не написали ни строчки кода, а уже получили рабочий каркас приложения.
4. Читайте даташиты на чип (нужен тот, где описываются все регистры периферии), и документацию на HAL. Основная ваша работа будет идти через HAL, про регистры читать для общего понимания как может работать периферия.
Значит сначало изучить, какие выводы микроконтроллер в что умеют? Т.е. шим, юарт и т.д.? Потом надо уже учить в тупую язык с++ и пытаться что-то писать?
Там даже не С++, а С по умолчанию. И знаний там особых не надо, вызывай функции, делай циклы и if.
STM32CubeMx чем и хорош, что сам показывает какие функции имеет каждый пин, определяет конфликты, если на один пин пытаетесь назначить одновременно несколько периферий и т.д. Это НАМНОГО удобнее, чем самому регистры править.
Особого опыта в STM32 не имею, но мне лично кажется, что для новичка AC6 System Workbench подойдет больше, у него нет ограничений как у бесплатного Keil и он более "дружелюбный" чем IAR ARM
Читал про новую IDE от STMicroelectronics Atolic TrueStudio, но еще не пробовал. Как я понял у него какая-то особая связь с STM32CubeMx и куча крутых возможностей
Александр Гусев, Посмотрим. Еще пока руки не дошли разобраться. Лежит пара STM32F103C8T6 купленные по случаю и подарочный Nucleo на STM32L4R5. Есть куча идей, но совсем нет времени
Для отладочной платы в STM32CubeMx скорее всего уже есть требуемые настройки, изучить их и сгенерить проект для Atollic TrueStudio.
Первую задачу себе можно поставить научиться общаться через UART с терминалом компьютера.
Другая по нажатию кнопок включать/отключать светодиоды.
Купить I2C монитор и научиться на него печатать. Сделать какое нибудь меню, перемещаться с помощью кнопок и также через меню на экране управлять светодиодами. Еще подключить по SPI АЦП и показывать температуру. После чего можно будет уже идти работать управлять не сложными устройствами