Фильтр по тематике

Современные 32-разрядные ARM-микроконтроллеры серии STM32: отладочная плата F103C8T6 в среде разработки программ Arduino

В статье приведено описание отладочной платы F103C8T6 на базе STM32 и способ её интеграции в свободную среду разработки программ Arduino. Данный материал предназначен для практического освоения микроконтроллеров серии STM32 компании STMicroelectronics.

15.05.2017 2027 0
Современные 32-разрядные ARM-микроконтроллеры серии STM32: отладочная плата F103C8T6 в среде разработки программ Arduino

Введение

Большинство любителей микропроцессорной техники знакомы с широко распространённой средой разработки Arduino [1], предназначенной для быстрого освоения микропроцессорной техники. Эта среда разработки отличается простотой и удобством программирования. Кроме того, она является кросс-платформенной и имеет расширяемое программное обеспечение с открытым исходным кодом.

Данная среда изначально базировалась на микроконтроллерах AVR компании Atmel, но постепенно стала дополняться другими типами микроконтроллеров. Пришло время, когда к Arduino примкнули 32-разрядные микроконтроллеры. Одним из них стал микроконтроллер STM32F103C8T6 от компании STMicroelectronics [2], размещённый на отладочной плате F103C8T6.

Рассмотрим преимущества данного микроконтроллера и способ его интеграции в среду разработки Arduino.

Отладочная плата F103C8T6

Отладочная плата F103C8T6 по своим параметрам значительно превосходит аналогичные по размеру отладочные платы типа Arduino Nano.

Основой F103C8T6 является микроконтроллер STM32F103C8T6.


Внешний вид платы с двух сторон, а также габаритные размеры приведены соответственно на рисунках 1 и 2. Её электрическая принципиальная схема изображена на рисунке 3.

Соответствие выводов платы F103C8T6 функциональному назначению представлено на рисунке 4.

Приобрести такую плату можно за 117 руб. на торговой интернет-площадке aliexpress.com.

Благодаря микроконтроллеру STM32F103C8T6 со встроенным интерфейсом USB, для подключения к компьютеру не требуется дополнительного моста USB-UART.

В таблице 1 приведены для сравнения основные характеристики отладочных плат F103C8T6 и Arduino Nano v3.0.

Микроконтроллер отладочной платы имеет в своём составе:

  • 10 аналоговых входов АЦП (ADC) с разрешением 12 бит;
  • 2 АЦП 12-разрядных со временем преобразования 1 мкс;
  • 37 выводов GPIO;
  • 2 интерфейса SPI;
  • 2 интерфейса I2C;
  • 3 интерфейса USART;
  • 1 интерфейс USB 2.0;
  • 1 интерфейс CAN;
  • 4 таймера 16-разрядных;
  • DMA-контролер;
  • 2 сторожевых таймера;
  • встроенные часы реального времени RTC.

Подобный состав микроконтроллера является весомым аргументом в пользу его применения в различных проектах с программной поддержкой среды разработки Arduino.

Подготовка отладочной платы

Для того чтобы отладочная плата поддерживалась средой разработки Arduino, необходимо проделать следующие операции:

  1. Записать в микроконтроллер готовый загрузчик, который позволит прошивать плату через имеющийся на ней интерфейс USB;
  2. Установить программное дополнение в среду разработки Arduino для поддержки отладочной платы F103C8T6.

Загрузчик для отладочной платы в виде файла generic_boot20_pc13.bin находится в свободном доступе на сайте [3]. Записать этот файл в микроконтроллер можно через интерфейс UART с помощью свободно распространяемой программы Flash Loader Demonstrator [4] и конвертера USB-TTL, например, на базе FTDI FT232BL или CH340G.

Для активации режима программирования на отладочной плате F103C8T6 необходимо установить имеющиеся перемычки выбора режима загрузки BOOT следующим образом: первая на 1, вторая на 0. Конвертер USB-TTL требуется переключить на питание 3,3 В с помощью соответствующей перемычки. Далее нужно соединить проводниками отладочную плату F103C8T6 и конвертер USB-TTL в соответствии с таблицей 2.

На компьютере, с помощью которого будет записываться файл загрузчика в отладочную плату F103C8T6, необходимо установить драйвер для используемого конвертера USB-TTL, подключив конвертер USB-TTL к USB-интерфейсу компьютера. После чего можно начать запись файла загрузчика с помощью предварительно установленной на компьютер программы Flash Loader Demonstrator.

Интеграция платы в среду разработки

Для того чтобы среда разработки Arduino поддерживала отладочную плату F103C8T6, необходимо скачать дополнение для Arduino IDE и установить его на компьютер.

Это дополнение можно загрузить бесплатно с сайта [5] в виде архивного файла Arduino_STM32-master.zip. Этот файл следует распаковать в папку HARDWARE среды разработки Arduino и затем перезапустить среду разработки. После чего необходимо удостовериться, что в списке поддерживаемых средой разработки плат появился раздел STM32 Boards. Поддержка новых плат реализована в среде разработки Arduino начиная с версии 1.0.5.

Пример использования отладочной платы

Рассмотрим пример программы, осуществляющей на плате F103C8T6 мигание светодиода. Для этого создадим в среде разработки Arduino новый скетч, приведённый в листинге .

Далее в среде разработки Arduino необходимо выбрать плату Generic STM32F103C series с параметрами Variant: (20k RAM. 64k Flash). В качестве метода загрузки выбрать Upload method: «Serial». При выборе порта нужно указать порт, соответствующий конвертеру USB-TTL. После чего следует нажать программную кнопку загрузки в среде разработки. В результате программа должна загрузиться в отладочную плату, и начнётся мигание светодиода.

Подобным образом можно проверить работу других скетчей, содержащихся в библиотеке среды разработки Arduino. Установленный архивный файл Arduino_STM32-master.zip содержит в себе множество готовых примеров в виде скетч-файлов, которые позволяют быстро осваивать микроконтроллер STM32.

Литература

  1. www.arduino.ru.
  2. www.st.com.
  3. https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/STM32F1/binaries.
  4. http://www.st.com/en/development-tools/flasher-stm32.html.
  5. https://github.com/rogerclarkmelbourne/Arduino_STM32/archive/master.zip.

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

15.05.2017 2027 0
Комментарии
Рекомендуем

ООО «ИнСАТ» ИНН 7734682230 erid = 2SDnjd8zAXZ
ООО «ИнСАТ» ИНН 7734682230 erid = 2SDnjeDFeN3
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться