Перейти к содержанию

STM32F4: микроконтроллеры на Cortex-M4, распиновки по корпусам

STM32F4 — семейство STM32 на ядре Cortex-M4 с FPU, от недорогих STM32F401 и STM32F411 до STM32F429 и STM32F469 с контроллером дисплея. Здесь — сравнение линеек и страницы с распиновкой и номерами альтернативных функций каждого микроконтроллера в каждом корпусе.

STM32F4 — семейство микроконтроллеров STMicroelectronics на ядре Arm Cortex-M4 с блоком вычислений с плавающей точкой одинарной точности (FPU) и командами цифровой обработки сигналов (PM0214). В разделе 116 страниц для 211 исполнений в 20 корпусах, 11 линеек: у каждого сочетания микроконтроллера и корпуса — своя страница со схемой выводов, номерами альтернативных функций и списком похожих по выводам микроконтроллеров.

Линейки STM32F4

Семейство делится на линейки, которые различаются частотой, объёмом ОЗУ и набором крупных блоков — от недорогих STM32F401 и STM32F411 до STM32F469/479 с контроллером дисплея и хостом MIPI DSI. Значения в таблице собраны из самих записей базы ST: частота — максимальная для линейки, память — от наименьшего до наибольшего исполнения.

ЛинейкаЯдро, частотаФлеш-памятьОЗУКорпусаЧем выделяется
STM32F401Cortex-M4, до 84 МГц128 КБ – 512 КБ64 КБ – 96 КБLQFP64, LQFP100, UFBGA100, UFQFPN48, WLCSP49USB OTG FS, SDIO, I²S
STM32F405/415Cortex-M4, до 168 МГц512 КБ – 1 МБ128 КБLQFP64, LQFP100, LQFP144, WLCSP90USB OTG FS, USB OTG HS, CAN, SDIO, FSMC, DAC, I²S, CRYP, HASH, RNG
STM32F407/417Cortex-M4, до 168 МГц512 КБ – 1 МБ128 КБLQFP100, LQFP144, LQFP176, UFBGA176USB OTG FS, USB OTG HS, CAN, Ethernet, SDIO, FSMC, DAC, I²S, DCMI, CRYP, HASH, RNG
STM32F410Cortex-M4, до 100 МГц64 КБ – 128 КБ32 КБLQFP48, LQFP64, UFBGA64, UFQFPN48, WLCSP36DAC, I²S, RNG, LPTIM, FMPI2C
STM32F411Cortex-M4, до 100 МГц256 КБ – 512 КБ128 КБLQFP64, LQFP100, UFBGA100, UFQFPN48, WLCSP49USB OTG FS, SDIO, I²S
STM32F412Cortex-M4, до 100 МГц512 КБ – 1 МБ256 КБLQFP64, LQFP100, LQFP144, UFBGA100, UFBGA144, UFQFPN48, WLCSP64USB OTG FS, CAN, SDIO, FSMC, QUADSPI, I²S, DFSDM, RNG, FMPI2C
STM32F413/423Cortex-M4, до 100 МГц1 МБ – 1,5 МБ320 КБLQFP64, LQFP100, LQFP144, UFBGA100, UFBGA144, UFQFPN48, WLCSP81USB OTG FS, CAN, SDIO, FSMC, QUADSPI, DAC, I²S, SAI, DFSDM, AES, RNG, LPTIM, FMPI2C
STM32F427/437Cortex-M4, до 180 МГц1 МБ – 2 МБ192 КБLQFP100, LQFP144, LQFP176, UFBGA169, UFBGA176USB OTG FS, USB OTG HS, CAN, Ethernet, SDIO, FMC, DAC, I²S, SAI, DCMI, DMA2D, CRYP, HASH, RNG
STM32F429/439Cortex-M4, до 180 МГц512 КБ – 2 МБ192 КБLQFP100, LQFP144, LQFP176, LQFP208, TFBGA216, UFBGA169, UFBGA176, WLCSP143USB OTG FS, USB OTG HS, CAN, Ethernet, SDIO, FMC, DAC, I²S, SAI, DCMI, LTDC, DMA2D, CRYP, HASH, RNG
STM32F446Cortex-M4, до 180 МГц256 КБ – 512 КБ128 КБLQFP64, LQFP100, LQFP144, UFBGA144, WLCSP81USB OTG FS, USB OTG HS, CAN, SDIO, FMC, QUADSPI, DAC, I²S, SAI, SPDIF-RX, HDMI-CEC, DCMI, FMPI2C
STM32F469/479Cortex-M4, до 180 МГц512 КБ – 2 МБ320 КБLQFP100, LQFP144, LQFP176, LQFP208, TFBGA216, UFBGA169, UFBGA176, WLCSP168USB OTG FS, USB OTG HS, CAN, Ethernet, SDIO, FMC, QUADSPI, DAC, I²S, SAI, DCMI, LTDC, DSI, DMA2D, CRYP, HASH, RNG

Пары с цифрой 1 во втором разряде номера (STM32F415, F417, F437, F439, F479) повторяют свою пару с цифрой 0 и добавляют аппаратную криптографию CRYP и HASH. У каждой линейки свой reference manual: STM32F405/415, F407/417, F427/437 и F429/439 описывает RM0090, остальные — отдельные документы (список — в источниках).

Выводы STM32F4: мультиплексор альтернативных функций

У каждой линии порта STM32F4 свои поля в нескольких регистрах (RM0090, раздел о GPIO): MODER выбирает режим (вход, выход, альтернативная функция, аналоговый), OTYPER — двухтактный выход или открытый сток, OSPEEDR — крутизну фронтов, PUPDR — подтяжку. Если выбран режим альтернативной функции, номер функции AF0–AF15 берётся из регистра GPIOx_AFRL (линии 0–7) или GPIOx_AFRH (линии 8–15).

Поэтому один и тот же сигнал периферии часто доступен на нескольких выводах с разными номерами AF, и наоборот, на одном выводе — до шестнадцати функций. На страницах атласа у каждого сигнала указан номер AF, а кнопки над схемой корпуса подсвечивают выводы выбранной периферии. Аналоговые входы АЦП, выводы кварцевых генераторов и пробуждения номера AF не имеют: они подключаются настройкой самой периферии. Сравнение с ремапом у STM32F1 — на странице раздела STM32.

Все STM32F4 по корпусам

STM32F401 — Cortex-M4, до 84 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F401CB, STM32F401CCUFQFPN48128 КБ / 256 КБ64 КБ36
STM32F401CB, STM32F401CCWLCSP49128 КБ / 256 КБ64 КБ36
STM32F401CCWLCSP49256 КБ64 КБ36
STM32F401CD, STM32F401CEUFQFPN48384 КБ / 512 КБ96 КБ36
STM32F401CD, STM32F401CEWLCSP49384 КБ / 512 КБ96 КБ36
STM32F401RB, STM32F401RCLQFP64128 КБ / 256 КБ64 КБ50
STM32F401RD, STM32F401RELQFP64384 КБ / 512 КБ96 КБ50
STM32F401VB, STM32F401VCUFBGA100128 КБ / 256 КБ64 КБ81
STM32F401VB, STM32F401VCLQFP100128 КБ / 256 КБ64 КБ81
STM32F401VD, STM32F401VEUFBGA100384 КБ / 512 КБ96 КБ81
STM32F401VD, STM32F401VELQFP100384 КБ / 512 КБ96 КБ81

STM32F405/415 — Cortex-M4, до 168 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F405OE, STM32F405OGWLCSP90512 КБ / 1 МБ128 КБ72
STM32F405RGLQFP641 МБ128 КБ51
STM32F405VGLQFP1001 МБ128 КБ82
STM32F405ZGLQFP1441 МБ128 КБ114
STM32F415OGWLCSP901 МБ128 КБ72
STM32F415RGLQFP641 МБ128 КБ51
STM32F415VGLQFP1001 МБ128 КБ82
STM32F415ZGLQFP1441 МБ128 КБ114

STM32F407/417 — Cortex-M4, до 168 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F407IE, STM32F407IGUFBGA176512 КБ / 1 МБ128 КБ140
STM32F407IE, STM32F407IGLQFP176512 КБ / 1 МБ128 КБ140
STM32F407VE, STM32F407VGLQFP100512 КБ / 1 МБ128 КБ82
STM32F407ZE, STM32F407ZGLQFP144512 КБ / 1 МБ128 КБ114
STM32F417IE, STM32F417IGUFBGA176512 КБ / 1 МБ128 КБ140
STM32F417IE, STM32F417IGLQFP176512 КБ / 1 МБ128 КБ140
STM32F417VE, STM32F417VGLQFP100512 КБ / 1 МБ128 КБ82
STM32F417ZE, STM32F417ZGLQFP144512 КБ / 1 МБ128 КБ114

STM32F410 — Cortex-M4, до 100 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F410C8, STM32F410CBLQFP4864 КБ / 128 КБ32 КБ35
STM32F410C8, STM32F410CBUFQFPN4864 КБ / 128 КБ32 КБ36
STM32F410R8, STM32F410RBUFBGA6464 КБ / 128 КБ32 КБ50
STM32F410R8, STM32F410RBLQFP6464 КБ / 128 КБ32 КБ50
STM32F410T8, STM32F410TBWLCSP3664 КБ / 128 КБ32 КБ23

STM32F411 — Cortex-M4, до 100 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F411CC, STM32F411CEUFQFPN48256 КБ / 512 КБ128 КБ36
STM32F411CC, STM32F411CEWLCSP49256 КБ / 512 КБ128 КБ36
STM32F411RC, STM32F411RELQFP64256 КБ / 512 КБ128 КБ50
STM32F411VC, STM32F411VEUFBGA100256 КБ / 512 КБ128 КБ81
STM32F411VC, STM32F411VELQFP100256 КБ / 512 КБ128 КБ81

STM32F412 — Cortex-M4, до 100 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F412CE, STM32F412CGUFQFPN48512 КБ / 1 МБ256 КБ36
STM32F412RE, STM32F412RGLQFP64512 КБ / 1 МБ256 КБ50
STM32F412REYx, STM32F412RGYxWLCSP64512 КБ / 1 МБ256 КБ50
STM32F412REYxP, STM32F412RGYxPWLCSP64512 КБ / 1 МБ256 КБ50
STM32F412VE, STM32F412VGUFBGA100512 КБ / 1 МБ256 КБ81
STM32F412VE, STM32F412VGLQFP100512 КБ / 1 МБ256 КБ81
STM32F412ZE, STM32F412ZGUFBGA144512 КБ / 1 МБ256 КБ114
STM32F412ZE, STM32F412ZGLQFP144512 КБ / 1 МБ256 КБ114

STM32F413/423 — Cortex-M4, до 100 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F413CG, STM32F413CHUFQFPN481 МБ / 1,5 МБ320 КБ36
STM32F413MG, STM32F413MHWLCSP811 МБ / 1,5 МБ320 КБ60
STM32F413RG, STM32F413RHLQFP641 МБ / 1,5 МБ320 КБ50
STM32F413VG, STM32F413VHUFBGA1001 МБ / 1,5 МБ320 КБ81
STM32F413VG, STM32F413VHLQFP1001 МБ / 1,5 МБ320 КБ81
STM32F413ZG, STM32F413ZHUFBGA1441 МБ / 1,5 МБ320 КБ114
STM32F413ZG, STM32F413ZHLQFP1441 МБ / 1,5 МБ320 КБ114
STM32F423CHUFQFPN481,5 МБ320 КБ36
STM32F423MHWLCSP811,5 МБ320 КБ60
STM32F423RHLQFP641,5 МБ320 КБ50
STM32F423VHUFBGA1001,5 МБ320 КБ81
STM32F423VHLQFP1001,5 МБ320 КБ81
STM32F423ZHUFBGA1441,5 МБ320 КБ114
STM32F423ZHLQFP1441,5 МБ320 КБ114

STM32F427/437 — Cortex-M4, до 180 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F427AG, STM32F427AIUFBGA1691 МБ / 2 МБ192 КБ130
STM32F427IG, STM32F427IIUFBGA1761 МБ / 2 МБ192 КБ140
STM32F427IG, STM32F427IILQFP1761 МБ / 2 МБ192 КБ140
STM32F427VG, STM32F427VILQFP1001 МБ / 2 МБ192 КБ82
STM32F427ZG, STM32F427ZILQFP1441 МБ / 2 МБ192 КБ114
STM32F437AIUFBGA1692 МБ192 КБ130
STM32F437IG, STM32F437IIUFBGA1761 МБ / 2 МБ192 КБ140
STM32F437IG, STM32F437IILQFP1761 МБ / 2 МБ192 КБ140
STM32F437VG, STM32F437VILQFP1001 МБ / 2 МБ192 КБ82
STM32F437ZG, STM32F437ZILQFP1441 МБ / 2 МБ192 КБ114

STM32F429/439 — Cortex-M4, до 180 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F429AG, STM32F429AIUFBGA1691 МБ / 2 МБ192 КБ130
STM32F429BE, STM32F429BG, STM32F429BILQFP208512 КБ / 1 МБ / 2 МБ192 КБ168
STM32F429IE, STM32F429IG, STM32F429IIUFBGA176512 КБ / 1 МБ / 2 МБ192 КБ140
STM32F429IE, STM32F429IGLQFP176512 КБ / 1 МБ192 КБ140
STM32F429IILQFP1762 МБ192 КБ140
STM32F429NE, STM32F429NGTFBGA216512 КБ / 1 МБ192 КБ168
STM32F429NITFBGA2162 МБ192 КБ168
STM32F429VE, STM32F429VGLQFP100512 КБ / 1 МБ192 КБ82
STM32F429VILQFP1002 МБ192 КБ82
STM32F429ZE, STM32F429ZGLQFP144512 КБ / 1 МБ192 КБ114
STM32F429ZGWLCSP1431 МБ192 КБ114
STM32F429ZILQFP1442 МБ192 КБ114
STM32F429ZIWLCSP1432 МБ192 КБ114
STM32F439AIUFBGA1692 МБ192 КБ130
STM32F439BG, STM32F439BILQFP2081 МБ / 2 МБ192 КБ168
STM32F439IG, STM32F439IIUFBGA1761 МБ / 2 МБ192 КБ140
STM32F439IG, STM32F439IILQFP1761 МБ / 2 МБ192 КБ140
STM32F439NG, STM32F439NITFBGA2161 МБ / 2 МБ192 КБ168
STM32F439VG, STM32F439VILQFP1001 МБ / 2 МБ192 КБ82
STM32F439ZG, STM32F439ZILQFP1441 МБ / 2 МБ192 КБ114
STM32F439ZG, STM32F439ZIWLCSP1431 МБ / 2 МБ192 КБ114

STM32F446 — Cortex-M4, до 180 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F446MC, STM32F446MEWLCSP81256 КБ / 512 КБ128 КБ63
STM32F446RC, STM32F446RELQFP64256 КБ / 512 КБ128 КБ50
STM32F446VC, STM32F446VELQFP100256 КБ / 512 КБ128 КБ81
STM32F446ZCHx, STM32F446ZEHxUFBGA144256 КБ / 512 КБ128 КБ114
STM32F446ZCJx, STM32F446ZEJxUFBGA144256 КБ / 512 КБ128 КБ114
STM32F446ZC, STM32F446ZELQFP144256 КБ / 512 КБ128 КБ114

STM32F469/479 — Cortex-M4, до 180 МГц

МикроконтроллерКорпусФлеш-памятьОЗУЛиний ввода-вывода
STM32F469AE, STM32F469AG, STM32F469AIUFBGA169512 КБ / 1 МБ / 2 МБ320 КБ128
STM32F469AE, STM32F469AG, STM32F469AIWLCSP168512 КБ / 1 МБ / 2 МБ320 КБ128
STM32F469BE, STM32F469BG, STM32F469BILQFP208512 КБ / 1 МБ / 2 МБ320 КБ159
STM32F469IE, STM32F469IG, STM32F469IIUFBGA176512 КБ / 1 МБ / 2 МБ320 КБ131
STM32F469IE, STM32F469IGLQFP176512 КБ / 1 МБ320 КБ131
STM32F469IILQFP1762 МБ320 КБ131
STM32F469NE, STM32F469NGTFBGA216512 КБ / 1 МБ320 КБ159
STM32F469NITFBGA2162 МБ320 КБ159
STM32F469VE, STM32F469VGLQFP100512 КБ / 1 МБ320 КБ71
STM32F469VILQFP1002 МБ320 КБ71
STM32F469ZE, STM32F469ZGLQFP144512 КБ / 1 МБ320 КБ106
STM32F469ZILQFP1442 МБ320 КБ106
STM32F479AG, STM32F479AIUFBGA1691 МБ / 2 МБ320 КБ128
STM32F479AG, STM32F479AIWLCSP1681 МБ / 2 МБ320 КБ128
STM32F479BG, STM32F479BILQFP2081 МБ / 2 МБ320 КБ159
STM32F479IG, STM32F479IIUFBGA1761 МБ / 2 МБ320 КБ131
STM32F479IG, STM32F479IILQFP1761 МБ / 2 МБ320 КБ131
STM32F479NG, STM32F479NITFBGA2161 МБ / 2 МБ320 КБ159
STM32F479VG, STM32F479VILQFP1001 МБ / 2 МБ320 КБ71
STM32F479ZG, STM32F479ZILQFP1441 МБ / 2 МБ320 КБ106

Перед разводкой платы сверяйте выводы с даташитом своего исполнения: в нём указаны допустимые напряжения на выводах, выводы VCAP для внутреннего стабилизатора, токи и номиналы внешних компонентов.

Частые вопросы

Какие STM32F4 самые быстрые?

По данным ST частота до 180 МГц у линеек STM32F427/437, STM32F429/439, STM32F446 и STM32F469/479. У STM32F405/415 и STM32F407/417 — до 168 МГц, у STM32F410, F411, F412 и F413/423 — до 100 МГц, у STM32F401 — до 84 МГц.

Чем STM32F401 отличается от STM32F411?

Обе линейки — недорогие STM32F4 без CAN и Ethernet, с USB OTG Full Speed и SDIO, в похожих корпусах (их ставят на платы Black Pill). У STM32F411 частота до 100 МГц и 128 Кбайт ОЗУ, у STM32F401 — до 84 МГц и 64–96 Кбайт ОЗУ. Расположение выводов в одинаковых корпусах во многом совпадает: на страницах микроконтроллеров есть списки похожих по выводам и отличия.

У каких STM32F4 есть Ethernet и контроллер дисплея?

MAC Ethernet по данным ST есть у STM32F407/417, STM32F427/437, STM32F429/439 и STM32F469/479. Контроллер TFT-дисплея LTDC — у STM32F429/439 и STM32F469/479, а хост MIPI DSI — только у STM32F469/479. Наличие сигналов зависит и от корпуса: в маленьких корпусах части выводов периферии нет.

Чем STM32F405 отличается от STM32F415, а STM32F407 от STM32F417?

Линейки с цифрой 1 во втором разряде — STM32F415, F417, F437, F439, F479 — повторяют свою пару с цифрой 0 и добавляют криптографический процессор CRYP и блок хеширования HASH. Расположение выводов у пар одинаковое.

Как у STM32F4 выбрать альтернативную функцию вывода?

Линию переводят в режим альтернативной функции полем MODER (значение 10), а номер функции AF0–AF15 записывают в регистр GPIOx_AFRL для линий 0–7 или GPIOx_AFRH для линий 8–15. Номера AF для каждого сигнала есть в таблицах на страницах микроконтроллеров.