Микроконтроллеры семейства STM8
2020-11-19
Все статьи →
Компания STMicroelectronics выпускает 2 основные линейки микроконтроллеров (далее МК): 8ми разрядные STM8 – https://www.st.com/content/st_com/en/products/microcontrollers-microprocessors/stm8-8-bit-mcus.html и 32х разрядные STM32 (на ядре Cortex).МК семейства STM8 обладают меньшей производительностью чем STM32, но при этом обладают следующими особенностями:
- МК STM8 имеют более широкий диапазон питающего напряжения 1,65 В – 5,5 В против 1,62 В – 3,6 В у STM32, что позволяет напрямую (без использования делителей напряжения) работать с аналоговой периферией, запитанной от 5 В, позволяет обойтись без дополнительного стабилизатора напряжения при питании от 5 В источников или литиевых аккумуляторов (3,6 В – 4,2 В), также проще управлять затворами полевых транзисторов при питании от 5 В, чем при питании от 3,3 В.
-
У МК STM8 корпуса с большим шагом выводов: LQFP80 – 0,65 мм, LQFP32 – 0,8 мм, TSSOP20 – 0,65 мм или SO8 – 1,27 мм, что упрощает их освоение для начинающих.
- Для МК STM8 периферия намного проще для освоения, чем у STM32, где каждый периферийный блок содержит 10-20 регистров для инициализации.
- Микроконтроллеры STM8 построены по гарвардской архитектуре с 8ми битным процессорным ядром и 32х битной шиной программ, которая позволяет выполнять большинство инструкций за 1 такт. Всего поддерживается 80 инструкций, большая часть которых имеет размер 2 байта.
- МК STM8 имеют трехступенчатый конвейер. Система команд кроме обычных операций (сложений, вычитание, сдвиг и так далее), включает операции умножения (8 х 8 бит) и деления (16/8 бит и 16/16 бит). МК имеют 24х битный счетчик команд, который обеспечивает доступ к адресному пространству 16 Мбайт и 16ти битный указатель стека, который обеспечивает прямой доступ к стеку размером до 16 кбайт. Некоторые модели STM8 имеют контроллер прямого доступа к памяти (DMA).
МК STM-8 делятся на 4 основных семейства
- STM8S – микроконтроллеры общего назначения – https://www. st.com/en/microcontrollers-microprocessors/stm8s-series.html
- STM8L – малопотребляющие микроконтроллеры общего назначения – https://www.st.com/en/microcontrollers-microprocessors/stm8l-series.html
- STM8AF – микроконтроллеры для автомобильных приложений – https://www.st.com/en/microcontrollers-microprocessors/stm8af-series.html
- STM8AL – малопотребляющие микроконтроллеры для автомобильных приложений – https://www.st.com/en/microcontrollers-microprocessors/stm8al-series.html
МК STM8S относятся к базовому семейству STM8 и включают более 40 моделей МК. Тактовая частота до 24 МГц, производительность до 20 MIPS. Объём флеш памяти составляет до 128 кБ, оперативной памяти до 6 кБ, энергонезависимой памяти EEPROM до 2 кБ. Среди особенностей МК: встроенный высокоточный RC генератор с частотой 16 МГц. Коммуникационные интерфейсы включают UART/USART, SPI, I2C, CAN. Аналоговая часть представлена 10ти битным аналогово-цифровым преобразователем (далее АЦП) с временем преобразования 2,33 мкс.
МК STM8S включают в себя 4 отдельных линейки – STM8S0xx, STM8S1xx, STM8S2xx и STM8S9xx, отличающихся объёмами памяти, тактовой частотой, периферийными модулями и корпусным исполнением. МК STM8S0xx имеют ресурс флеш памяти 100 циклов перезаписи в отличие от 10000 циклов для остальных серий.
МК STM8L относятся к семейству STM8 с пониженным потреблением энергии и предназначены для систем с автономным питанием, различные системы сбора информации от датчиков, автономные счётчики и т.п. МК имеют режимы пониженного потребления энергии и способны работать при напряжении от 1,65 В. МК STM8L в отличие от STM8S имеют расширенный набор периферийных модулей, есть аналоговые компараторы, 12ти битный цифро-аналоговый преобразователь (ЦАП), встроенный АЦП имеет разрядность 12 бит, есть встроенный контроллер управления жидкокристаллическим индикатором (далее ЖК). Диапазон допустимой рабочей температуры до 125ºС.
МК STM8L включают в себя 4 отдельных линейки – STM8L0xx, STM8L101, STMLS151/152 и STM8L162, отличающихся объёмами памяти, тактовой частотой, периферийными модулями и корпусным исполнением.
Семейства STM8AF и STM8AL предназначены для применения в автомобильных приложениях (automotive) по надёжности и допустимому диапазону допустимой рабочей температуры до 150ºС. Также МК STM8AF и STM8AL имеют сертификат AEQ-Q100.
У МК STM8AF тактовая частота 16/24 МГц, производительность до 20 MIPS. Объём флеш памяти составляет до 128 кБ, оперативной памяти до 6 кБ, энергонезависимой памяти EEPROM до 2 кБ. Корпуса – TSSOP20, LQFP32, QFN32, LQFP48, LQFP64, LQFP80. Встроенная периферия, как и у семейства STM8Sxx: встроенный высокоточный RC генератор с частотой 16 МГц, коммуникационные интерфейсы UART/USART, SPI, I2C, CAN, 10ти битный АЦП с временем преобразования 2,33 мкс, таймеры – 8/16 бит, в том числе для ШИМ управления с тремя парами комплиментарных выходов для управления двигателями с поддержкой управления мёртвого времени (dead time) между переключениями; сторожевой независимый таймер (IWDG), оконный сторожевой таймер (WWDG), таймер для управления зуммером (Beeper), часы реального времени (RTC), таймер автопробуждения (AWU).
МК STM8AF включают более 30 различных наименований МК, относящихся к 3м группам – STM8AF52, STM8AF62 и STM8AF63 отличающихся объёмами памяти, тактовой частотой, периферийными модулями и корпусным исполнением.
МК STM8AL имеют такие же характеристики и периферийные модули, как и МК STM8Lxx, но имеют допустимую рабочую температуру до 150ºС, как и у МК STM8AF.
МК STM8T52/L53 – https://www.
Программные средства разработки и отладки STM8
Для работы с МК STM8 существуют следующие программные средства:
- ST MCU Finder – кроссплатформенная утилита для быстрого выбора оптимальных микроконтроллеров STM8 и STM32
- STM8CubeMX – программа для выбора оптимальных микроконтроллеров STM8, проверки их конфигурации и расчета уровня потребления
- ST Visual Develop – интегрированная среда разработки ПО для STM8
- ST Visual Programmer – утилита для программирования/считывания/настройки микроконтроллеров STM8
- фирменные библиотеки и примеры для STM8 производства компании STMicroelectronics
Дла программирования и отладки предназначены ST-Link V2 stlink mini – https://arduino.ua/prod920-programmator-st-link-v2-stlink-mini.
Есть также фирменные программаторы/отладчики немного бОльшего размера без гальваноразвязки и с гальваноразвязкой.
Для быстрого освоения МК STM8 существуют отладочные различные отладочные платы – в частности, семейств Discovery и Nucleo:
Отладочные платы STM8S Discovery
Отладочная плата Evaluation Board с различными периферийными модулями.
Отладочные платы STM8 Nucleo
Также есть недорогие платы для разработчиков с МК STM8S003F3P6 -https://arduino.ua/prod3766-plata-razrabotchika-stm8s003f3p6и с МК STM8S103F3P6 -https://arduino.ua/prod1967-plata-razrabotchika-stm8s103f3p6.Эти платы включают в себя МК с 20 выводами, которые печатными проводниками соединены с контактными площадками под запайку соединителей типа PLS с шагом 2,54 мм. Для питания схемы предназначен разъём микро USB, для отладки и программирования 4х пиновый разъём SWIM.
Компания STMicro представляет первые платы STM8 Nucleo, поддерживающие STM8 Arduino IDE — CNXSoft- новости Android-приставок и встраиваемых систем
Опубликовано Автор: Danil
В то время как платы для разработки, основанные на базе 8-битного микроконтроллера STMicro STM8 существую уже несколько лет, например, такие как “плата за один доллар” или официальные платы STM8 Discovery, компания STMicro пока еще не выпускала платы Nucleo, основанные на базе данного микроконтроллера. И теперь компания представила не одну, а сразу две такие платы, которые называются NUCLEO-8L152R8 и NUCLEO-8S208RB.
Обе платы будут выглядеть одинаково и будет отличаться только микроконтроллером. Первая плата оснащена MCU @ 16 МГц с флэш-памятью 64 Кб и 4 Кб SRAM, в то время как вторая плата оснащена MCU @ 24 МГц с флэш-памятью 128 Кб, и 6 Кб SRAM.Технические характеристики плат STM8 Nucleo:
- MCU
- NUCLEO-8L152R8 – STMicro STM8L152R8T6 8-бит MCU @ 16 МГц с флэш-памятью 64 Кб, 2 Кб EEPROM, 4 Кб SRAM
- NUCLEO-8S208RB – STMicro STM8S208RBT6 8-бит MCU @ 24 МГц с флэш-памятью 128 Кб, 2 Кб EEPROM, 6 Кб SRAM
- 4x светодиода – USB соединение (LD4), 5 В STLINK (LD3), пользовательский (LD2), питание (LD1)
- 2 кнопки – пользовательская и сброс
- 32.768 кГц LSE кварцевый генератор только для NUCLEO-8L152R8
- USB – 1x микро USB порт, действующий как виртуальный COM порт, запоминающее устройство, порт отладки
- Разъемы расширения
- Разъемы Arduino Uno V3
- Контактные разъемы расширения ST morpho для полного доступа ко всем входам / выходам STM8
- Отладка – Встроенный в плату ST-LINK / V2-1 отладчик и программатор вместе с SWIM разъемом, микро USB порт
- Питание – USB VBUS или внешний источник (3. 3 В, 5 В, от 7 до 12 В)
- Точка доступа управления питанием
Компания предоставляет бесплатные библиотеки программного обеспечения STM8, включая различные примеры ПО, а сами платы поддерживают различные интегрированные среды разработки (IDE) включая STMicroelectronics, бесплатный STVD-STM8 (используя Cosmic toolchain, который позволяет создавать C ++), IAR и Cosmic, бесплатный IDEA.
Разъемы Arduino и ST morpho позволяют разработчикам подключать готовые дополнительные платы, такие как ЖК-модули, расширение NFC для бесконтактных карт и так далее. Но помимо аппаратной совместимости с Arduino, вы также теперь можете запрограммировать плату в Arduino IDE, поскольку недавно была добавлена поддержка ядра STM8 для Arduino с открытым исходным кодом и все это вы можете найти на Github.
Обе платы продаются по цене $10.32. Вы сможете найти более подробную информацию, включая документацию, инструменты и ссылки на покупку на соответствующих страницах продукта: NUCLEO-8L152R8 и NUCLEO-8S208RB.
Выражаем свою благодарность источнику с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.
РубрикиSTMicro STM8, Аппаратные средстваМеткиArduino, STM8, STMicro, Плата для разработкиВведение — Sduino
Портирование наиболее важных функций API Arduino на STM8S.
Через несколько минут вы готовы скомпилировать и загрузить свой первый Проект на основе STM8S, сохраняя при этом гибкость использования ST SPL функции.
Все, что вам нужно для начала, — это простая коммутационная плата STM8S103F на 70 центов и программатор флэш-памяти, совместимый с ST-Link V2, за 2,50 доллара. Три доски и один флэш-программатор вместе доступны менее чем за пять долларов. включая доставку по алиэкспресс.
Удивительно!
Использование
Рекомендуемый способ установки теперь — Arduino Board Manager:
- Откройте вкладку «Настройки» диалогового окна «Настройки»
- Войти
https://github. com/tenbaht/sduino/raw/master/package_sduino_stm8_index.json
в качестве менеджера дополнительных плат URL - Выберите sduino в списке Диспетчер плат (Инструменты->Плата:…->Диспетчер плат)
- Нажмите Установить
Дождитесь окончания загрузки и можете мигать:
- Откройте список досок в Tools->Board:…
- Вы должны найти новую запись «Платы STM8S».
- Выберите STM8S103F3 Breakout Board из списка
- Откройте стандартный пример Blink из File->Examples->01. Основы->Мигнуть
- Скомпилируйте его, нажав «Подтвердить»
Легко, не правда ли?
Для загрузки скомпилированного скетча на подключенную плату необходимо установить флешку.
Включенные библиотеки
Некоторые библиотеки Arduino уже перенесены на C-синтаксис. В результате API все еще очень близок к версии C++, и портирование существующего приложения не трудно. Ознакомьтесь с рекомендациями по миграции API для подробности.
Связь
- SPI: реальный аппаратный SPI до 10 МГц.
- I2C: порт основной библиотеки I2C от Wayne Truchsess
- HardwareSerial: стандартный последовательный интерфейс.
Дисплеи
- LiquidCrystal: текстовые ЖК-дисплеи на базе HD44780
- PCD8544: Монохромный графический ЖК-дисплей на базе PCD8544. контроллер, как дисплей Nokia 5110. Только режим SPI.
- Mini_SSD1306: монохромные OLED-дисплеи на базе SSD1306. с разрешением 128×64 пикселей. Только поддержка I2C.
Управление двигателем
- Шаговый двигатель: Шаговые двигатели с 2, 4 или 5 фазами.
- Сервопривод: до 12 сервоприводов с использованием только 1 таймера.
Поддерживаемое оборудование
Платы за один доллар: простой прорыв STM8S103 плата построена на процессоре STM8S103F3P6. Стоит меньше доллара. ЦП имеет внутренний генератор 16 МГц, флэш-память 8 КБ, ОЗУ 1 КБ, 640 байт ЭСППЗУ. Он включает в себя UART, SPI, I2C, PWM, 10-битный АЦП, 3 таймера и до 14 контактов ввода-вывода — очень похоже на Atmel ATmega8.
Wifi-платы ESP14 очень похожи. Они есть в основном вариант этих плат с добавленным Wifi-модулем ESP-01. Почти все программы должны работать и на этих китайских жемчужинах с поддержкой Wi-Fi.
Платы STM8S105Discovery очень похожи на Arduino Uno с процессором ATmega328. Поддержка б/у STM8S105 Процессор все еще довольно свежий, но теперь он должен работать.
sduino Uno похож на Плата STM8S105Discovery, построенная в том же форм-факторе, что и Arduino. Uno и с использованием очень похожего сопоставления выводов. Эти доски еще не (пока?) коммерчески доступен, но все файлы дизайна можно использовать бесплатно.
Китайские гаджеты на базе STM8S003, такие как ESP14 Wifi-плата, термостат W1209 контроллер, беспроводной трансивер HC12 модуль и многие другие.
Ограничения
SDCC не поддерживает C++. Некоторая магия препроцессора применяется, чтобы закрыть разрыв между синтаксисом C и C++ насколько это возможно, но это не 100% совместимая сменная замена для полных сред Arduino, таких как AVR или СТМ32. См. Ограничения и инструкции по миграции для получения подробной информации.
Поддерживаемые системы
- 64-разрядная версия Linux: протестировано на Ubuntu 20.04, 18.04, 16.04
- 32-разрядная версия Linux: протестировано на Ubuntu 18.04, 16.04
- Windows: протестировано на Windows 7. Sduino может работать на XP (не тестировалось), но драйвер ST-Link/V2 больше не доступен для XP.
- MacOS: протестировано в версии 10.12 (Sierra)
- Raspian/Raspberry Pi: не проверено. Потребуется ручная установка.
ST STM8 — документация PlatformIO v6.1
- Реестр
https://registry.platformio.org/platforms/platformio/ststm8
- Конфигурация
платформа =
ststm8
STM8 — семейство 8-разрядных микроконтроллеров от STMicroelectronics, представляющее собой расширенный вариант архитектуры микроконтроллера ST7. Микроконтроллеры STM8 особенно дешевы для полнофункциональных 8-битных микроконтроллеров.
Для получения более подробной информации посетите сайт поставщика.
Содержание
Примеры
Отладка
Стабильная и вышестоящая версии
Пакеты
Каркасы
Доски
Примеры перечислены из репозитория платформы разработки ST STM8:
spl-uart-loopback
мигание
arduino-fade-all-pin
собственный мигающий
spl-uart-simple-printf
spl-flash
ардуино-внутренняя библиотека
ардуино-пинг-hc04
Отладка — решение «в один клик» для отладки с нулевой конфигурацией.
Инструменты и датчики отладки
Встроенные средства отладки
Внешние средства отладки
Инструменты и отладочные зонды
Поддерживаемые средства отладки перечислены в столбце «Отладка». Для более подробной информации информацию, пожалуйста, пролистайте таблицу по горизонтали. Вы можете переключаться между инструментами отладки и зондами отладки, используя Опция debug_tool в «platformio.ini» (файл конфигурации проекта).
Предупреждение
В зависимости от вашей системы вам потребуется установить драйверы средства отладки. Нажмите на совместимый инструмент отладки ниже, чтобы получить дальнейшие инструкции.
Встроенные средства отладки
Платы, перечисленные ниже, имеют встроенный датчик отладки и ГОТОВЫ для отладки! Вам не нужно использовать/покупать внешний отладочный зонд.
Имя | Блок управления микроконтроллером | Частота | Вспышка | ОЗУ |
---|---|---|---|---|
НУКЛЕО-8S207K8 | СТМ8С207К8Т6 | 16 МГц | 64 КБ | 6КБ |
НУКЛЕО-8С208РБ | СТМ8С208РБТ6 | 16 МГц | 128 КБ | 6КБ |
ST STM8S-DISCOVERY | СТМ8С105К6Т6 | 16 МГц | 32 КБ | 2 КБ |
Внешние средства отладки
Платы, перечисленные ниже, совместимы с отладкой, но ЗАВИСЯТ ОТ внешний отладочный зонд. Они НЕ ГОТОВЫ к отладке. Пожалуйста, нажмите на название доски для получения более подробной информации.
Имя | Блок управления микроконтроллером | Частота | Вспышка | ОЗУ |
---|---|---|---|---|
чип ST STM8S003F3 | СТМ8С003Ф3П6 | 16 МГц | 8 КБ | 1 КБ |
ST STM8S103F3 Разделительная плата | СТМ8С103Ф3П6 | 16 МГц | 8 КБ | 1 КБ |
ST STM8S105K4T6 Разделительная плата | СТМ8С105К4Т6 | 16 МГц | 16КБ | 2 КБ |
сдуино МБ (STM8S208MBT6B) | СТМ8С208МБТ6 | 16 МГц | 128 КБ | 6КБ |
сдуино УНО (STM8S105K6) | СТМ8С105К6Т6 | 16 МГц | 32 КБ | 2 КБ |
Вы можете переключаться между стабильными выпусками платформы разработки ST STM8 и последней исходной версии с использованием платформу в «platformio. ini» (файл конфигурации проекта), как описано ниже.
Стабильный
; Последняя стабильная версия [env:latest_stable] платформа = ststm8 доска = ... ; Пользовательская стабильная версия [окружение: custom_stable] платформа = ststm8@xyz доска = ...
Восходящий поток
[env:upstream_develop] платформа = https://github.com/platformio/platform-ststm8.git доска = ...
Имя | Описание |
---|---|
фреймворк-ардуиностм8 | API-интерфейс программирования, аналогичный Arduino, для микроконтроллеров STM8 |
каркас-ststm8spl | Стандартная периферийная библиотека для микроконтроллеров ST STM8S/A |
инструмент-openocd | Открытие встроенного отладчика. Бесплатная и открытая встроенная отладка, внутрисистемное программирование и тестирование пограничного сканирования |
инструмент-stm8binutils | Набор инструментов STM8 с отладчиком GDB |
инструмент-stm8flash | stm8flash — это приложение для программирования устройств stm8 с помощью SWIM/stlinkv(1,2). |
инструмент-stm8gal | stm8gal — приложение для программирования или считывания памяти STM8 с помощью встроенного загрузчика ПЗУ (BSL) через интерфейс UART или SPI |
набор инструментов-sdcc | Набор компиляторов Small Device C |
Предупреждение
Пользователи Linux :
Установить правила «udev» 99-platformio-udev.rules
Пользователи Raspberry Pi, прочитайте эту статью Включите последовательный порт на Raspberry Pi.
Пользователи Windows:
Убедитесь, что у вас правильно установлен USB-драйвер с платы. производитель
Имя | Описание |
---|---|
Ардуино | Платформа на основе Arduino Wiring позволяет писать кроссплатформенное программное обеспечение для управления устройствами, подключенными к широкому спектру плат Arduino, для создания всех видов творческого кода, интерактивных объектов, пространств или физических ощущений |
Стандартная периферийная библиотека | Стандартная библиотека периферийных устройств ST предоставляет набор функций для работы с периферийными устройствами семейства микроконтроллеров STM32. |