Найти в Дзене
Astro-grad

Первый опыт работы с STM32

Для исследований, связанных с изучением ракетных и безракетных запусков мне понадобился прибор собирающий различные данные о полете. До этого у меня был небольшой опыт работы с Ардуино. Потом мне на глаза попалась информация о такой плате как STM32F103C8T6. По характеристикам она круче чем Ардуино, а стоила дешевле. Примерно полтора года назад она стоила около 100 рублей на AliExpress, сейчас конечно цены поднялись и платка стоит около 400 рублей. Вот я и решил использовать именно ее. Купил, но времени заниматься все не было. А когда появилось время, то сразу начались проблемы с программированием под эту плату... На всякий случай еще раз отмечу, что я новичок в этой теме. Для профессионалов мои проблемы покажутся какими-то смешными и незначительными. Просто описываю свои первые впечатления. Надеюсь мне хватит сил и терпения разобраться, все-таки у stm'ок много плюсов. Это и большое разнообразие плат, то есть можно выбрать необходимую по мощности. Это и доступные цены. Это и гибкая нас

Для исследований, связанных с изучением ракетных и безракетных запусков мне понадобился прибор собирающий различные данные о полете.

До этого у меня был небольшой опыт работы с Ардуино. Потом мне на глаза попалась информация о такой плате как STM32F103C8T6.

STM32F103C8T6
STM32F103C8T6

По характеристикам она круче чем Ардуино, а стоила дешевле. Примерно полтора года назад она стоила около 100 рублей на AliExpress, сейчас конечно цены поднялись и платка стоит около 400 рублей.

Вот я и решил использовать именно ее. Купил, но времени заниматься все не было. А когда появилось время, то сразу начались проблемы с программированием под эту плату...

  • Во первых, я думал, что по аналогии с Ардуино stm'ку можно будет программировать просто подключив плату к компьютеру по USB. Не тут то было, для программирования нужен отдельный программатор ST-link. Пришлось заказывать и ждать пока привезут.
  • Во вторых, нет какой-то стандартной IDE для программирования. Их много. С одной стороны это хорошо, с другой, глаза разбегаются. Сначала думал использовать Keil, но она платная. Потом попробовал Coocox, в целом эта IDE мне понравилась, все довольно удобно и понятно. Еще пробовал CubeMX и CubeIDE.
  • В третьих, нет стандартной коллекции примеров по работе конкретно с этой платой. В интернете конечно все можно найти, но на это надо время. Примеры для других типов плат можно адаптировать под STM32F103C8T6, но на это опять же нужно время.
  • В четвертых, по незнанию можно изменить настройки выводов из-за чего они перестают работать как ожидается. Например, после запуска некоторых примеров из интернета у меня перестал работать вывод B3, сначала я думал, что сжег плату. Даже очистка командой "Erase Chip" в ST-LINK Utility не помогала. Но потом выяснилось, что это было из-за изменения настройка вывода. Проблема пропала после создания нового проекта в CubeIDE и назначения вывода B3 на выход. Видимо при этом все настройки сбрасываются по умолчанию.

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

Надеюсь мне хватит сил и терпения разобраться, все-таки у stm'ок много плюсов. Это и большое разнообразие плат, то есть можно выбрать необходимую по мощности. Это и доступные цены. Это и гибкая настройка частоты и периферии. Это и возможность добиться низкого энергопотребления.