Введение
Постоянно растущая популярность микроконтроллеров серии STM32 [1] мотивирует предприятия, работающие в области развития микропроцессорных систем, создавать аппаратные и программные средства для поддержки этих микроконтроллеров с целью дальнейшей продажи созданных продуктов.
Одним из таких предприятий является хорошо известная во всём мире компания Mikro-Elektronika [2], которая давно укрепилась в сфере создания микропроцессорных устройств и программных продуктов для них. Она имеет прекрасную репутацию и постоянно развивается, регулярно предлагая на рынок новые, современные продукты.
Обзор продукции
Для микроконтроллеров серии STM32 компанией Mikro-Elektronika предлагаются такие программные среды разработки, как: mikroC PRO for ARM, mikroBasic PRO for ARM и mikroPascal PRO for ARM. Эти среды разработки позволяют быстро создавать эффективные программы на таких широко распространённых языках высокого уровня, как C, Basic и Pascal, соответственно. Каждая из этих сред имеет удобный и эргономичный интерфейс пользователя (IDE) со встроенным редактором и мощным отладчиком программ. Встроенный в среду разработки мастер проектов позволяет в считанные минуты создать заготовку рабочей программы для микроконтроллера. Библиотека готовых функций, входящая в состав среды, обеспечивает разработчика программ мощной поддержкой для быстрого и безошибочного создания программного продукта.
Такая среда включает в себя и огромное количество библиотечных функций, которые поддерживают следующие устройства и интерфейсы:
- встроенный аналого-цифровой преобразователь (АЦП) микроконтроллера;
- встроенные широтно-импульсные модуляторы (ШИМ) микроконтроллера;
- внешние сменные карты памяти типа SD, ММС и Compact Flash;
- файловую систему FAT;
- алфавитно-цифровые жидкокристаллические индикаторы LCD;
- графические жидкокристаллические индикаторы GLCD;
- периферийные интерфейсы: I2C, SPI, UART, RS-485, CAN, PS/2, USB, Ethernet и другие.
Кроме того, данная компания разработала и активно продаёт следующие отладочные устройства на базе STM32: EasyMx PRO™ v7 for STM32, Mikromedia for STM32, Mikromedia Plus for STM32, Mikromedia 7 for STM32F4, STM32F4 Discovery Shield, MINI-M0 for STM32, FlowPaw, Quail Boards и другие. Все эти устройства представляют собой отладочные платы и предназначены для быстрого освоения микроконтроллеров серии STM32. Некоторые из них включают в свой состав цветные графические дисплеи и считыватели карт памяти. Все устройства имеют подробные технические описания и комплектуются набором готовых тестовых программ в качестве учебных примеров [3].
Рассмотрим одно из таких устройств с названием MINI-M0 for STM32.
Описание отладочного модуля
Отладочный модуль MINI-M0 for STM32 разработан на основе микроконтроллера STM32F051R8. Схема отладочного модуля MINI-MO представлена на рисунке 1.

В состав модуля кроме микроконтроллера U1 входит микросхема U2 преобразователя интерфейса USB в UART типа FT230x и стабилизатор напряжения U3 типа AP7331-ADJ. Модуль оснащён кварцевым резонатором X1 для поверхностного монтажа на 16 MГц и резонатором X2 на 32768 кГц для работы внутреннего генератора микроконтроллера. Модуль MINI-M0 имеет кнопку сброса T1 и пять светодиодов. Кроме того, модуль содержит ряд пассивных элементов и соединителей.
Данный модуль изготовлен в виде малогабаритной платы, которая прекрасно вписывается в стандартный панельный разъём DIP40. Модуль имеет размеры 50,8 ´ 17,78 мм, а вес модуля составляет всего 6 г (см. рис. 2).

Подобная конструкция позволяет использовать данный модуль в качестве законченного микроконтроллерного узла, с возможностью его быстрой установки и изъятия из макетной платы. Такой модуль удобно использовать для макетирования нового устройства на специальном тестовом модуле.
Устройство поставляется с предварительно запрограммированным быстрым USB-UART загрузчиком, поэтому для него не требуется никаких внешних программаторов. Модуль работает от источника питания с напряжением 3,3 В и потребляет ток не более 300 мА. Встроенный стабилизатор напряжения позволяет устройству получать питание непосредственно от интерфейса USB. Внешний вид и назначение выводов модуля приведены на рисунке 3.

Если возникнет необходимость задействовать внешний программатор (типа mikroProg или ST-LINK V2), то его можно присоединить к модулю MINI-MO через контактные площадки, обозначенные как PA14 TCK/SWC и PA13 TMS/SWD.
Работа с отладочным модулем
Процесс освоения STM32 с помощью отладочного модуля MINI-MO сводится к созданию собственных программ, их компиляции в одной из сред разработки Mikro-Elektronika и загрузке полученных HEX-файлов в отладочный модуль. Проверка правильности работы программы в реальном времени осуществляется с помощью индикаторов или интерфейсов самого отладочного модуля.
Для загрузки файлов в микроконтроллер отладочного модуля используется загрузчик, который запрограммирован в модуле MINI M0 по умолчанию, и внешняя программа mikroBootloader, устанавливаемая на персональном компьютере.
Программа загрузчика mikroBootloader является бесплатной и находится на сайте производителя [4]. Для её установки необходимо скачать архивный файл программы и распаковать его. После чего нужно подключить отладочный модуль MINI M0 с помощью кабеля USB к интерфейсу USB персонального компьютера и запустить файл mikroBootloader.exe. При этом на экране монитора компьютера должно появиться окно, показанное на рисунке 4.

Далее требуется узнать номер порта, назначенного операционной системой компьютера для подключённого отладочного модуля. Это можно сделать с помощью диспетчера устройств компьютера, окно которого показано на рисунке 5.

После того как номер порта будет известен, необходимо ввести этот номер в настройки программы mikroBootloader через выпадающий список портов, появляющийся при нажатии программной кнопки Change Setting (см. рис. 6).

После выбора порта следует нажать программную кнопку Ok.
Теперь нажмите кнопку сброса на модуле MINI M0, а затем нажмите и держите программную кнопку Connect to MPU в течение 5 секунд. В противном случае в модуле начнёт работать записанная ранее программа микроконтроллера.
При установлении соединения с модулем надпись на кнопке Connect to MPU автоматически будет изменена на Watting… Disconnect.
Далее нажмите кнопку Brose for HEX и в отрывшемся окне выберите заранее подготовленный HEX-файл программы, который будет загружен в память микроконтроллера отладочного модуля.
Для запуска загрузки HEX-файла нажмите программную кнопку Begin Uploading. Процесс загрузки файла будет отображаться в окне программы в виде заполняющегося другим цветом элемента программы.
В листингах 1 и 2 приведены готовые примеры программ для отладочного модуля, написанные на языке программирования Си. Каждый пример программы снабжён подробными комментариями на русском языке, из которых понятно назначение программ и их алгоритм. С помощью среды разработки mikroC PRO for ARM и этих программ можно получить загрузочные HEX-файлы для отладочного модуля MINI-M0.


Представленный здесь отладочный модуль MINI-M0 и ему подобные модули позволяют сэкономить время и силы при изучении микроконтроллеров и сразу же приступать к этапу их программирования.
Литература
Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

