Микроконтроллер STM32F407VG
Описание микроконтроллера
Основанные на ARM Cortex-M4 микроконтроллеры серии STM32 F4 являются продолжением ведущей линейки STM32, обладая еще более высокой производительностью. Так же, как серия STM32 F2, эти микроконтроллеры изготавливаются по 90нм-технологии и используют запатентованный ST Microelectronics’ом ART Accelerator для достижения наилучших результатов тестов среди основанных на ядре Cortex-M микроконтроллеров, достигая показателей в 225 DMIPS/606 CoreMark и работая с флэш-памятью на частоте 180 МГц.
Рисунок 1. Микроконтроллер STM32F407VG
Инструкции DSP и модуль операций с плавающей точкой дают возможность применять данные контроллеры в широком спектре проектов. Динамическое потребление питания позволяет снизить потребление тока при выполнении кода из флэш-памяти до 140 мкА/МГц для STM32F401 (максимальная частота до 84 МГц) и до 238 мкА/МГц для STM32F42x/43x, работающих на частоте до 180 МГц. Микроконтроллеры серии STM32 F4 являются результатом идеального симбиоза возможности управления МК в реальном времени и производительностью обработки сигналов, свойственной сигнальным процессорам, дополняя таким образом линейку контроллеров STM32 новым классом устройств, сигнальными микроконтроллерами (англ. digital signal controller, DSC). Серия состоит из пяти классов продуктов, которые полностью совместимы по выводам, периферии и программному коду.
Рисунок 2. Основные характеристики процессора Cortex-M4
Общие характеристики семейства МК ARM 32-bit Cortex-M4 CPU:
- Частота тактирования 168МГц, 210 DMIPS/1.25 DMIPS/МГц (Dhrystone 2.1);
- Поддержка DSP-инструкций;
- Новая высокопроизводительная AHB-матрица шин;
- До 1 Mбайта Flash-памяти;
- До 192 + 4 кбайт SRAM-памяти;
- Напряжение питания 1,8…3,6В (POR, PDR, PVD и BOR);
- Внутренние RC-генераторы на 16МГц и 32кГц (для RTC);
- Внешний источник тактирования 4…26МГц и для RTC – 32,768кГц;
- Два 12-битных ЦАП;
- DMA-контроллер на 16 потоков с поддержкой пакетной передачи;
- 17 таймеров (16 и 32 разряда);
Встроенные интерфейсы коммуникации
Ethernet. Блок выполнен в строго по стандарту IEEE802.3. Возможна передача данных со скоростью 10/100 Мбит/с. Доступна синхронизация часов для чего протокол IEEE1588 v2 реализован аппаратно. Для оптоволоконной либо медной линии требуется применение стороннего приемопередатчика. PHY-трансивер соединяется напрямую с портом MII или RMII.
USB (Universal Serial Bus). На борту присутствует два раздельных блока USB. Первый – USB OTG full-speed, является полностью аппаратной реализацией и совместим со стандартами USB 2.0, а также OTG 1.0. Работает на скорости до 12 Mбит/с. Поддерживается работа в режиме Host/Device/OTG. Присутствует SRP (Session request protocol) и HNP (Host negotiation protocol).
SDIO (Secure Digital Input/Output). Интерфейс позволяет работать с картами SD/SDIO/MMC-картами памяти и дисковыми контроллерами CE-ATA. В восьмибитном режиме несущая частота обмена данными составляет 48 MHz. Контроллер соответствует таким стандартам: SD Memory Card 2.0, MultiMediaCard System 4.2 (работа в режимах 1/4/8 бит), SD I/O Card 2.0 (режимы 1го и 4х бит), CE-ATA 1.1.
SPI (Serial Peripheral Interface). Устройство оснащено тремя блоками SPI, каждый из которых работает в режиме Мaster (Мultimaster) либо в режиме Slave, передавая данные полудуплексно, полнодуплексно либо симплексно. Поддерживается аппаратный расчет контрольных сумм CRC для повышения помехоустойчивости канала связи: так CRC может быть передан последним байтом слова в режиме Tx, присутствует автопроверка правильности CRC последнего пришедшего байта. Блок устройства SPI1 работает на скоростях вплоть до 37,5 Mбит/с. Другие ограничены максимальной скоростью в 21 Мбит/с.
USART (Universal Synchronous Asynchronous Receiver Transmitter). В микроконтроллер встроено четыре блока USART и два UART (Universal Asynchronous Receiver Transmitter). Блоки USART1 и USART6 допускают высокоскоростной обмен данными на скорости до 10,5 Mбит/с. Другие же поддерживают скорость не более 5,25 Mбит/с. На нативном уровне присутствует поддержка передачи данных согласно стандарта NRZ (Non Return to Zero).
Применение контроллеров в промышленности
Современные системы становятся все сложней, и разработчкики начинают переходить на 32 – битные системы. Мощность 8-битников ограничена, при этом их стоимость сопоставима с новыми 32-битными микроконтроллерами. STM32 – это микроконтроллер, построенный на ядре ARM Cortex-M3 [3]. Данное ядро имеет много преимуществ, которые будут перечислены ниже, но его основное преимущество на сегодняшний день – универсальность. За два года Cortex-M3 стал индустриальным стандартом. Об этом говорит количество производителей, присоединившихся к данной архитектуре. Все основные производители микроконтроллеров, которые присутствуют в России, кроме Microchip, имеют или развивают решения на основе этой архитектуры: STMicroelectronics, Texas Instrument, NXP, ATMEL, Analog Devices, Renesas и т.д. Компания ST одна из первых выпустила свои микроконтроллеры Cortex-M3 (2007 г.) и быстро стала доминирующим игроком на этом рынке. Если вдруг понадобится переход с одного производителя на другой (срыв поставок, отсутствие нужных библиотек, новые функциональные требования, увеличения цен, и т.д.), то часть программного кода, связанная с ядром, даже не потребует изменения. Необходима будет только работа на уровне драйверов периферии. В итоге получается, что если писать программный код с четким делением между ядром и периферией, то можно обеспечить условия для очень быстрого перехода с одного производителя на другой. Остается, конечно, проблема переделки печатной платы.
Рисунок 3. Применение микроконтроллера для регулирования скорости электродвигателя
Микроконтроллеры STM применяются в основном во встраевымаех системах. Они так же могут применяться в промышленности. Этому способствуют низкая стоимость ядра, а также повышенные помехозащищенность и помехоустойчивость, относительно микроконтроллеров того же класса. Однако для применения в промышленности, необходимо согласовывать уровни сигналов, и самостоятельно разрабатывать всю необходимую силовую обвязку.