Низкое энергопотребление — низкая цена! Микроконтроллеры STMicroelectronics для устройств с батарейным питанием

№ 10’2013
Малопотребляющие контроллеры семейств STM32L и STM8L компании STMicroelectronics зарекомендовали себя с наилучшей стороны при создании высокоэффективных устройств с малым потреблением. Новые бюджетные Value Line линейки STM8L05 и STM32L100 имеют рекордно низкие цены и, сохраняя преимущества базовых семейств, позволяют значительно сократить стоимость конечного изделия.

Введение

Экономичность электроприборов — одно из основных потребительских качеств электроники. Говоря о малом потреблении, мы в первую очередь имеем в виду приборы с батарейным питанием. Но не стоит забывать, что экономичное потребление необходимо не только системам с батарейным питанием, но и любой современной технике, так как повышенное потребление в конечном итоге сказывается на цене эксплуатации. Рост тарифов вынуждает потребителей выбирать наиболее экономичные устройства.

В целом рынок электроники неоднороден по своим требованиям к производительности и экономичности. Так, например, для сотовых телефонов, планшетов и ноутбуков, помимо потребления, важна и высокая производительность процессора.

Однако между производительностью и потреблением есть противоречие. Современные контроллеры и процессоры представляют собой цифровые микросхемы, выполненные по КМОП-технологии. Для таких устройств можно выделить два типа потребляемой мощности: статическую и динамическую. Динамическая мощность вычисляется по формуле:

где С — нагрузочная емкость КМОП, V — напряжение питания, f — рабочая частота. Из этой формулы следует, что чем выше рабочая частота (выше производительность), тем больше динамическая потребляемая мощность. Таким образом, при выборе контроллера очень важно найти компромисс между производительностью и экономичностью.

Существует огромное количество областей, требующих в первую очередь высокой экономичности. Например:

  • Медицина: глюкометры, инсулиновые помпы, мониторы давления/пульса/крови, измерители холестерина и др.
  • Счетчики газа, давления, воды, температуры и др.
  • Измерительные приборы: мультиметры, RLC-метры и др.
  • Сигнализация: центральные модули, датчики задымления/движения/вскрытия, электронные клапаны водоснабжения, электронные замки, радиобрелоки сигнализации и др.
  • Промышленная автоматизация: проводные и беспроводные датчики, приводы, драйверы и контроллеры исполнительных механизмов и др.
  • Развлечения: радиоуправляемые модели, джойстики и манипуляторы, игрушки и др.
  • Домашние приборы: часы, беспроводные телефоны, звонки и др.

Тщательно проанализировав рынок, фирма STMicroelectronics разработала стратегию развития микроконтроллеров с низким потреблением. В рамках этой стратегии созданы два семейства: 8-битное STM8L и 32-битное STM32L. Совместно они позволяют закрыть большую область приложений (рис. 1). Семейства практически не конкурируют друг с другом: STM8L применяется в наиболее требовательных к потреблению приборах, в то время как STM32L используется в приборах с более высокой производительностью. Широчайший выбор контроллеров с различной производительностью, периферией и потреблением позволяет найти контроллер с наилучшим сочетанием этих качеств.

Позиционирование экономичных контроллеров STMicroelectronics

Рис. 1. Позиционирование экономичных контроллеров STMicroelectronics

При реализации обоих семейств использовались схожие принципы снижения потребляемой мощности:

  • пониженное напряжение питания — от 1,8 до 3,6 В (в ряде случаев — от 1,65 В);
  • гибкое и интеллектуальное управление интегрированными регуляторами напряжения;
  • гибкая система тактирования, позволяющая использовать широкий выбор источников тактирования, производить деление частоты, индивидуально тактировать интегрированную периферию;
  • наличие режимов пониженного потребления.

Обзор производительных и экономичных контроллеров семейства STM32L

Семейство STM32L объединяет в себе более 50 наименований 32-битных контроллеров с минимальным энергопотреблением, различным объемом памяти и в разных корпусах (рис. 2). Благодаря ядру ARM Cortex-M3, которое работает на частоте до 32 МГц с производительностью 33,3 DMIPS (Dhrystone 2.1), контроллеры этого семейства могут применяться в устройствах, производительность которых так же важна, как и потребление. Например: центральные модули сигнализации, медицинские измерительные приборы, драйверы и контроллеры промышленных механизмов.

Разнообразие контроллеров семейства STM32L

Рис. 2. Разнообразие контроллеров семейства STM32L

В семействе можно выделить четыре линейки (рис. 3).

Сравнение линеек микроконтроллеров STM32L

Рис. 3. Сравнение линеек микроконтроллеров STM32L

STM32L162 — имеет до 384 кбайт Flash, до 48 кбайт ОЗУ, до 12 кбайт EEPROM и наиболее развитую периферию:

  • FSMC-контроллер для подключения внешней памяти, TFT-панелей и других устройств.
  • До 116 быстрых входов/выходов общего назначения (из них 102 устойчивы к 5 В) с возможностью внешних прерываний.
  • Драйвер ЖК-экранов (до 8×40 сегментов) с поддержкой яркости и интегрированным повышающим преобразователем.
  • До трех ОУ.
  • До 40 каналов 12-битного АЦП.
  • Два 12-битных ЦАП.
  • Два малопотребляющих компаратора.
  • DMA на 12 каналов.
  • Коммуникационные интерфейсы: USB2.0, до пяти USART, до трех SPI, до двух I2C, один SDIO.
  • До 11 таймеров, в том числе один 32-битный, шесть 16-битных с возможностью захвата/сравнения/ШИМ, четыре 16-битных общего назначения, два сторожевых таймера (оконного типа и независимый).
  • До 34 каналов сенсорных кнопок.
  • Модуль вычисления CRC.
  • 96-битный уникальный ID.

Особенностью STM32L162 является наличие 128-битного модуля криптографии AES с поддержкой DMA.

Линейка STM32L152 отличается от STM32L162 главным образом отсутствием AES. При этом разнообразие периферии сохраняется. В свою очередь, STM32L151 сохраняет функционал STM32L152, но не имеет контроллера ЖК-экрана.

Самой новой линейкой семейства является STM32L100 Value Line (табл. 1). Она призвана заменить вышеперечисленные линейки в тех приложениях, где цена играет главную роль. Контроллеры STM32L100 имеют уникально низкую стоимость, что стало возможным благодаря ряду причин. Это:

  • Оптимизация процесса производства.
  • Уменьшение затрат на тестирование, оптимизация и распараллеливание процессов тестирования.
  • Ограничение наименований контроллеров, использование ограниченного набора корпусов (на 48 или 64 вывода).
  • Выбор одного типа упаковки.
  • Повторное использование фирменного ПО и документации (фактически использование библиотек на старшие модели).
  • Ограничение используемой периферии.

Таблица 1. Основные параметры новой линейки STM32L100 Value Line

Наименование Корпус/размеры, мм Flash, кбайт ОЗУ, кбайт EEPROM, байт АЦП ЦАП Интерфейсы ЖК-дисплей Напряжение питания (min), В Потребляемый ток (min), мкА Потребляемый ток при 1 МГц (режим RUN) (тип.), мкА
STM32L100C6 UFQFPN 48/7×7×0,55 32 4 2048 16×12-бит 2×12-бит SPI, I2C,
USART,
USB 2.0
4×16 1,8-3,6 0,3 230
STM32L100R8 LQFP 64/10×10×1,4 64 8 2048 20×12-бит 4×32/8×28
STM32L100RB 128 10 2048 20×12-бит
STM32L100RC 256 16 8192 21×12-бит 0,35 238

Изменение производства привело к незначительному ухудшению ряда параметров (табл. 2). Однако эта линейка сохраняет широкий набор периферии и производительность, поэтому ухудшение параметров может быть совершенно не критичным, особенно в приложениях с ограниченным бюджетом.

Таблица 2. Анализ особенностей линейки STM32L100 Value Line

Параметры STM32L15x STM32L100
Объем Flash/RAM 32K/10K 64K/10K 128K/16K 256K/32K 32K/4K 64K/8K 128K/10K 256K/16K
Flash 10K циклов / сохранность 30 лет/+85 °C 1K цикл / сохранность 20 лет/+85 °C
Теневые регистры, байт 80 2
Напряжение питания, В 1,65-3,6 1,8-3,6
Рабочая температура, °C -45…+85/+105 -40…+85
Корпус (выводов) 48 64 48 64
EEPROM 4K 4K 4K 8K 2K 2K 2K 4K
300K циклов 100K циклов
Точность встроенного генератора (HSI) ±1% при T = +25 °C ±10% при -40…+85 °C
От -4 до 3% при -40…+85 °C
Точность программируемого генератора (MSI) ±3% при 0…+85 °C ±10% при 0…+85 °C
ЖК-дисплей 4×16 8×28 4×16 8×28
USART 3 3 3 3 3 3 3 3
SPI 2 2 2 3 2 2 2 3
I2C 2 2 2 2 22 2 2 2
Компаратор 2 2 2 2 2 2 2 2
Поддержка сенсорных кнопок 28 28 28 36 Нет
Уникальный ID Да Нет

Особенности минимизации потребления в STM32L

Производство STM32L основано на той же технологии, которая отлично зарекомендовала себя еще при выпуске контроллеров STM32F10x. Как было сказано ранее, для заданного технологического процесса потребляемая мощность в активном режиме в значительной степени зависит от уровня напряжения питания и рабочей частоты. Рассмотрим особенности STM32L, позволяющие достичь низких параметров потребления.

Особенности питания STM32L

Микроконтроллеры имеют интегрированный регулятор напряжения с низким собственным падением, что позволяет им работать в составе устройств с батарейным питанием с уровнем напряжения от 1,65 В (для аналоговых цепей — 1,8 В).

Регулятор питает все цифровые модули за исключением модулей Standby. Выходное напряжение может принимать три значения: 1,2, 1,5 и 1,8 В. Производительность для каждого значения различна (рис. 4).

Оптимизация питания/производительности в STM32L

Рис. 4. Оптимизация питания/производительности в STM32L

Регулятор имеет три состояния: основное, низкого потребления и выключенное. Основное состояние применяется при активном режиме работы контроллера (режим RUN). Переход в состояние с низким потреблением происходит в режимах пониженного потребления — Low-power run, Low-power sleep и Stop. В режиме Standby выход регулятора находится в высокоомном состоянии, питание ядра отключено, что практически до нуля снижает потребление, а содержимое регистров и ОЗУ теряется (за исключением схемы пробуждения, независимого сторожевого таймера, часов реального времени и низкочастотных резонаторов).

Особенности системы тактирования

Контроллер сброса и тактирования (RCC) позволяет работать с пятью возможными источниками тактового сигнала:

  • Внешний резонатор с частотой 4-24 МГц (HSE crystal) используется, как правило, для PLL и формирования системной частоты до 32 и 48 МГц для USB.
  • Внешний низкочастотный резонатор 32,768 кГц (LSE) используется для режимов пониженного потребления для тактирования часов реального времени, но может быть использован и для тактирования ЖК-контроллера.
  • Внутренний низкочастотный 38 кГц RC-генератор (LSI) обладает наименьшим потреблением. Используется для тактирования часов реального времени (с ограниченной точностью), ЖК-контроллера и независимого интегрированного сторожевого таймера.
  • Внутренний 16-МГц RC-генератор (HSI) используется для тех же целей, что и HSE.
  • Внутренний перестраиваемый генератор (MSI).
  • The MSI clock (от 64 кГц до 4 МГц) представляет собой генератор средней точности, но имеет низкое потребление и возможность подстройки. Он используется в режимах пониженного потребления и более экономичен, чем HIS.

Помимо разнообразия тактирующих сигналов, RCC позволяет использовать внутренние делители частоты и независимое тактирование различных блоков и периферии.

Все преимущества гибкой системы тактирования и системы питания проявляются в режимах пониженного потребления.

Режимы энергопотребления STM32L

Потребление STM32L можно в значительной степени снизить за счет одного из семи режимов пониженного потребления (табл. 3). По сравнению с семействами STM32F добавились два дополнительных режима: Low-power run и Low-power sleep.

Таблица 3. Режимы пониженного энергопотребления STM32L

Режим Потребление CPU Flash / EEPROM RAM Периферия Тактирование LCD RTC
Sleep 100 мкА/МГц (Range 1) Выкл. Вкл. Вкл. Активна Любой источник Доступен
82 мкА/МГц (Range 2)
65 мкА/МГц (Range 3)
Low power run 10,4 мкА/МГц (Flash выкл., 32 кГц) Вкл. Вкл./выкл. Вкл. Активна MSI Доступен
Low power sleep 5,1 мкА Выкл. Выкл. Вкл. Выкл. MSI Доступен
6,1 мкА 1 таймер вкл.
Stop with RTC 1,3 мкА (1,8 В) Выкл. Выкл. Вкл. Ожидание LSI, LSE

Доступен

1,6 мкА (3 В)
Stop 500 нА Выкл. Выкл. Вкл. Ожидание LSI, LSE Выкл. Выкл.
Standby with RTC 1,3 мкА (3 В) Выкл. Выкл. Выкл. Выкл. LSI, LSE Выкл. Вкл.
1 мкА (1,8 В)
Standby 270 нА Выкл. Выкл. Выкл. Выкл. LSI, LSE Выкл. Выкл.

Перечислим особенности каждого из режимов:

  • Sleep. В этом режиме ядро остановлено. Вся периферия продолжает работать. Ядро пробуждается при наступлении события или прерывания. Тактирование возможно от любого источника.
  • Low-power run. В этом режиме код выполняется из ОЗУ или Flash, частота MSI снижена до 65 кГц, внутренний регулятор находится в режиме низкого потребления. Рабочая частота и перечень активной периферии ограничены.
  • Low-power sleep. В этом режиме (в отличие от режима Sleep) Flash и EEPROM отключены, тактирование ведется только от MSI.
  • Stop-режим с работающими часами реального времени (RTC). В этом режиме все источники тактирования отключены за исключением LSI и LSE. Содержимое регистров и ОЗУ сохраняется, Flash и EEPROM отключены. Пробуждение возможно в результате нескольких событий: это внешнее прерывание, прерывание от компараторов, RTC, от пробуждения через USB.
  • Stop-режим с работающим RTC. Является аналогом предыдущего режима с неактивным RTC.
  • Standby без RTC. Все источники тактирования, кроме LSI и LSE, отключены. ОЗУ, Flash, EEPROM отключены. Содержимое ОЗУ и регистров теряется. Сохраняется содержимое цепей схемы пробуждения, независимого сторожевого таймера, RTC. Выход из режима возможен по аппаратному сбросу, по сбросу от сторожевого таймера, по сигналу WKUP одного из трех внешних выводов WKUP или в результате прерывания от RTC.
  • Standby без RTC. Аналогичен предыдущему режиму, за исключением работы RTC.

Oтладочные средства STM32L

К преимуществам работы с контроллерами STM32L следует отнести простоту освоения, широкий выбор сред программирования, наличие бесплатных библиотек, доступность отладочных комплектов.

Все основные среды разработки для контроллеров с ARM-ядром (табл. 4) поддерживают STM32L. Выбор конкретной среды определяется ее доступностью и зачастую делом вкуса. Каждая среда предоставляет возможность компиляции, отладки и симуляции. Отметим также наличие огромного количества готовых примеров и библиотек.

Таблица 4. Средства разработки программного обеспечения

Производитель Среда C/C++ компилятор Ограничения на бесплатную версию Программатор-отладчик
Keil μVision ARM RealView C/C++ 32 кбайт по коду ULINK-ME, ST-Link, J-LINK
IAR Embedded Workbench IAR C/C++ 32 кбайт по коду. Полная версия на 30 дней ST-Link, J-LINK
Atolic TrueStudio Eclipse GNU C/C++ Ограничение по функционалу ST-Link
Raisonance Ride7 RKIT-ARM GNU C/C++ 32 кбайт по коду R-Link
Hitex HiTOP Altium/Tasking VX C/C++, Hitex GNU C/C++   Tantino JTAG

Компания STMicroelectronics предоставляет бесплатное программное обеспечение, включающее множество библиотек: это библиотека стандартной периферии (общая для всех контроллеров семейства), библиотека GUI, библиотека для сенсорных приложений, библиотека USB и многие другие.

Для ускорения освоения контроллеров STMicroelectronics предлагает фирменные стартовые наборы STM32L Discovery (рис. 5а). Отладочная плата содержит встроенный программатор, позволяющий работать напрямую с различными системами (Keil, IAR, TrueStudio), контроллер STM32L152RBT6B, два светодиода, пользовательскую кнопку, сенсорную клавиатуру и ЖК-дисплей (24×4). На сайте производителя можно найти примеры непосредственно для этого комплекта.

Отладочные комплекты: а) STM32L Discovery; б) STM32L152-EVAL

Рис. 5. Отладочные комплекты: а) STM32L Discovery; б) STM32L152-EVAL

Комплект STM32L152-EVAL (рис. 5б) можно использовать как готовый блок в составе различных устройств, что значительно снижает время разработки. На плате реализовано большое количество периферийных интерфейсов и модулей: микрофон, разъем для MicroSD, два RS-232, 240×320 TFT, джойстик на четыре направления, четыре пользовательских светодиода, 32х4-сегментный ЖК-дисплей, USB, две сенсорные кнопки, светочувствительный резистор и потенциометр.

Семейство 8-битных контроллеров STM8L

STM8L уступает по производительности STM32L, но гораздо экономичнее в потреблении. STM8L подходит как для простейших устройств (датчики, игрушки), так и для производительных (драйверы двигателей, медицинские приборы).

В состав семейства STM8L входят четыре линейки (рис. 6).

Семейство микроконтроллеров STM8L

Рис. 6. Семейство микроконтроллеров STM8L

STM8L101 — базовая линейка контроллеров. Она отличается самым скромным набором периферии, ограниченным объемом Flash-памяти (до 8 кбайт) и ОЗУ (до 1,5 кбайт).

STM8L151/152 — производительная линейка с расширенным набором периферии:

  • 12-битный АЦП 1 Msps до 28 каналов.
  • Два 12-битных ЦАП с выходным буфером.
  • Контроллер LCD на 8×40 или 4×44 сегментов.
  • DMA на четыре канала для ЦАП, АЦП, SPI, I2C, USART, таймеров, один канал — для передачи данных из памяти в память.
  • Два малопотребляющих компаратора.
  • Три 16-битных двухканальных таймера с квадратурным энкодером.
  • Один 16-битный таймер с комплементарными выходами для управления двигателями.
  • Один 8-битный таймер с 7-битным делителем частоты.
  • Один независимый сторожевой таймер.
  • Блок генерации для внешних звуковых устройств (например, пьезоэлементов) на 1,2 и 4 кГц.
  • Коммуникационные интерфейсы: SPI, I2C, USART.
  • До 67 входов/выходов общего назначения.
  • До 16 каналов подключения сенсорных кнопок.
  • 96-битный уникальный номер.

STM8L162 — производительная линейка, имеющая интегрированный блок криптографии AES, позволяющий шифровать и расшифровывать данные по AES-алгоритму.

Недавней новинкой в семействе STM8L стала линейка STM8L05 Value Line Level. Ее назначение состоит в замене микроконтроллеров STM8L162 и STM8L151/152 в приложениях, где цена и энергопотребление являются определяющими факторами.

Для снижения стоимости инженеры STMicroelectronics пошли привычным путем: это снижение стоимости тестирования конечной продукции за счет оптимизации и распараллеливания процессов тестирования, ограничение типов корпусов и наименований, использование упаковки только одного типа и уже готовых программных библиотек, исключение части периферии (отсутствуют компараторы, ЦАП, уникальный номер). Сейчас в линейку входят только три устройства (табл. 5).

Таблица 5. Основные параметры STM8L05 Value Line Level

Наименование Корпус/размер, мм Flash, кбайт ОЗУ, кбайт EEPROM, байт АЦП Интерфейсы ЖК-дисплей Напряжение питания (min), В Потребляемый ток (min), мкА Потребляемый ток при 1 МГц (режим RUN), (тип.), мкА
STM8L051F3 TSSOP 20 8 1 256 10×12-бит SPI, I2C, USART 1,8-3,6 0,35 180
STM8L052C6 LQFP 48/7×7×1,4 32 2 25×12-бит 4×28 0,35 180
STM8L052R8 LQFP 64/10×10×1,4 64 4 28×12-бит 4×28/8×24 0,4 200

Говоря о STM8L, следует в первую очередь уделить внимание тем особенностям и решениям, которые позволили значительно снизить потребление этих микроконтроллеров.

Особенности минимизации потребления в STM8L

Организация питания

Как было сказано выше, потребление возрастает пропорционально квадрату напряжения питания. STM8L имеют широкий диапазон питающих напряжений — 1,65-3,6 В (STM8L005 — от 1,8 В), что позволяет при необходимости значительно снижать потребление.

Второй особенностью контроллеров можно назвать интегрированную схему питания (рис. 7), которая состоит из двух регуляторов: основного (Main Voltage Regulator, MVR) и дополнительного маломощного регулятора (Low Power Voltage Regulator, LPVR). В активном режиме MVR обеспечивает напряжение 1,8 В и ток до 25 мА для процессорного ядра и памяти. В ряде режимов пониженного потребления, когда работает только ограниченный набор периферии, можно использовать LPVR, обеспечивающий напряжение 1,55 В и ток 250 мкА. При этом MVR отключается, что дополнительно снижает потери мощности.

Схема питания STM8L

Рис. 7. Схема питания STM8L

Система тактирования

Микроконтроллеры STM8L05, STM8L151/2 и STM8L162 могут использовать различные источники тактового сигнала:

  • внешний резонатор с частотой 1-16 МГц (HSE crystal);
  • внешний генератор с частотой до 16 МГц (HSE bypass);
  • внутренний 16-МГц RC-генератор (HSI);
  • внешний низкочастотный резонатор 32,768 кГц (LSE);
  • внутренний низкочастотный 38-кГц RC-генератор (LSI).

Каждый из источников может быть независимо включен и выключен, что позволяет снижать потребляемую мощность. Следует учитывать, что источники тактового сигнала имеют собственное потребление, поэтому грамотный выбор источника поможет дополнительно снизить потери мощности.

Еще одной особенностью системы тактирования является то, что каждый периферийный модуль может быть отключен, что делает систему очень гибкой.

Дополнительно в случае необходимости системный тактовый сигнал может быть поделен при помощи внутреннего делителя.

Использование особенностей систем питания и тактирования позволяет реализовывать несколько режимов пониженного энергопотребления.

Режимы энергопотребления STM8L

Микроконтроллеры семейства STM8L (за исключением STM8L101xx) имеют пять режимов пониженного потребления (табл. 6). Выбор режима значительно влияет на их потребление.

Таблица 6. Режимы пониженного потребления в STM8L

Режим CPU Периферия HSI / HSE RTC LSI / LSE Flash ОЗУ Потребление (тип.) при температуре, мкА
+25 °С +85 °С
Low-power run Вкл. Вкл. Выкл. Вкл. Вкл. Выкл. Вкл. 5,4 6,8
Low-power wait Выкл. Вкл. Выкл. Вкл. Вкл. Выкл. Вкл. 3,3 4,4
Active-halt w/full RTC Выкл. Выкл. Выкл. Вкл. Вкл. Выкл. Вкл. 1 1,4
Active-halt w/RTC on LSI Выкл. Выкл. Выкл. Выкл. Вкл. Выкл. Вкл. 0,8 1,2
Halt Выкл. Выкл. Выкл. Выкл. Выкл. Выкл. Выкл. 0,4 1

Режим Wait

В этом режиме ядро контроллера отключается, а периферия остается активна. Это удобно в том случае, когда микроконтроллер периодически находится в режиме ожидания сообщений от периферийных интерфейсов и ядро не используется.

Вход в режим происходит после выполнения ассемблерных команд WFI (режим ожидания прерывания) или WFE (ожидание события).

Выход из этого режима осуществляется при возникновении прерывания от периферийных модулей.

Режим Low-power run

В таком режиме программа выполняется из RAM, а для тактирования используется низкочастотный источник (LSI, LSE). Основной внутренний регулятор напряжения (MVR) отключается, и схема получает питание от маломощного регулятора (LPVR). АЦП в этом режиме не функционирует, так как для него необходима частота тактирования не менее 1 МГц. Прерывания не поддерживаются: вектор прерывания находится во Flash-памяти, которая отключена. (Этот режим не поддерживается в семействе STM8L101xx).

Режим Low-power wait

Вход в этот режим возможен из режима Low-power run при выполнении ассемблерной команды WFE. Выход из него происходит так же, как в режиме Low-power run: при наступлении внутреннего или внешнего события.

Режим Halt

В этом режиме тактирование отключено, это значит, что ядро и периферия не тактируются за рядом исключений: внешний высокочастотный резонатор HSE не останавливается, если используется SWIM; системное тактирование не отключается, если происходит запись Flash/EEPROM; внутренний низкочастотный RC-осциллятор LSI не останавливается при использовании SWIM и при особых настройках сторожевого таймера. В этом режиме ни периферия, ни ядро ничего не потребляют.

Вход в режим происходит после выполнения ассемблерной команды Halt. Выход из режима Halt осуществляется при наступлении внешнего прерывания от порта ввода/вывода общего назначения.

Режим Active-halt

В этом режиме основной тактовый генератор, ядро и практически вся периферия отключаются. Во включенном состоянии остаются внутренний низкочастотный RC-осциллятор (LSI), внешний низкочастотный резонатор (LSE) при использовании SWIM, периферийный блок BEEP, независимый сторожевой таймер (IWDG), часы реального времени (RTC) и контроллер ЖК (LCD). Вход происходит по ассемблерной команде Halt.

Следует отметить, что во всех режимах все входы/выходы — общего назначения (как цифровые, так и аналоговые выходы ЦАП).

Контроллер может выходить из режимов пониженного потребления при появлении определенных прерываний (от компараторов, SPI, I2C, USART и др.).

Большой набор режимов потребления и гибкая система тактирования позволяют выбрать необходимые настройки для конкретного приложения.

Средства разработки и отладки для STM8L

Для разработки программного обеспечения для STM8L есть несколько программных сред:

  • ST Visual Develop (STVD) — бесплатная среда проектирования.
  • ST Visual Programmer (STVP) — бесплатное ПО для программирования МК.
  • Raisonance RIDE — бесплатная среда проектирования с RBuilder и RFlasher.
  • Raisonance C-компилятор — 16-кбайт версия бесплатно.
  • IAR Systems — cреда проектирования с С-компилятором.
  • Cosmic C-компилятор, 16 кбайт бесплатно.

На сайте STMicroelectronics можно бесплатно скачать множество библиотек и примеров. Отметим, что бесплатно предоставляемая библиотека периферии поддерживает все контроллеры семейства.

Помимо программных средств, можно приобрести отладочные наборы, которые предлагаются по совершенно демократическим ценам, доступным даже студентам. Одним из таких наборов является стартовый комплект STM8L Discovery (рис. 8а). На этой плате расположен STM8L152C6T6, два пользовательских светодиода, кнопка, ЖК-дисплей и программатор, позволяющий работать с перечисленными средами. Таким образом, чтобы начать работать с STM8L, необходимы минимальные денежные затраты.

Отладочные платы

Рис. 8. Отладочные платы: а) STM8L Discovery б) STM8L1526-EVAL; в) STM8L15LPBOARD; г) STM8L101-EVAL

Кроме стартового набора, существуют разнообразные отладочные платы. С помощью STM8L1526-EVAL, STM8L15LPBOARD и STM8L101-EVAL (рис. 8) можно ознакомиться с периферией и производить отладку ПО. Их даже можно использовать в составе готовых изделий.

Заключение

Компания STMicroelectronics предлагает широчайший выбор микроконтроллеров с пониженным потреблением. Контроллеры 8-битного семейства STM8L имеют минимальное потребление при высокой производительности. Контроллеры 32-битного семейства STM32L обладают всеми преимуществами ядра ARM Cortex-M3 и низкого потребления и подходят для приложений, в которых еще недавно главенствовали 8-битные контроллеры. Бюджетные линейки STM8L05 и STM32L100 открывают новые возможности построения недорогих решений, сохраняя все преимущества низкого потребления и производительности.

Литература

  1. AN3147. Application note. Power management in STM8L and STM8AL. Rev. 3. 2013.
  2. AN3193. Application note. STM32L15x ultralow power features overview. Rev. 1. 2010.
  3. Presentation. STM8L and STM32 L1 series Ultra-low-power platform.
  4. www.st.com

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *