Итак, продолжая тему недорогих микроконтроллеров STM, встречающихся в составе дешевых платок для разработки на Aliexpress и в его окрестностях.
Сегодня рассмотрим имеющиеся на борту возможности/интерфейсы и прочее.
Список стырен отсюда и преведен. Выделено жирным наиболее интересное, особенно в сравнении с платами на Arduino. Он актуален для всего семейства, отличия будут для разных корпусов конкретных микросхем, добавлю пометки в нужных местах.
- Ядро - ARM® 32-битное Cortex® -M3
- Максимальная тактовая частота 72 МГц, производительность 1.25 DMIPS/MHz (Dhrystone 2.1) при 0 задержках доступа к памяти
- Умножение за 1 такт и аппаратное деление
- Память:
- 64 килобайта (F103c8) или 128 килобайт (F103cB) флэш-памяти
- 20 килобайт ОЗУ
- Тактирование, питание, распределение тактирования
- 2.0 to 3.6 В для питания и портов ввода-вывода
- Программируемый детектор напряжений питания (то есть внешние схемы сброса не нужны)
- Кварцевый осциллятор от 4 до 16 МГц
- Встроенный RC-генератор на 8 МГц, калиброванный на заводе
- Встроенный RC-генератор на 40 kHz
- PLL для получения тактовой частоты ядра
- Осциллятор на 32 кГц для часов реального времени с возможностью калибровки
- Низкое энергопотребление
- Режимы Sleep (сон), Stop (останов) и Standby (ожидание)
- Отдельное питание VBAT для часов реального времени и регистров хранения настроек
- 2 x 12-битрых, 1 мкс АЦП (коммутацией обслуживается до 16 каналов, в рассматриваемых микроконтроллерах до 10):
- Диапазон конвертирования: от 0 до 3.6 В
- Возможность двойного сэмплирования и удержания (то есть одновременно 2 канала в одно и то же время)
- Встроенный сенсор температуры
- DMA - контроллер прямого доступа к памяти, позволяет разгрузить процессор
- 7-канальный контроллер DMA
- Поддерживаемая периферия: таймеры, АЦП, интерфейсы SPI, I2C и USART
- До 80 скоростных портов ввода-вывода
- 26/37/51/80 портов (в зависимости от корпуса микросхемы, 37 портов для F103C), с возможностью подключения к 16 внешним векторам прерывания, почти все выдерживают сигналы до 5 В (вне зависимости от напряжения питания)
- Отладка
- Интрефейсы Serial wire debug (SWD) и JTAG
- 7 таймеров
- Три 16-бит таймера, каждый умеет до 4 IC/OC/PWM или счет импульсов и вход для подключения квадратурныого (инкрементального) энкодера
- 16-бит, специализировнный тамер с PWM для управления двигателями с dead-time generation и аварийным остановом
- 2 watchdog таймера (Independent and Window)
- SysTick таймер обратного счета, 24-битный
- До 9 коммуникационных интерфейсов (в зависимости от корпуса микросхемы)
- До двух (два для рассматриваемых) I2C интерфейсов (SMBus/PMBus)
- До трех USART (последовательный порт с TTL уровнями, три для рассматриваемых) совместим с ISO 7816 интерфейсом, LIN, возможность работы с IrDA, модемом)
- До двух интерфейсов SPI (18 мегабит/с, два для рассматриваемого)
- Интерфейс CAN (2.0B Active)
- Интерфейс USB 2.0 full-speed
- Модуль расчета CRC , 96-bit unique ID
То есть за не очень большую разницу в цене со всякими ардуинами мы получаем мощный проц со всякими бла-бла-бла... На самом деле нас инетересует применение в устройствах. Причем в полезных устройствах, возможно даже для страйкбола.
В случае страйкбола мы имеем:
- высокую тактовую, плюс настоящий RISC, да еще и с аппаратным делением, то есть можно наворачивать всякую сложную логику;
- достаточно памяти, чтобы эти всякие сложные штуки накручивать;
- два раздельных АЦП по 12 бит, то есть можно всякий контроль навертеть (питания, положения потенциометров и прочего);
- много таймеров, можно организовывать:
- счет событий;
- подключение крутилок (энкодеров);
- управление двигателями;
- периодический опрос или еще что-то, например планировщик задач;
- куча коммуникационных интерфейсов, в том числе:
- до трех USART, а они по опыту частенько нужны, та как удобны для сопряжения нескольких устройств, работающих в связке;
- аппаратный USB 2.0, то есть можно подключать USB устройства (флешки, клавиатуры, мышки и прочее) или эмулировать USB последовательный порт (очень удобно конфигурировать устройство через текстовую консоль или с помощью приложения на компьютере).
0 Комментарии