STM32. Курс по программированию
Этой статьей мы начинаем цикл в котором постараемся раскрыть для наших читателей основные возможности этих относительно новых микроконтроллеров от ST Microeletronics. И будем мы делать это исключительно с практической точки зрения, ориентируясь на начинающих, чтобы дать в итоге инструмент для реальной разработки своих устройств.
Почему STM32?
Сегодня уже все знаю о существовании линейки этих контроллеров и профессиональные разработчики давно и активно их используют. Характеристики впечатляют: рабочие частоты, объем памяти, набор периферии — всего гораздо больше чем, например, в привычных 8ми битных AVR-микроконтроллерах и все это разработчик получает по вполне демократичной цене. Цифра "32" в названии говорит о разрядности контроллеров. То есть за один раз они могут обрабатывать 32х битные числа. А это, в сравнении с 8ми битными контроллера, теоретически должно дать нам прирост производительности сразу в четыре раза!
Отдельно необходимо отметить, что ST Microelectronics это очень крупная компания у которой есть ресурсы на разработку очень подробной документации, вспомогательного программного обеспечения, отладочных средств и т.д. Вы помните хорошую, популярную плату от Atmel и программаторы по доступной цене? Их фактически нет! А для STM32 все это выпускается огромными тиражами и продается по минимальной цене, чтобы как можно быстрее завоевать рынок.
Минусы
Все они являются продолжением достоинств.
Количество и сложность периферии приводит к тому что даже для очень простых задач приходится производить большой объем работы с самыми не очевидными настройками.
В реальных условиях для упрощения работы необходимо использовать библиотеки, драйверы и т.д., а это влечет за собой снижения оптимальности конечной программы. То есть итоговый прирост производительности не так велик, как может показаться на первый взгляд, а память расходуется очень быстро.
Высокий уровень абстракции скрывает истинную картину вещей и при возникновении проблем их становится достаточно трудно найти.
Большое количество разных отладочных плат и программ затрудняет поиски решения проблем так как у все используют свой индивидуальный набор средств.
Программное и аппаратное обеспечение
В нашем курсе мы будем использовать только бесплатное программное обеспечение, а именно сочетание CubeMX и Keil uVision. Также потребуется программа STLink Utility. В качестве аппаратного обеспечения будет использоваться готовая отладочная плата Nucleo-64 STM32F030.
Подробнее о подготовке рабочего места мы поговорим чуть позже в первой же статье курса.
Статьи курса
- Подготовка к работе
- Первый проект
- Подключение кнопки
- Прерывания
- Передача данных через UART (работа с COM-портом)
- Работа с АЦП через DMA
Мы будем очень рады, если вы поддержите наш ресурс и посетите магазин наших товаров shop.customelectronics.ru.
Метки: CubeMX, Keil, Nucleo, STLink, STM32, курс, программирование Просмотров: 24891