STM32 — 32-разрядные микроконтроллеры
на основе ядра ARM Cortex-M3
Евгений КРЫЛОВ
Фирма STMicroelectronics (STM) одной из первых приступила к серийному выпуску 32-разрядных Flash-микроконтроллеров, в основу которых было заложено ядро ARM Cortex-M3, разработанное специально для встраиваемых применений.
Приборы нового семейства, получившего название STM32, предоставили разработчикам расширенные возможности архитектуры Cortex-M3, при ведущем в отрасли малом энергопотреблении.
Низкое энергопотребление микроконтроллеров семейства STM32 в рабочем режиме в еще большей мере снижается за счет использования ряда режимов энергосбережения, что способствует оптимизации рабочих характеристик таких применений, как промышленное оборудование, контроллеры об-
служивания зданий, медицинская аппаратура, периферия компьютеров и т. п.
Ядро процессора Cortex-M3 построено с использованием Гарвардской архитектуры с 3-уровневым конвейером, в сочетании с рядом расширенных функций, включая одно-цикловый умножитель и аппаратный делитель, обеспечивающие исключительно высокую производительность в 1,25 DMIPS/МГц. Процессор Cortex-M3 работает также с новой системой команд Thumb-2, которая, в сочетании с такими функциями, как хранение не-
выровненных данных и побитовая обработка, обеспечивает 32-разрядную производительность при стоимости, эквивалентной стоимости современных 8- и 16-разрядных микроконтроллеров.
В семейство STM32 входят две линейки приборов:
• Access (F101xx): частота тактирования 36 МГц, от 32 до 128 кбайт флэш-памяти, от 6 до 16 кбайт SRAM, до 7 коммуникационных интерфейсов. Линейка Access разработана с тем, чтобы внедрить 32-разрядную
Cortex-M3 CPU 36/72 МГц
JTAG/SW отладка
ЕТМ
Встроенный контроллер векторных прерываний
1 системный таймер
DMA до 12 каналов
SDIO*
SD/SDIO/MMC/CE-ATA
4-ї
АРМ 1Ле
высоко-
скоростная
шина
матрица/
арбитр
(макс.
72 МГц)
Flash До 512 кбайт
I/F флэш-памяти
2х16-разр. ШИМ синхрон из. АС-таймер
До 16 внешних прерываний
До 1121/0
1xSPI
1xUSART/LIN Smartcard/lrDA Управление по модему
Мост
<—►
<—►
<----►
До 64 кбайт КВ SRAM
До 84 байт исходных данных
FSMC
SRAM/NOR/NAND/SF/ LCD паралл. интерфейс
Тактовый генератор
ARM периферийная шина
П
Мост
(макс. 36 МГц)
6х 16-битный таймер
6 независимых сторожевых схем
2-канкльный 12-битный ЦАП*
Зх 12-битных АЦП/ 1 Msps до 21 канала
Датчик температуры
Источник питания 1,8 В POR/PDR/PVD
XTAL осцилляторы 32 кГц + 4—16 МГц
Внутренние RC осцилляторы 40 кГц + 8 МГц
PLL
RTC/AWU
•IxUSB 2,0 FS
1xCAN 2,0 В
4xUSART/LIN Smartcard/lrDA Управление по модему
2xSPI/FS*
2хРС
* Для некоторых семейств предусмотрено 256 кбайт встроенной флеш-памяти.
Память и переферийное оборудование зависят от семейства
Рис. 1. Блок-схема микроконтроллера семейства STM32
512
384
256
Э
т
с;
е
64
STM32F103T8
STM32F101T8
STM32F103T6
STM32F101T6
STM32F103RE STM32F103VE STM32F103ZE
STM32F101RE STM32F101VE STM32F101ZE
STM32F103RD STM32F103VD STM32F103ZD
STM32F101RD STM32F101VD STM32F101ZD
STM32F103RC STM32F103VC STM32F103ZC
STM32F101RC STM32F101VC STM32F101ZC
■
STM32F103CB STM32F103RB STM32F103VB
STM32F101CB STM32F101RB STM32F101VB
1
STM32F1Q3C8 STM32F103R8 STM32F103V8
STM32F101C8 STM32F101R8 STM32F101V8
STM32F103C6 STM32F103R6
■STM32F101C6 STM32F101R6 J
36 выводов 48 выводов 64 вывода 100 выводов 144 выводов QFN (6x6 мм) QFN (7x7 мм) QFN (10x10 мм) QFN (14x14 мм) QFN (20x20 мм)
Рис. 2. Матрица номенклатуры микроконтроллеров семейства STM32
схемотехнику в критичные к стоимости применения или в 16-разрядные проекты. • Performance (F103xx): частота тактирования 72 МГц, от 256 до 512 кбайт флэш-памяти, до 64 кбайт SRAM, контроллер статической памяти с поддержкой Compact Flash, SRAM, PSRAM, NOR и NAND памяти, с поддержкой LCD параллельного интерфейса (F103Vx). Микроконтроллеры имеют до 13 коммуникационных интерфейсов, в том числе USB и CAN. Линейка микроконтроллеров Performance ориентирована на применения, которым необходимы одновременно и повышенная производительность обработки, и экономичная работа.
В текущем году семейство STM32 значительно расширилось: добавлено еще 28 новых микроконтроллеров, включая недорогие приборы, размещенные в 36-выводных корпусах, и приборы более высокого класса, размещенные в 144-выводных корпусах.
Новые микроконтроллеры, пополнившие номенклатуру семейства, располагают увеличенным объемом (256, 384 и 512 кбайт) встроенной Flash-памяти, обеспечивающей хранение как программ, так и данных. Увеличение объема памяти предоставляет разработчикам возможность реализовать новые функции и расширить возможности существующих базовых платформ продуктов. Объем встроенной SRAM-памяти также был увеличен до 64 кбайт у 72-МГц контроллеров линейки Performance и до 48 кбайт у 36-МГц контроллеров линейки Access.
Дополнительная периферия, встроенная в микроконтроллеры с Flash-памятью емкостью 256 кбайт и более, включает контроллер внешней статической памяти (Flexible
Static-Memory Controller, FSMC), поддерживающий микросхемы NOR, NAND и Compact Flash-памяти и, кроме того, SRAM-память. FSMC-контроллер поддерживает также режимы 8080 (Intel) и 6800 (Motorola) для организации параллельного интерфейса с LCD-контроллерами.
Кроме того, новые микроконтроллеры располагают контроллером для сменных носителей памяти, включая SD (Secure Digital), SDIO (Secure Digital Input/Output) и MMC
(Multi-Media Card), которые соответствуют требованиям спецификаций MultiMediaCard System Specification 4.42 для 8-разрядных пересылок данных на частоте 48 МГц.
На рис. 1 показана блок-схема микроконтроллера семейства STM32, представляющая организацию шин и подключение к ним памяти и периферии.
Все представители семейства STM32 оснащены стандартным портом JTAG с встроенной отладочной системой.
Таблица. Характеристики 32-разрядных микроконтроллеров на основе ядра CORTEX M3
Тип прибора F такт, МГц Основной генератор такт., МГц Встроенные RC-генераторы Генератор частоты 32 кГц Flash-память программ, кбайт RAM, кбайт DMA, каналов ADC, количество (каналов х разрядов) о ч _ ¡Ls 8? 2 о ф о 0 і— 24-разр.счетчик обратн. счта Прочие таймеры USART (IrDa/ISO7816) USB CAN Прочие последовательные интерфейсы Примечания Вывод Vbat I/O выводов (с большим током) Диапазон рабоч. темп., °С Режимов энергосбер. Напряжение питания, В Корпус
Линейка Access
STM32F101T6 36 4-16 8 МГц/ 32 1х(10х12) 2х16 (8/8/8) + 2хWDG, ^SPI, 1хК Встроенные функции + 26 2-3,6 VFQFPN 36 6х6х1,0
STM32F101T8 32 кГц 64 10 3х 16 (12/12/12) RTC POR, PDR и PVD (26) PITCH 0.50
STM32F101C6 8 МГц/ 32 кГц 32 2х16 (8/8/8) 2хWDG, RTC ^SPI, 1хК Встроенные функции POR, PDR и PVD 36 (36) 2-3,6 LQFP 48
STM32F101C8 36 4-16 + 64 10 1х(10х12) 3х 16 (12/12/12) + 2хSPI, 2х^ + 5 0 /1 со 0 -4 7х7х1,4 1
STM32F101CB 128 16 2-3,6 LQFP 64
STM32F101R6 8 МГц/ 32 кГц 32 2х16 (8/8/8) + 2хWDG, RTC ^SPI, 1 хI2C Встроенные функции POR, PDR и PVD 51 (51) 10х10х1,4 1
STM32F101R8 36 4-16 + 64 10 1х(16х 12) 3х 16 (12/12/12) 2хSPI, 2х^ +
STM32F101RB 128 16 2-3,6 LQFP 100
STM32F101V8 36 4-16 8 МГц/ + 64 10 1х(16х 12) 3х 16 (12/12/12) + 2хWDG, 2хSPI, 2х^ Встроенные функции + 80 14х14х1,4 1
STM32F101VB 32 кГц 128 16 RTC POR, PDR и PVD (80)
Линейка Performance
STM32F103T6 72 4-16 8 МГц/ 32 кГц + 32 10 12 2х(10х12) 3х 16 (12/12/12) + 2хWDG, RTC 1+HS + + 1хSPI, 1 хI2C Встроенные функции POR, PDR и PVD, 1xHS + 26 (26) 2-3,6 VFQFPN 36 6х6х1,0 PITCH 0.50
STM32F103T8 64 20 4х 16 (16/16/18) USART 4,5 Мбит/с 2-3,6 LQFP 48 7х7х1,4 1
STM32F103C6 8 МГц/ 32 кГц 32 10 3х 16 (12/12/14) 2хWDG, RTC 1+HS 1хSPI, 1 хI2C Встроенные функции POR, PDR и PVD, 1xHS USART на 4,5 Мбит/с 36 (36)
STM32F103C8 72 4-16 + 64 20 12 2х(10х12) 4х 16 (16/16/18) + + + 2хSPI, 2хК + 5 0 5/1 со 0 -4 2-3,6 LQFP 64 10х10х1,4 1
STM32F103CB 128 20 2+HS
STM32F103R6 8 МГц/ 32 кГц 32 10 3х 16 (12/12/14) 2хWDG, RTC ^SPI, 1 хI2C Встроенные функции POR, PDR и PVD, 1xHS USART 4,5 Мбит/с 51 (51) LFBGA 100
STM32F103R8 72 4-16 + 64 20 12 2х(16х 12) 4х 16 (16/16/18) + 2+HS + + 2хSPI, 2хI2C + 2-3,6 10х10х1,7 F10x10 0.8, TQFP 100
STM32F103RB 128 20
STM32F103V8 72 4-16 8 МГц/ + 64 20 12 2х(16х 12) 4х 16 (16/16/18) + 2хWDG, 2+HS + + 2хSPI, 2хI2C Встроенные функции POR, PDR и PVD, 1xHS USART на 4,5 Мбит/с + 80 14х14х1,4 1
STM32F103VB 32 кГц 128 20 RTC (80)
Порт I2S поддерживает режимы ведущего и ведомого, добавлена выборка аудиосигнала с частотами от 8 до 48 кГц и, кроме того, добавлены 2-канальный 12-разрядный DAC и встроенная макро-ячейка трассировки (Embedded Trace Macrocell, ETM), улучшающая возможности отладки. Введена и дополнительная стандартная периферия, включающая до пяти UART/USART (до 4,5 Мбит/с), три SPI (18 МГц) и два I2C (400 кГц) интерфейса. Такое сочетание периферийных устройств позволяет ориентировать микроконтроллеры семейства STM32 на новые рынки, которым необходимы надежная коммуникация и дополнительные возможности управления.
Новые микроконтроллеры линейки Performance с объемом памяти свыше 256 кбайт оснащены, кроме того, двумя PWM-таймерами с семью выходами и возможностью управления временем запирания (dead-time). Эти таймеры могут быть объединены с четырьмя стандартными 16-разрядными таймерами, что позволяет поддерживать до двадцати восьми PWM-сигналов. Все представители семейства оснащены 12-разрядными АЦП с частотой преобразования 1 МГц с воз-
можностью функции тройной выборки/хранения. Число каналов АЦП в микроконтроллерах линейки Access составляет 10 или 16 (один модуль АЦП), микроконтроллеры линейки Performance имеют два независимых модуля АЦП с общим числом аналоговых входов 2x10 или 2x16.
Такой набор модулей PWM и АЦП позволяет реализовать одновременное управление сразу двумя 3-фазными бесколлекторными двигателями.
Все микроконтроллеры линейки Performance имеют в своем составе контроллеры коммуникационных интерфейсов последовательной передачи по стандарту CAN и USB (12 Мбит/с).
Новые микроконтроллеры семейства STM32 поставляются в корпусах LQFP64, LQFP/BGA100 и LQFP144/BGA144. Версии с объемом флэш-памяти в 32 или 64 кбайт размещены в новом компактном корпусе QFN36 (6x6 мм).
На данный момент номенклатура микроконтроллеров семейства STM32 (рис. 2), в целом, состоит из 46 устройств линеек Access и Performance. Основные характеристики
этих микроконтроллеров представлены в таблице.
Среда разработки для микроконтроллеров семейства STM32 фирмы STMicroelectronics позволяет строить применения на стандартном ядре с учетом мощного набора программных и аппаратных средств. Другими популярными интегрированными средами проектирования, предоставляемыми третьими разработчиками, являются uVision3 (Keil), EWARM (IAR), RAISONANCE и др.
Фирма STMicroelectronics (www.st.com) для поддержки своей продукции предоставляет разработчикам бесплатный набор драйверов всех стандартных блоков и УВВ, от портов ввода/вывода и таймеров до блоков CAN, I2C, внешней шины, SPI, UART, АЦП и др., а также бесплатные библиотеки для векторного управления электродвигателями, в том числе асинхронными с короткозамкнутым ротором.
В состав средств поддержки разработчиков входит новая оценочная плата от фирмы ST, поддерживающая самые последние модели и стартовые наборы от третьих поставщиков — IAR, KEIL, HITEX, RAISONANCE.