STM32F103: Особенности и руководство по программированию

Компания STMicroelectronics (ST) разработала чипы серии STM32F103 с архитектурой Cortex-M3. Эти чипы имеют основную частоту процессора 72 МГц и оснащены высокоточными модулями ADC, USART, CAN, USB, SDIO и другими. Серия подразделяется на три основные категории в зависимости от размера встроенной флэш-памяти: малая емкость (16K и 32K), средняя емкость (64K и 128K) и большая емкость (256K, 384K и 512K). В этой статье мы используем STM32F103ZET6 в качестве примера для представления характеристик, спецификаций, схемы и информации о применении этих микросхем.

Введение в STM32F103

STM32F103 — микроконтроллер (MCU), производимый компанией STMicroelectronics. Этот микроконтроллер принадлежит к семейству STM32, основанному на процессоре ARM Cortex-M. STM32F103 пользуется популярностью среди энтузиастов электроники, любителей и профессионалов благодаря низкому энергопотреблению, высокой производительности и богатому набору периферийных устройств. Этот микроконтроллер широко используется в различных приложениях, включая промышленную автоматизацию, робототехнику, автомобилестроение и бытовую электронику.

Например, STM32F103 может использоваться в станке с ЧПУ для управления его двигателями и другими периферийными устройствами или в системе «умный дом» для управления различными датчиками и исполнительными устройствами. Кроме того, этот микроконтроллер может использоваться в квадрокоптере для управления алгоритмами управления полетом и датчиками. STM32F103 — это универсальный и мощный микроконтроллер, который предлагает широкий спектр возможностей и функций для различных приложений.

Особенности STM32F103

До 17 таймеров:

  • До десяти 16-разрядных таймеров, каждый из которых имеет до 4 счетчиков I2C/OC/PWM и вход для квадратурного (инкрементального) энкодера.
  • 2×16-разрядные таймеры PWM для управления двигателем с генерацией мертвого времени и аварийной остановкой.
  • 2 сторожевых таймера (независимый и оконный)
  • Таймер SysTick: 24-разрядный счетчик
  • 2 16-разрядных базовых таймера для управления ЦАП

До 13 интерфейсов связи:

  • До 2 интерфейсов I2C (SMBus/PMBus)
  • До 5 USART (интерфейс ISO 7816, LIN, IrDA, управление модемом)
  • До 3 интерфейсов SPI (18 Мбит/с), 2 с мультиплексированным интерфейсом 12S
  • Интерфейс CAN (2.0B Active)
  • Интерфейс USB 2.0 полной скорости
  • Интерфейс SDIO
  • -Блок вычисления CRC, 96-битный уникальный идентификатор-корпус
    ECOPACK®

-Ядро: 32-разрядный процессор Arm® Cortex®-M3

  • Максимальная частота 72 МГц, 1,25 DMIPS/МГц (Dhrystone 2.1), производительность при доступе к памяти в 0 состояния ожидания.
  • Одноцикловое умножение и аппаратное деление.

-Память:

  • от 256 КБ до 512 КБ флэш-памяти
  • до 64 КБ SRAM. Гибкий контроллер статической памяти с 4 выборами микросхем. Поддерживает память Compact Flash, SRAM, PSRAM, NOR
    и NAND. -Параллельный интерфейс LCD, режимы 8080/6800.

-Часы, сброс и управление питанием:

  • 2,0 В до 3,6 В питание приложения и ввод-вывод, POR, PDR и программируемый детектор напряжения (PVD),
  • кварцевый генератор от 4 до 16 МГц, внутренний RC с заводской настройкой 8 МГц, откалиброванный внутренний RC 40 кГц, генератор 32 кГц для RTC с калибровкой.

-Низкое энергопотребление:

  • режимы сна, остановки и ожидания
  • VBAT для RTC и резервных регистров

-3×12-разрядные АЦП с разрешением 1 мкс (до 21 канала)

  • Диапазон преобразования: от 0 до 3,6 В
  • Возможность тройной выборки и удержания
  • Датчик температуры

-2×12-разрядные цифро-аналоговые
преобразователи-DMA: 12-канальный контроллер DMA

  • -Поддерживаемые периферийные устройства: таймер, АЦП, ЦАП, SDIO, I2S, SPI, 12C и USART

-Режим отладки

  • Serial Wire Debug (SWD) и интерфейс JTAG

-Встроенный макроблок трассировки Cortex®-M3
T-До 112 быстрых портов ввода/вывода-
51/80/112 портов ввода/вывода, все с возможностью сопоставления с 16 векторами внешних прерываний, почти все с толерантностью к 5 В

Технические характеристики STM32F103

Производитель: STMicroelectronics
Категория продукта: Микроконтроллеры ARM — MCU
Тип монтажа: SMD/SMT
Корпус: LQFP-144
Ядро: ARM Cortex M3 Размер
программной памяти: 512 КБ Ширина
шины данных: 32 бит Разрешение
АЦП: 12 бит
Максимальная тактовая частота: 72 МГц
Количество входов/выходов: 112 Размер
оперативной памяти данных: 64 КБ
Минимальная рабочая температура: -40 °C
Максимальная рабочая температура: +85 °C
Тип оперативной памяти данных: SRAM
Тип интерфейса: CAN, I2C, SPI, USART, USB
Количество каналов АЦП: 16
Количество таймеров/счетчиков: 8 таймеров
Высота: 1,4 мм
Длина: 20 мм
Ширина: 20 мм
Вес единицы: 1,290 г

Блок-схема STM32F103

STM32F103xF and STM32F103xG Block Diagram
STM32F103xF and STM32F103xG Block Diagram

Конфигурация выводов STM32F103

STM32F103 LQFP144 pinout
STM32F103 LQFP144 pinout

Источник питания STM32F103

STM32F103 Power Supply
STM32F103 Power Supply

Типичная схема STM32F103

STM32F103xx Typical connection diagram using the ADC
STM32F103xx Typical connection diagram using the ADC

Применение STM32F103

  • Приводы двигателей
  • Управление приложениями
  • Медицина
  • Портативные устройства
  • Периферийные устройства для компьютерных игр
  • GPS-платформы
  • Программируемые контроллеры (PLC)
  • Инверторы
  • Сканеры
  • Принтеры
  • Система сигнализации
  • Видеодомофон
  • Отопление и вентиляция
  • Система кондиционирования
  • Светодиодная панель Управление экраном

STM32f401 против STM32f103

Ниже приведена таблица, в которой сравниваются характеристики микроконтроллеров STM32F401 и STM32F103:

SpecificationSTM32F401STM32F103
ArchitectureARM Cortex-M4ARM Cortex-M3
Maximum Clock Speed84 MHz72 MHz
Flash Memory256 KBUp to 512 KB
SRAM64 KBUp to 64 KB
DMA Channels127
ADC Channels10Up to 16
Timers14Up to 15
USB1 x Full-speed1 x Full-speed
Operating Voltage1.7 - 3.6 V2.0 - 3.6 V
PackageLQFP64, LQFP100, LQFP144, UFBGA144LQFP64, LQFP100, LQFP144, UFBGA100, UFBGA144

В целом, STM32F401 имеет более совершенную архитектуру ARM Cortex-M4, которая поддерживает более продвинутую цифровую обработку сигналов и операции с плавающей запятой, а также более высокую максимальную тактовую частоту. Однако STM32F103 имеет больше флэш-памяти и поддерживает немного больше каналов АЦП и таймеров.

Поделиться:

Прокрутить вверх

Instant Quote