STM32—32-разрядные микроконтроллеры на основе ядра 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-разрядную
схемотехнику в критичные к стоимости
применения или в 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, представляющая
организацию шин и подключение к ним памяти и периферии.

Рис. 1. Блок-схема микроконтроллера семейства STM32
Все представители семейства STM32 оснащены стандартным портом JTAG с встроенной отладочной системой.
Порт 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 имеют два независимых
модуля АЦП с общим числом аналоговых
входов 2×10 или 2×16.
Такой набор модулей PWM и АЦП позволяет реализовать одновременное управление
сразу двумя 3-фазными бесколлекторными
двигателями.
Все микроконтроллеры линейки Performance
имеют в своем составе контроллеры коммуникационных интерфейсов последовательной передачи по стандарту CAN и USB
(12 Мбит/с).
Новые микроконтроллеры семейства
STM32 поставляются в корпусах LQFP64,
LQFP/BGA100 и LQFP144/BGA144. Версии
с объемом флэш-памяти в 32 или 64 кбайт
размещены в новом компактном корпусе
QFN36 (6Q6 мм).

Рис. 2. Матрица номенклатуры микроконтроллеров семейства STM32
На данный момент номенклатура микроконтроллеров семейства STM32 (рис. 2), в целом, состоит из 46 устройств линеек Access
и Performance. Основные характеристики
этих микроконтроллеров представлены в таблице.
Таблица. Характеристики 32-разрядных микроконтроллеров на основе ядра CORTEX M3
Тип прибора | F такт, МГц | Осн. гене- ратор такт., МГц |
Встроенные RC-генераторы |
Гене- ратор час тоты 32 кГц |
Flash-память прог рамм, кбайт |
RAM, кбайт | DMA, кана- лов |
ADC, количество (каналов × разрядов) |
Таймеров × разрядов (IC/OC/PWM) |
24-разр. счетчик обратн. счта |
Прочие таймеры | USART (IrDa/ISO7816) |
USB | CAN | Прочие последова- тельные интерфейсы |
Прим. | Вывод Vbat | I/O выводов (с большим током) |
Диапазон рабоч. темп., °C | Режимов энерго- сбер. |
Напряжение питания, В |
Корпус |
Линейка Access | ||||||||||||||||||||||
STM32F101T6 | 36 | 4–16 | 8 МГц/ 32 кГц |
32 | 6 | 7 | 1×(10×12) | 2×16 (8/8/8) | + | 2×WDG, RTC |
2 | 1×SPI, 1×I2C | Встроенные функции POR, PDR и PVD |
+ | –40…85/105 | 3 | 2–3,6 | VFQFPN 36 6×6×1,0 PITCH 0.50 |
||||
STM32F101T8 | 64 | 10 | 3×16 (12/12/12) | |||||||||||||||||||
STM32F101C6 | 36 | 4–16 | 8 МГц/ 32 кГц |
+ | 32 | 6 | 7 | 1×(10×12) | 2×16 (8/8/8) | 2×WDG, RTC |
2 | 1×SPI, 1×I2C | Встроенные функции POR, PDR и PVD |
+ | 3 | 2–3,6 | LQFP 48 7×7×1,4 1 | |||||
STM32F101C8 | 64 | 10 | 3×16 (12/12/12) | + | 3 | 2×SPI, 2×I2C | ||||||||||||||||
STM32F101CB | 128 | 16 | 3 | 2–3,6 | LQFP 64 10×10×1,4 1 | |||||||||||||||||
STM32F101R6 | 36 | 4–16 | 8 МГц/ 32 кГц |
+ | 32 | 6 | 7 | 1×(16×12) | 2×16 (8/8/8) | + | 2×WDG, RTC |
2 | 1×SPI, 1×I2C | Встроенные функции POR, PDR и PVD |
+ | |||||||
STM32F101R8 | 64 | 10 | 3×16 (12/12/12) | 3 | 2×SPI, 2×I2C | 3 | 2–3,6 | LQFP 100 14×14×1,4 1 | ||||||||||||||
STM32F101RB | 128 | 16 | ||||||||||||||||||||
STM32F101V8 | 36 | 4–16 | 8 МГц/ 32 кГц |
+ | 64 | 10 | 7 | 1×(16×12) | 3×16 (12/12/12) | + | 2×WDG, RTC |
3 | 2×SPI, 2×I2C | Встроенные функции POR, PDR и PVD |
+ | |||||||
STM32F101VB | 128 | 16 | ||||||||||||||||||||
Линейка 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 USART 4,5 Мбит/с |
+ | –40…85/105 | 3 | 2–3,6 | VFQFPN 36 6×6×1,0 PITCH 0.50 | |
STM32F103T8 | 64 | 20 | 4×16 (16/16/18) | |||||||||||||||||||
STM32F103C6 | 72 | 4–16 | 8 МГц/ 32 кГц |
+ | 32 | 10 | 12 | 2×(10×12) | 3×16 (12/12/14) | + | 2×WDG, RTC |
1+HS | + | + | 1×SPI, 1×I2C | Встроенные функции POR, PDR и PVD, 1xHS USART 4,5 Мбит/с |
+ | 3 | 2–3,6 | LQFP 48 7×7×1,4 1 | ||
STM32F103C8 | 64 | 20 | 4×16 (16/16/18) | 2×SPI, 2×I2C | ||||||||||||||||||
STM32F103CB | 128 | 20 | 2+HS | 3 | 2–3,6 | LQFP 64 10×10×1,4 1 | ||||||||||||||||
STM32F103R6 | 72 | 4–16 | 8 МГц/ 32 кГц |
+ | 32 | 10 | 12 | 2×(16×12) | 3×16 (12/12/14) | + | 2×WDG, RTC |
2+HS | + | + | 1×SPI, 1×I2C | Встроенные функции POR, PDR и PVD, 1xHS USART 4,5 Мбит/с |
+ | 3 | 2–3,6 | LFBGA 100 10×10×1,7 F10x10 0.8, TQFP 100 14×14×1,4 1 |
||
STM32F103R8 | 64 | 20 | 4×16 (16/16/18) | 2×SPI, 2×I2C | ||||||||||||||||||
STM32F103RB | 128 | 20 | ||||||||||||||||||||
STM32F103V8 | 72 | 4–16 | 8 МГц/ 32 кГц |
+ | 64 | 20 | 12 | 2×(16×12) | 4×16 (16/16/18) | + | 2×WDG, RTC |
2+HS | + | + | 2×SPI, 2×I2C | Встроенные функции POR, PDR и PVD, 1xHS USART 4,5 Мбит/с |
+ | |||||
STM32F103VB | 128 | 20 |
Среда разработки для микроконтроллеров
семейства STM32 фирмы STMicroelectronics
позволяет строить применения на стандартном ядре с учетом мощного набора программных и аппаратных средств. Другими
популярными интегрированными средами
проектирования, предоставляемыми третьими разработчиками, являются uVision3 (Keil),
EWARM (IAR), RAISONANCE и др.
Фирма STMicroelectronics (www.st.com) для
поддержки своей продукции предоставляет
разработчикам бесплатный набор драйверов
всех стандартных блоков и УВВ, от портов
ввода/вывода и таймеров до блоков CAN, I2C,
внешней шины, SPI, UART, АЦП и др., а также бесплатные библиотеки для векторного
управления электродвигателями, в том числе асинхронными с короткозамкнутым ротором.
В состав средств поддержки разработчиков
входит новая оценочная плата от фирмы ST,
поддерживающая самые последние модели
и стартовые наборы от третьих поставщиков — IAR, KEIL, HITEX, RAISONANCE.