Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32...

153
Семейство микроконтроллеров STM8 Сентябрь 2011, Москва Попов Роман Инженер по МК STMicroelectronics ([email protected]) Компэл (www.compel.ru) Компэл STMicroelectronics

Transcript of Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32...

Page 1: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

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

STM8

Сентябрь 2011, Москва

Попов Роман

Инженер по МК STMicroelectronics

([email protected])

Компэл

(www.compel.ru)

Компэл STMicroelectronics

Page 2: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

План семинара

Семейства STM8

STM8 - ядро, прерывания, система отладки

STM8S в деталях:

Системная периферия

Стандартная периферия

STM8L в деталях:

Системная периферия

Стандартная периферия

STM8S/STM8L – периферия обмена данными

Инструменты разработки STM8

Вопросы и ответы Компэл STMicroelectronics

Page 3: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STMicroelectronics Компэл

Совместимость 8/32 – бит П

рои

звод

ите

льность

(M

IPS

)

Интеграция (функциональность)

•Общая периферия

•Богатейшее портфолио

STM8

Page 4: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Семейство STM8

STM8A

STM8S

STM8L

Компэл STMicroelectronics

Page 5: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Компэл STMicroelectronics 5

Платформа STM8, что нового

Ядро STM8 Система отладки

Периферия

130 нм EEPROM

технология

Надежность

STM8S STM8A STM8L Промышленный

сегмент Атомобильный

сегмент Ультранизкое

потребление

Page 6: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Семейство STM8

Ядро, отладка и

система прерываний

Компэл Компэл STMicroelectronics

Page 7: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8 – реализация архитектуры

D-Bus

IT протокол 8бит

32бит

8бит

Прер - ие

SWIM протокол

I-Bus

STM8

Core

SRAM

Flash и EEPROM

Модуль

отладки

SWIM Периферия

Контр.

Прер.

Контролл

ер

памяти

DMA* 8бит * только в

STM8L

Компэл Компэл STMicroelectronics

Page 8: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8. Набор регистров ядра

V: переполнение

H: полуперенос

N: отрицательный результат

Z: нулевой результат

C: перенос

I0, I1: уровень маски прерывания 0, 1

V - I1 H I0 N Z C

A Аккумулятор

X Индекс

Y Индекс

SP Указатель стека

PC Счетчик программ

CC Регистр условий

0 7

15

23

Компэл Компэл STMicroelectronics

Page 9: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8. Конвейер

В STM8 реализован 3х - уровневый конвейер, что позволяет

значительно повысить производительность

выполнение

декодирование

выборка PC+ m

PC

PC - n

Компэл Компэл STMicroelectronics

Page 10: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Аппаратные операции умножения и деления

Умножение

Быстрое умножение 8 x 8 (4 цикла)

16 – бит арифметические инструкции

Деление

Деление 16/8 и 16/16 (16 циклов)

Поддержка знаковых операций

V флаг в регистре условий

Компэл Компэл STMicroelectronics

Page 11: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8. Управление прерываниями(1/4)

До 32 вектора прерываний Как минимум 1 прерывание на периферийный модуль

Вложенность или конкурентные режимы Приоритет задается программно в ISPR регистрах

3 уровня + запрет прерываний

Прерывание с высшим приоритетом (TLI) Управляется PD7

2 уровня – по возрастающему или падающему уровню

Разрешение программно

TLI может быть прервано только RESET

Внешние прерывания Прерывание на каждом порту

Программируемые условия реакции

Компэл Компэл STMicroelectronics

Page 12: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Таблица векторов прерывания

32 расширенных вектора по 4 байта:

1 байт содержит код операции (0x82)

3 байта содержат адрес памяти (16MB)

Section 256

Section n

Section 0 00807Fh

008000h

000000h

FFFFFFh

INTERRUPT VECTORS

STM8. Управление прерываниями(2/4)

Компэл Компэл STMicroelectronics

Page 13: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Полное сохранение контекста (A,X,Y,CC, PC)

4 вложенных уровня приоритета

Технология tail-chaining

ACCU

ACCU

XH

XL

YH

CC

INT

ER

RU

PT

RE

TU

RN

Stack

(PUSH)

Unstack

(POP) YL

PCE

PCH

PCL

IRET

IT1

IRET

IT2

IPn

IP1

Main

IPm

IP1

IPm+1

STM8. Управление прерываниями(3/4)

Компэл Компэл STMicroelectronics

Page 14: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Управление прерываниями (4/4)

Время отклика на прерывание

9 циклов на сохранение контекста

Инструкция в стадии выполнения обычно завершаются

Исключение при делении(DIV и DIVW) может прерываться

Некоторые инструкции совместно разделяют стадии

декодирования/выполнения

Они не могут быть прерваны даже при декодировании

Максимальное время 15 циклов в случае косвенного

выполнения CALLF

Прерывания и выборка Текущая выборка и декодирование конвейера контекста

теряется после возвращения из прерывания

Компэл Компэл STMicroelectronics

Page 15: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Методы программирования памяти

Существуют 3 метода программирования памяти:

SWIM

In circuit programming(ICP):

Программатор встроен в устройство

Программирование осуществляется внешним программатором через SWIM.

Время программирования ~6с @ 128Кб

ST

Boot Loader

Boot Loader:

Это позволяет разработчику программировать память через один из

последовательных интерфейса (UART, SPI, CAN).

IAP

In Application Programming (IAP):

Приложение может перепрограммировать себя через любой доступный

протокол обмена данными

IAP код может быть запрограммирован одним из вышеприведенных методов

Компэл Компэл STMicroelectronics

Page 16: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Отладочный модуль SWIM

SWIM : Single Wire Interface Module SWIM – интерфейс и полноценный отладочный

модуль

Чтение данных без остановки CPU

Новые «теневые» регистры ядра(чтение без

останова)

Определенная ножка SWIM протокола может быть

использована как обычная ножка GPIO

Исполнение кода в реальном времени

Не агрессивная внутрисхемная отладка и быстрое

программирование(тактирование от HSI)

Не ограниченное количество точек останова

инструкций

Чтение/запись всей памяти и регистров периферии

во время выполнения приложения

SWIM connector

VDD

STM8S

Supply

VDD

NRST

SWIM

GND

PD1

SWIM connector

VDD VDD

STM8S

Supply

VDD

NRST

SWIM

GND

PD1

Компэл Компэл STMicroelectronics

Page 17: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Встроенный загрузчик

Характеристики: Возможность программирования Flash, EEPROM, RAM памяти и

приложения пользователя

Возможность соединения с ПК с использованием

UART, SPI, CAN

Защита от само-перезаписи

Расположен в ROM памяти (адрес 0x6000)

Простота и безопасность активации

Активация после каждого сброса устройства

Таймаут активации – 1 секунда ожидания команды

Возможность отключения через options byte

Наличие:

S903 S103 S105 S20x L10x L15x

- - + + - +

Компэл Компэл STMicroelectronics

Page 18: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Параметры встроенного загрузчика

STM8S105 STM8S20x STM8L15x

UART HSE/HSI

Кадр: 8Data/Even/1Stop

Скорость: 4800 – 1Мб/с

Авто определение скорости

UART1 HSE/HSI

Кадр: 8Data/Even/Stop

Скорость: 4800-1Mб/с

Авто определение скорости

UART2 HSE/HSI

Кадр: 8Data/Even/1Stop

Скорость: 4800-550Кб/с

Авто определение скорости

UART3 HSE/HSI

Кадр: 8Data/Even/1Stop

Скорость: 4800-550Кб/с

Авто определение скорости

SPI HSE/HSI

Кадр: 8Data/MSB first

Скорость: до 10Mбит/с

Авто режим slave

CAN HSE: 8, 16, 24MГц

Кадр: 11/29 bit ID

Скорость:125Кб/с – 1Mб/с

Ручное задание скорости (по

умолчанию 125кб/с)

Компэл Компэл STMicroelectronics

Page 19: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

ПО – “Flash loader”

только USART

нет необходимости работать с командами бутлоадера

загрузка файлов с расширением “*.s19”

Компэл Компэл STMicroelectronics

Page 20: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Ресурсы

Список ресурсов по ROM - bootloader:

1) UM0560 manual

• Подробный user manual для ROM bootloader

• Опубликовано в интернете

2) AN2659: In Application Programming (IAP)

• Реализация User Bootloader

• Совместим с протоколом ROM bootloader

• Открытый код

• Написан на C-языке

Компэл Компэл STMicroelectronics

Page 21: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Семейство STM8S

Основные характеристики

Компэл Компэл STMicroelectronics

Page 22: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S – расширенная архитектура

Расширенный Гарвард; CISC архитектура.

Новые арифметические инструкции

16MБ линейное адресное пространство

32-бит интерфейс памяти и 3 – уровневый

конвейер

Производительность 20MIPS @ 24MHz

16 – бит индексные регистры

Дополнительный тактовый контроллер с

контролем потребления

Большинство инструкций за 1 CPU такт

Компэл Компэл STMicroelectronics

Page 23: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S – Надежность

3 - 5.5V Вольт, с -40 до +125°C

Voltage detection (POR, PDR)

2 независимых сторожевых таймера

Система контроля тактирования(CSS)

Дополнительные critical option bytes

Соответствие EMI(стандарт IEC61967-2)

Стойкость к EMS(стандарт IEC 61000-4-2 и IEC 61000-4-4)

Стойкость к ESD(соответствие классам JESD22-A114 и

JESD22-C101)

Соответствие IEC 60335 class B

Высоконадежный дизайн портов в/в

Компэл Компэл STMicroelectronics

Page 24: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S207/208. Функциональная схема

Ключевые особенности 3.0-5.5В

От -40 до +125 °C

24MГц Fcpu

10K циклов FLASH

300K циклов EEPROM

4 режима низкого

потребления

Подстраиваемый HSI RC

16MГц(до +/-1% точности)

Поддержка IrDA и

Smartcard

SWIM для быстрого

программирования

96 – бит уникальный ID

LQFP 80, 64, 48, 44, 32

VQFN 20, 32, 48

TSSOP 20

Ad

dre

ss

& D

ata

Bu

s

SPI

Nested IT Ctrl 32 IT вектора

До 37 внш.IT на

6 векторах

До 128КБ FLASH

10 бит АЦП

До 16 каналов

2x Watchdog

(IWDG и WWDG)

STM8

Ядро

@ 24 MГц

Вн RC 16 MГц

Внш 1-24 MГц

Вн RC 128 КГц

Clocks to Peripherals

Core

Clock Controller

Clock

Detector

Блок сброса

POR

Beeper 1/2/4

КГц

Таймер AWU

I2C

2x16-бит TIM

До 5 CAP/COM

Ad

dre

ss

& D

ata

Bu

s

Модуль

отладки

SWIM

2xU(S)ART

Smartcard /

IrDA/LIN

До 68 I/Os

До 6КБ SRAM

Boot ROM

8-bit Timer

1.8В

регулятор

До 2КБ EEPROM

CAN 2.0B

16-бит TIM MC

4 CAP/COM +

3 cmpl. output

BOR

Компэл Компэл STMicroelectronics

Page 25: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S003х. Функциональная схема

Ключевые

особенности 2.95 - 5.5 В

От 40 до +85 °C

16 MГц Fcpu

100 циклов FLASH(20 лет)

100K циклов EEPROM

Подстраиваемый HSI RC

16MГц(до +/-1% точности)

SWIM для быстрого

программирования

LQFP32/LQFP48/LQFP64/T

SSOP20 A

dd

res

s &

Da

ta B

us

SPI

8Мбит/с

Nested IT Ctrl 32 IT вектора

До 27 внеш. IT

на 6 векторах

8 КБ

FLASH

10 бит АЦП

До 5 каналов

2x Watchdog

(IWDG и WWDG)

STM8

Ядро

@ 16 MГц

Int. RC 16 MГц

Xtal 1-16 MГц

Int. RC 128

КГц

Clocks to Peripherals

Core

Clock Controller

Clock

Detector

Блок сброса

POR

Beeper

1/2/4КГц

Таймер AWU

I2C

400Кбит/c

16-бит TIM2

3 CAP/COM

Ad

dre

ss

& D

ata

Bu

s

Модуль

отладки

SWIM

UART1 LIN/IrDa

Эмуляция SPI

До 28 I/Os

1 КБ SRAM 8-бит TIM4

1.8V

регулятор

128 КБ EEPROM

16-бит TIM1 4 CAPCOM +

3 cmpl. output

BOR

Компэл Компэл STMicroelectronics

Page 26: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Компэл Компэл STMicroelectronics

Семейство STM8S

SPI

10MГц*

2x Watchdog

(IWDG и WWDG)

AWU

Beeper 1/2/4kHz

SWIM

Модуль отладки

I2C

400 КГц multi-master

UART

LIN /Smartcard / IrDA

До 3x16-бит таймера

8-бит таймер

10-бит АЦП

До 16 каналов

Встр. источн. тактир.

16MГц RC генератор

128КГц RC генератор

Performance Line STM8S20x

CAN 2.0B 2 UART До 6Кб

SRAM

Ядро STM8

@ 24 MГц До 2 КБ

EEPROM

До 128 КБ

FLASH

Общая периферия Application Specific Line STM8S903

7 каналов

АЦП

Voltage

reference 1Кб SRAM

Ядро STM8

@ 16 MГц 640 байт

EEPROM

8 КБ

FLASH

Синхр.

таймер

Access Line STM8S10x

До 2 Кб

SRAM

Ядро STM8

@ 16 MГц До 1 КБ

EEPROM

До 32 КБ

FLASH

Value Line STM8S00x

1 Кб

SRAM

Ядро STM8

@ 16 MГц 8 КБ

FLASH

Page 27: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

29

Основные моменты STM8S “Value Line”

Оптимизированные по цене STM8S для приложений, требующих

базовые характеристики с лучшим соотношением

цены/производительности/периферии

Полная совместимость с более ранними STM8S

Отличительные особенности:

Уменьшенный набор партнамберов(8Кб, позже 32Кб/64Кб)

Уменьшенный набор корпусов(LQFP48/32/TSSOP20/UFQFPN20)

Несколько байт EEPROM

Нет уникального ID

Снижено количество циклов записи/очистки FLASH до 100

Нет сервиса программирования на мощностях ST

Более агрессивная цена чем STM8S103(Access Line)!

Компэл Компэл STMicroelectronics

Page 28: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

30

Портфолио STM8S00х “Value Line”

STM8S003F3P6 8 Кб – TSSOP20

STM8S003K3T6 8 Кб – LQFP32

STM8S005K6T6 32 Кб – LQFP32

STM8S005C6T6 32 Кб – LQFP48

STM8S007R8T6 64 Кб – LQFP64

Компэл Компэл STMicroelectronics

Page 29: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Портфолио STM8S Flash

Размер

памяти

Кол – во

ножек

32 pins 44 pins 48 pins 64 pins 80 pins

8КБ

16КБ

32КБ

64КБ

128КБ

20 pins

STM8S207R6

2Кб RAM

STM8S207R8

4Кб RAM

STM8S207RB

6Кб RAM

STM8S208RB

6Кб RAM

STM8S207MB

6Кб RAM

STM8S208MB

6Кб RAM

STM8S207C8

4Кб RAM

STM8S207CB

6Кб RAM

STM8S103F2

1Кб RAM

4КБ

STM8S103F3

1Кб RAM

STM8S103K3

1Кб RAM

STM8S105K4

2Кб RAM

STM8S105K6

2Кб RAM

STM8S105S4

2Кб RAM

STM8S105S6

2Кб RAM

STM8S207S8

4Кб RAM

STM8S105C4

2Кб RAM

STM8S105C6

2Кб RAM

Performance Line

Access Line

STM8S207K6

2Кб RAM

STM8S207S6

2Кб RAM

STM8S207C6

2Кб RAM

STM8S207M8

6Кб RAM

STM8S903K3

1Кб RAM

STM8S208R6

6Кб RAM

STM8S208S6

4КБ RAM

STM8S208C6

6Кб RAM

STM8S208R8

6Кб RAM

STM8S208C8

6Кб RAM

STM8S208S8

4Кб RAM

STM8S207SB

4Кб RAM

STM8S208SB

4Кб RAM

STM8S208CB

6Кб RAM

TSSOP20/

QFN20

LQFP32/

QFN32

LQFP44 LQFP48 LQFP64 LQFP80

STM8S903F3

1Кб RAM Value Line

Pin-to-Pin

Компэл Компэл STMicroelectronics

Page 30: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Микроконтроллеры STM8L

Основные параметры

Компэл Компэл STMicroelectronics

Page 31: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Основные характеристики STM8L

STM8 8 - бит CISC ядро; до 16 MIPS на 16 MHz

Pin-to-pin и программная совместимость МК, 4 линейки

От 4 до 64 Кб встроенной Flash, до 4 Кб SRAM

Гибкое регулирование потребления до 150 мкА/МГц

4 режима низкого потребления: до 350нA с сохранением данных SRAM и контекста

Цифровая и аналоговая периферия (12 – бит АЦП, 12 – бит ЦАП, LCD, RTC)

Бесплатная touch-sensing библиотека

Компэл Компэл STMicroelectronics

Page 32: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Функциональная схема STM8L101

SPI

USART

I²C

2x16 бит TIM

2+2 канала

1x8-бит Timer

WDG c 38 КГц

внутр.

AWU

Ad

dre

ss

& D

ata

Bu

s

До 1.5Кб SRAM

До 8Кб

FLASH

2 Компаратора

Модуль

сброса

POR/PDR

Регулятор

напряжения

Ad

dre

ss

& D

ata

Bu

s

Nested IT Ctrl До 26 IT

До 29 внешн. IT

на 10 векторах

STM8

Ядро

@ 16 MГц

Внутр. RC 16

MГц

Внутр. RC 38

КГц

Clock Controller

Модуль

отладки

SWIM

До 30 I/Os

Ядро STM8 Ядро@16 MГц Fcpu

От -40 до 125°C

1.65V - 3.6В

Память До 8Кб Flash, 1.5Кб SRAM

Характеристики 2 Ultra Low Power режимы

+/- 1% точность встроенного RC

Потребление

0,35мкА в Halt,

0.8мкА в Active Halt (с AWU)

Система сброса (POR/PDR)

Корпуса 20 pins QFN/TSSOP

28 pins QFN

32 pins LQFP/QFN

Компэл Компэл STMicroelectronics

Page 33: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Функциональная схема STM8L152/151

До 2хSPI

До 3хUSART

I²C

До 3х 16бит таймера

6 CAP/COM

1x8-бит Timer

2x Watchdog

(IWDG и WWDG)

RTC/AWU

Ad

dre

ss

& D

ata

Bu

s

До 4Кб SRAM

До 2Кб

EEPROM

До 64 Кб

FLASH

Reset system

Int Volt. Refer.

POR/PDR

Регулятор

напряжения

BOR

Ad

dre

ss

& D

ata

Bu

s

Nested IT Ctrl До 32 IT вектора

До 40 вншн IT

на 11 векторах

STM8

Ядро

@ 16 MГц

Внт RC 16

MГц

Внш 1-16 MГц

Внт RC 38

КГц

Clock Controller

Модуль

отладки

SWIM

До 67 I/Os

PVD

Внш 32,768

КГц

4 кан DMA

2x12 бит ЦАП 2 компаратора

Boot ROM

LCD driver 8 x 40 / 4 х 44

16бит TIM1 3 CAP/COM

Компл. кан.

Ядро STM8 Ядро@16MHz Fcpu

-40 - 125°C

1.8В - 3.6В (до 1.65В в режиме power down)

Память До 64Кб Flash, до 4Кб SRAM,

до 2Кб data EEPROM

Характеристики 5 режима Ultra Low Power

+/- 1% точность встроенного RC генератора

Энергопотребление

350нА в режиме Halt

1мкА в режиме Active Halt (с RTC)

Модуль сброса (POR/PDR, BOR, PVD)

Корпуса 20 pins TSSOP/UFQFPN

28 pins UFQFPN

32 pins LQFP/ UFQFPN

48 pins LQFP/ UFQFPN

64 pins LQFP

80 pins LQFP

Infrated

Interface

12 бит АЦП

25 каналов

тем. датчик

LCD booster

1/2/4 Beeper

Компэл Компэл STMicroelectronics

Page 34: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Функциональная схема STM8L162

До 2хSPI

До 3хUSART

I²C

До 3х 16бит таймера

6 CAP/COM

1x8-бит Timer

2x Watchdog

(IWDG и WWDG)

RTC/AWU

Ad

dre

ss

& D

ata

Bu

s

До 4Кб SRAM

До 2Кб

EEPROM

До 64 Кб

FLASH

Reset system

Int Volt. Refer.

POR/PDR

Регулятор

напряжения

BOR

Ad

dre

ss

& D

ata

Bu

s

Nested IT Ctrl До 32 IT вектора

До 40 вншн IT

на 11 векторах

STM8

Ядро

@ 16 MГц

Внт RC 16

MГц

Внш 1-16 MГц

Внт RC 38

КГц

Clock Controller

Модуль

отладки

SWIM

До 67 I/Os

PVD

Внш 32,768

КГц

4 кан DMA

2x12 бит ЦАП 2 компаратора

Boot ROM

LCD driver 8 x 40 / 4 х 44

16бит TIM1 3 CAP/COM

Компл. кан.

Ядро STM8 Ядро@16MHz Fcpu

-40 - 125°C

1.8В - 3.6В (до 1.65В в режиме power down)

Память До 64Кб Flash, до 4Кб SRAM,

до 2Кб data EEPROM

Характеристики 5 режима Ultra Low Power

+/- 1% точность встроенного RC генератора

Энергопотребление

350нА в режиме Halt

1мкА в режиме Active Halt (с RTC)

Модуль сброса (POR/PDR, BOR, PVD)

Корпуса 64 pins LQFP

80 pins LQFP

Infrated

Interface

12 бит АЦП

25 каналов

тем. датчик

LCD booster

1/2/4 Beeper

AES 128

Компэл Компэл STMicroelectronics

Page 35: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Линейка STM8L1xx

STM8L152 Коммуникационная

периферия

USART, SPI, I2C

Сторожевой таймер

(Два вSTM8L15x)

Многофункциональн

ые 16-бит таймеры

Встроенный 16 МГц

и 38КГц RC генераторы

Схема сброса

POR/PDR

STM8L101 2 компаратора

STM8L151

Ядро 16 MГц STM8 CPU

До

32 Кб

Flash

До

2 Кб

SRAM

Вход

осн. ист.

такт 1-16

МГц

EEP

ROM

RTC с

32 КГц

источ

4 к.

DMA

LCD

8x40/

4x44

12-бит АЦП

1мкс темп

датчик

12-бит

ЦАП

Reset

+

BOR

PVD

STM8

ядро

@ 16

MГц

До

32 Кб

Flash

До

2 Кб

SRAM

Вход

осн. ист.

такт 1-16

МГц

EEP

ROM

RTC с

32 КГц

источ

4 к.

DMA

12-бит АЦП

1мкс темп

датчик

12-бит

ЦАП

Reset

+

BOR

PVD

STM8

ядро

@ 16

MГц

До

8 Кб

Flash

До

1.5 Кб

SRAM

STM8

ядро

@ 16

MГц

STM8L162

До

32 Кб

Flash

До

2 Кб

SRAM

Вход

осн. ист.

такт 1-16

МГц

EEP

ROM

RTC с

32 КГц

источ

4 к.

DMA

LCD

8x40/

4x44

12-бит АЦП

1мкс темп

датчик

12-бит

ЦАП

Reset

+

BOR

PVD

STM8

ядро

@ 16

MГц

AES

128 -

бит

Общая периферия

Компэл Компэл STMicroelectronics

Page 36: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Портфолио STM8L Flash

(байт)

4 k

8 k

28 pins

UFQFN

STM8L101K3 1.5 КБ RAM

20 pins

TSSOP/UFQFN

32 pins

LQFP/UFQFN/XQFN

STM8L101F2 1.5 КБ RAM

STM8L151K4 2 КБ RAM

STM8L151G4 2 КБ RAM

16k

48 pins

LQFP/UFQFN

STM8L152K4 2 КБ RAM

STM8L152C4 2 КБ RAM

STM8L151C4 2 КБ RAM

STM8L101F3 1.5 КБ RAM

STM8L101G2 1.5 КБ RAM

STM8L101G3 1.5 КБ RAM

32k STM8L151K6

2 КБ RAM STM8L151G6

2 КБ RAM

STM8L152K6 2 КБ RAM

STM8L152C6 2 КБ RAM

STM8L151C6 2 КБ RAM

STM8L151F2 1 КБ RAM

STM8L151G2 1 КБ RAM

STM8L151F3 1 КБ RAM

STM8L151G3 1 КБ RAM

STM8L151K3 1 КБ RAM

Корпуса

STM8L151C8 4 КБ RAM

STM8L152C8 4 КБ RAM

STM8L152R8 4 КБ RAM

STM8L151R8 4 КБ RAM

64k

64 pins

LQFP/BGA

STM8L152M8 4 КБ RAM

STM8L151M8 4 КБ RAM

80 pins

LQFP

STM8L152R6 2 КБ RAM

STM8L151R6 2 КБ RAM

STM8L151K2 1 КБ RAM

STM8L151С3 1 КБ RAM

STM8L162R8 4 КБ RAM

STM8L162M8 4 КБ RAM

STM8L152/162** c LCD

STM8L151 без LCD

STM8L101

Будет доступно в 1 квартале 2011 года

Pin-to-Pin

Компэл Компэл STMicroelectronics

Page 37: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Линейка STM8S

Системная периферия

Компэл Компэл STMicroelectronics

Page 38: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Свойства памяти

До 128 Кб FLASH – памяти, базируется на EEPROM

технологии

До 2 Кб EEPROM памяти

До 6 Кб SRAM

Защита от записи с Memory Access Security System

(MASS ключи)

Программируемая защита от записи User Boot Code

area (UBC)

Защита от считывания (ROP)

Программирование байт, слов и блоков

Компэл Компэл STMicroelectronics

Page 39: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Карта памяти – STM8S

0x8000

0x4800

0x0000

0x5000

0x4000

0x6000

0x8080

Начало памяти программ с 00

8000h

Конец определяется

размером памяти(02 7FFFh

для 128К).

Вектора прерываний

расположены в начале этой

области памяти.

SRAM начинается с 00 0000h

До 1КБ области стека

расположено в конце SRAM

Option bytes расположены с

адреса 00 4800h

EEPROM начинается с адреса

00 4000h.

Компэл Компэл STMicroelectronics

Page 40: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S – параметры источников тактирования

Все источники могут быть использованы для тактирования CPU

От 1 до 24MГц внешний генератор/керамический резонатор

С 3В до 5.5 В

-40 to 125 °C

45-55 % рабочий цикл

< 2 мс максимальное время старта на 24 MГц

16МГц HSI RC откалиброванный при изготовлении

< 2 мкс максимальное время страта

1.8В внутр питание, 1.2 мкA максимальное в Halt режиме

±1 % точность при 25 °C

±5 % во всем диапазоне напряжений и температур(3–5.5В; -40 до +

150 °C)

Возможность программной калибровки (8 шагов и точность 1.5 %)

128КГц LSI RC откалиброванный при изготовлении

1.8 В внутр питание, 0.3 мкA макс в Halt режиме, ±2.5 % точность

при 25 °C

±12.5 % точность во всем диапазоне напряжений и температур

Компэл Компэл STMicroelectronics

Page 41: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема системы тактирования – STM8S

Reset configuration

HSE Osc

1-24MГц

CSS

HSI RC

16MГц

LSI RC

128КГц

/1

/2

/4

/8

/1

/2

/4

/8

/16

/32

/64

/128

AWU

IWDG

CPU

память

WWDG

OSC1

OSC2

CCO

HSI RC @16MГц, откалиброванный при изготовлении с +/-2% точностью, возможность программой калибровки до +/-1%

LSI RC @128КГц, откалиброванный при изготовлении с +/-5% точностью

CCOSEL[3:0]

fCPU/64

fCPU/16

fHSI

fHSIDIV

fHSE

fLSI

fMASTER

fCPU

fCPU/2

fCPU/4

fCPU/8

fCPU/32

периферия

AWU

CAN

Компэл Компэл STMicroelectronics

Page 42: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8 – контроллер тактирования

Clock Security System (CSS)

Активируется единожды, активна после сброса

Автопереключение на HSI/8 когда сбой HSE + прерывание

Peripheral Clock Gating (PCG)

После сброса, clock активен на всей периферии(STM8S)

Возможность отключение clock для следующей периферии:

USART, LINUART, SPI, I2C, TIMERS, ADC, CAN, AWU…

Controllable Clock Output (CCO)

Возможность вывода внутреннего clock

Максимальная частота 10MГц

EMS защита регистров конфигурации clock

Компэл Компэл STMicroelectronics

Page 43: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема сброса

20мкс

генератор

импульса

Внешний

Сброс

POR/BOR IWDG/WWDG/SW SWIM ILLEGAL OPCODE EMS (только STM8S)

Фильтр

EMS reset – критичные регистры процессора реализованы комплементарно , любая

ошибка в обратном значении при EMS помехи приведет к сбросу:

Копии регистров option bytes,

Регистры управления клоком,

Основной регистр клока

Регистр переключения

Компэл Компэл STMicroelectronics

Page 44: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

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

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

VDD/VSS(Основное) = 2.95 - 5.5В, снижение до

2.65 В -сброс: внешние источники для I/Os и для

встроенного стабилизатора.

VDDA/VSSA(Аналоговое) = 3 - 5.5В, снижение

до 2.65 В – сброс. VDDA и VSSA должны быть

соединены с VDD и VSS

VDDIO/ VSSIO(GPIO) = 2.95 - 5.5 V, снижение до

2.65 В – сброс : внешние источники для I/O.

VDDIO и VSSIO должны быть соединены с VDD

и VSS

VREF+/VREF- : внешние опорные напряжения

для АЦП(доступно в 64 и 80pin корпусах, в

остальных соединено внутренне с Vdda и Vssa).

VREF+ в диапазоне 2.75В - VDDA

VCAP : внешний конденсатор со значением >

470нФ, требуется для стабилизации

встроенного стабилизатора

Цифровые блоки

Аналоговые блоки

Стабилизатор напряж - Main regulator mode (MVR) - Ultra low power mode (ULP)

Ядро Память Цифровая периферия

I/Os

10-bit АЦП

16 MГц RC генератор HSI 38 КГц RC генератор LSI

Power Control (PWR) Clock detector Компараторы

VREF-

VDDA

VDD

VDDIO

VREF+

VCAP

Более подробно в «HW getting started Application Note»

Компэл Компэл STMicroelectronics

Page 45: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Детекторы напряжений

2 детектора напряжений

Power On Reset (POR) с Power

Down Capability (PDR)

Brown Out Detection (BOR) –

мониторинг основного питания,

м.б. деактивирован в режимах

пониженного потребления

VDD/VDDIO

BOR triggered by POR

VDD

NRST

Vth-

1V

Vth+

PDR restarted by BOR

Компэл Компэл STMicroelectronics

Page 46: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Режим/

Потребление (5В) /

Wake up RUN@HSI

Генератор

Стабилиз

атор

напряжен

ия

ЦПУ Периферия Wake-up

событие

Wait 2.15мA @16MГц HSE [0.56 мкс]

1.44мA @16MГц HSI [0.56 мкс]

ON ON OFF ON Int/ext ITs, BOR,

reset

Fast Active Halt 1.1мA @16MГц HSE, Flash ON [1 мкс]

1.1мA @16MГц HSE, Flash OFF [3 мкс]

200мкA @128КГц LSI [3 мкс]

OFF,

исключая

LSI/HSE

ON OFF

AWU и IWDG,

если

активировано

AWU, ext ITs,

BOR, reset

Slow Active Halt 68мкA @128КГц LSI, Flash ON [48 мкс]

12мкA @128КГц LSI, Flash OFF[50 мкс]

OFF,

исключая

LSI/HSE

OFF OFF

AWU и IWDG

если

активировано

AWU, ext ITs,

BOR, reset

Halt 62мкA, 5В, Flash ON [52 мкс]

6.5мкA, 5В, Flash OFF [54 мкс]

OFF OFF OFF OFF external ITs,

BOR, reset

Режимы пониженного потребления – STM8S

Компэл Компэл STMicroelectronics

Page 47: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Энергопотребление – STM8S

62мкА 6.5мкА**

Fast

Active

HALT

128кГц

200мкA

RUN

из

Flash

480мкА/МГц

RUN

из

RAM

200мкА/МГц

2.15мкА 1.44мкА*

WAIT

16МГц

Fast

Active

HALT

16MГц

1.1мкA

Slow

Active

HALT

128кГц

68мкA 12мкA**

HALT

*Используется HSI

**FLASH отключена

Компэл Компэл STMicroelectronics

Page 48: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики IWDG – STM8S

Вариант – таймер работает полностью независимо от основного приложения, в

фоне

8-bit PRESCALER

LSI

(128КГц) 8-bit

down counter

Prescaler Register

Reload Register

Key Register

IWDG Reset

HW/SW старт через option byte

Безопасность:

IWDG тактируется через

отдельный(LSI) кварц и остается

активным, даже если нет основного

клока

IWDG не может быть отключен

программно(LSI не может быть

остановлен)

Безопасная перезагрузка (ключ)

IWDG функционирует во всех

низкопотребляющих режимах,

исключая halt (LSI остановлен)

Для предотвращения IWDG сброса:

запись в IWDG_KR значения 0xAA и

значения интервала

Максимальное значение таймаута @LSI/2

(64КГц): 0.06мс ...... 1с

/2

Компэл Компэл STMicroelectronics

Page 49: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

WWDG характеристики – STM8S, STM8L15x

WWDG может быть активирован программно

и аппаратно

Конфигурируемое временное окно, м.б.

запрограммировано для определения

аварийного поведения приложения

Условия сброса

Сброс когда значение становится ниже

0x40 (T6=0)

Сброс если таймер перезагружается за

границами временного окна

Предотвращение WWDG сброса: запись

T[6:0] битов регулярных интервалов, пока

нижнее значение счетчик меньше чем

временное значение окна (W[6:0])

Мин – макс значение таймаута при 16MHz :

STM8S: 96.768мс ... 195.072мс (step 1.536мс)

STM8L15x: 0.77мс ... 49.15мс (step ~0.768мс)

CMP

W0 W1 W2 W3 W4 W5 W6 -

T0 T1 T2 T3 T4 T5 T6 WDGA

WWDG_CR

WWDG_WR

PRESCALER 12288

6-Bit Down Counter

SYSCLK

Запись WWDG_CR

компаратор = 1 когда

T6:0 > W6:0

WWDG Сброс

Нельзя обновить Окно обновления

T[6:0] CNT down counter

время

W[6:0]

3Fh

T6 bit

Сброс

Компэл Компэл STMicroelectronics

Page 50: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Линейка STM8S

Стандартная периферия

Компэл Компэл STMicroelectronics

Page 51: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S

Быстрый 10-бит АЦП (4МГц - 3.5мкс, 6МГц - 2.33мкс)

Встроенный точный 16МГц 1% RC

I²C, SPI и до 2 UART(IrDa, Smart Card...)

Мощный 16бит таймер управления двигателями

2 таймера 16-бит, 1 таймер 8-бит, 1 таймер AWU

2 сторожевых таймера

Низкоскоростной RC на 128КГц, адаптирован для

режимов низкого энергопотребления

До 68 I/O у 80 пин корпуса

Альтернативные комбинации портов I/O

Компэл Компэл STMicroelectronics

Page 52: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики GPIO

68 многофункциональных двунаправленных портов I/O в 80-пин корпусе

До 68 стандартных I/O(до 10 мА для стандартных I/O и до 20 мА для high-sink I/O(до 18 пин))

До 16 аналоговых входов

До 38 I/O могут использоваться как внешние прерывания

Все стандартные I/O разделены на 9 портов (GPIOA..GPIOI)

Индивидуальная конфигурация(направление, конфигурация, внешнее прерывание, частота)

Раздельные регистры для входных и выходных данных

Bit bandling для GPIO регистров

Некоторые I/O с возможностью переключения на 10 МГц

Контроль уменьшения шума EMC

Альтернативные функции (USART, TIM, I2C, SPI, CAN, …)

Компэл Компэл STMicroelectronics

Page 53: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики GPIO

Характеристики STM8S STM8L

Максим кол-во I/O

Количество портов

АЦП I/O

Внеш. прерываний I/O

80 pin (18 high sink)

До 9 x 8 бит, порты GPIOA..GPIOI

до 16 каналов АЦП

До 38 ножек для внешн. прерываний

80 pin

До 9 x 8 бит, порты GPIOA..GPIOI

До 24 каналов АЦП

До 40 внешних прерываний

Частота I/O,

OD возможность

2MГц – все ножки,

10MГц выбирается программно

Открытый коллектор для I2C

2MГц – все ножки,

10MГц выбирается программно

Открытый коллектор для I2C

Максимальная нагрузка

на ножку

high sink: 20мA @ 5В, 10мA @3 .3В

std pins: 10мA @ 5В, 4мA @ 3.3В

Общий ток: от 80 до 200мA

25мА для всех ножек

Общий ток: до 80мA

Альтернативные

функции

Output -> конфигурируется периферией,

может быть изменен SW(OD, pull-ups))

Input -> необходимо конфигурировать SW

Output -> конфигурируется периферией,

может быть изменен SW(OD, pull-ups))

Input -> необходимо конфигурировать SW

Состояние после сброса Clock connected на все I/O

Все I/O в режиме input floating

Clock connected на все I/O

Все I/O в режиме input floating

Компэл Компэл STMicroelectronics

Page 54: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Конфигурация GPIO

OUTPUT

CONTROL

ON

VDD_IO

VSS

VDD_IO

VSS

ON/OFF

Pu

ll -

UP

VDD_IO

OFF

Input Driver

Output Driver

Configuration

Mode

DD

R

CR1 CR2 /

ADCTDR

Analog Input 0 0 CR2 = 0

ADCTDR =1

Input floating 0 0 With

interrupt

capability

if set Input Pull-up 0 1

Open-drain

output

1 0 Speed

limited to

10MHz

if set Push-pull

Output

1 1

True

Open-drain

1 X X

X X

Only on I2C I/Os

X

Компэл Компэл STMicroelectronics

Page 55: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Простота

проектирования

Простота миграции

SPI, I²C, UART доступно

везде

Аналог на одной

стороне

Совместимость внутри линеек – STM8S

Компэл Компэл STMicroelectronics

Page 56: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Компэл STMicroelectronics

Характеристики АЦП

10-бит АЦП

16 мультиплексированных входных каналов

5 режимов преобразования

Функция аналогового сторожевого таймера(analog watchdog)

Время преобразования минимум 3.5 мкс

Частота тактирования АЦП: от 1 до 6 МГц

Диапазон измерения Vref- < Vin < Vref+

Vref- от 0 до 0.5 В; Vref+ от 2.75 до Vdda

Выбор: внешний триггер и таймер триггера

Одиночный или продолжительные режимы преобразования

Авто power-down в одиночном режиме

Прерывание по завершению преобразования

Выравнивание данных (правое/левое)

Предделитель тактовой частоты

Analog zooming(только при Vref+)

Компэл

Page 57: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Компэл

Характеристики АЦП

Свойства STM8S10x, STM8S90x (АЦП1) STM8S20x (АЦП2)

Количество

каналов

До 10 До 16

Разрешение(бит) 10 10

Выход 10-бит регистр для

одиночного режима

10x10 или 8x10бит буфер

10-бит регистр

Триггеры Внешний вывод (PD_3),

Timer1

Внешний вывод (PD_3), Timer1

Скорость @4MГц 3.5мкс,

@6MГц2.33мкс

@4MГц 3.5мкс,

@6MHz 2.33мкс

Флаги

прерывания

Конец преобразования

Перегрузка

Analog watchdog

Конец преобразования

Перегрузка

Опорное

напряжение

Соединено с Vdda, Vssa Отдельные выводы для 64 и 80 выводных корпусов

Рабочие режимы Одиночный,

непрерывный(буферизирован

ный), сканирования

Одиночный, непрерывный

Дополнительные

функции

Analog watchdog

Встроенный буфер

Zooming (при доступном Vref )

Компэл STMicroelectronics

Page 58: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема АПЦ1 – STM8S1x, STM8S90x

TIM1

AN

ALO

G M

UX

GPIO порт

АЦП1

VDDA

VSSA

ADC_IN0

ADC_IN1

.

.

.

Шина а

дреса/д

анны

х

Регистр данных (10бит)

ADCCLK Предделиткль: /2,/3,/4,.../18

FCLK

Аналоговый Watchdog

Регистр верхнего порога (10бит)

Регистр нижнего порога (10бит) AWD EOC OVER

AWDIE EOCIE OVERIE

Флаги

Биты разреш-я прер-я

Аналоговый

watchdog

Пр

ео

бр

азо

ван

ие з

ако

нч

ил

ась

Прерывание АЦП

Программный триггер

ADC_IN9

ADC_ETR

Буфер данных (10x10бит) или (8x10бит) **

*

* - одиночный и не буферизированный режим

** - буферизированный режим

PD3

Компэл Компэл STMicroelectronics

Page 59: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема АПЦ2 – STM8S2xx

TIM1

AN

ALO

G M

UX

GPIO порт

АЦП2

VREF+

VREF-

VDDA

VSSA

ADC_IN0

ADC_IN1

.

.

.

Шина а

дреса/д

анны

х

Регистр данных (10бит)

ADCCLK Предделитель: /2,/3,/4,.../18

FCLK

EOC

EOCIE

Флаги

Биты разрешения

прерываний

Пр

ео

бр

азо

вн

аи

е з

авер

шен

о

Прерывание АЦП

Программный триггер

ADC_IN15

ADC_ETR PD3

Компэл Компэл STMicroelectronics

Page 60: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Данные АЦП STM8S

Постоянное разрешение в 10бит

Правое выравнивание

10 бит разрешение

ADC_DRH ADC_DRL

D7 D6 D5 D4 D3 D2 D1 D0

10 бит разрешение

0 0 0 0 0 0 D1 D0

ADC_DRH ADC_DRL

D9 D8 D7 D6 D5 D4 D3 D2

Left alignment

0 0 0 0 0 0 D9 D8

Направление чтения

Направление чтения

Clock

Prescaler

fADC

SPSEL[2:0] Speed select

fMASTER

Компэл Компэл STMicroelectronics

Page 61: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Таймеры STM8S(1/3)

STM8S включает 6 таймеров:

Timer 1 – 16 бит, 4 канала, управление двигателем

Timer 2,3,5 – 16 бит, 3-2 канала, общего назначения

Timer 4,6 – 8 бит, 0 каналов, системный таймер

Компэл Компэл STMicroelectronics

Page 62: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Таймеры STM8S(2/3)

66

Компэл Компэл STMicroelectronics

Page 63: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S таймеры(3/3)

Св-ва/

Таймер

STM8S103 STM8S105/20x STM8S90x

+ + + + + + +

+ + +

+ + + + + + + + + +

+ + +

+ + + + + + + + + +

4 3 4 3 2 4 3

+ + + + + + +

+ + +

+ + +

+ + + + +

+ + +

5 4 1 5 4 3 1 5 4 1

2 2 1 2 2 2 1 2 2 1

+ + + + +

16b cnt

8b cnt

Up cnt

Dn cnt

Presc

CAPCOM

PWM

Motor ctrl

EXT trig.

Synchro.

Encoder

IRQ src

IRQ vect

CLK sel

1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6

Компэл Компэл STMicroelectronics

Page 64: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

CH3

CH2N

CH2

CH1

CH1N

STM8S. Таймер 1 (TIM1)

16-бит предделитель

Trigger/Clock

Контроллер

TIM5/TIM6

Clock

Auto Reload REG

16-бит up/dn счетчик

Capture Compare Capture Compare

Capture Compare Захват/Сравнение

ETR

TIM5(ITR 2)

TIM6(ITR 0)

BKIN

CH1

CH2

CH3

CH3N CH4 CH4

16-бит счетчик

Up, down и centered (up/down) режимы счета

Авто-перезагрузка

Программируемый предделитель

Повторяющийся счетчик

4 x 16 – бит каналов

Input Capture, PWM Input Capture

Output Compare, PWM outputs (edge или

center-aligned)

Режим одиночного импульса

Комплементарные выводы/Dead

time/Аварийный режим

Интерфейс энкодера, интерфейс датчика

Холла

Синхронизация

Reset, Triggered или Gated режимы

Вход сброса

Прерывания/События

Переполнение/опустошение счетчика

Инициализация счетчика

Trigger, Break, Commutation

Input capture, Output compare

Компэл Компэл STMicroelectronics

Page 65: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8. Режимы счета

3 режима счета:

Режим up counting

Режим down counting

Режим сenter-aligned

Пример для TIM1

Center Aligned Up counting Down counting

RCR = 0

RCR = 2

UEV

UEV

Компэл Компэл STMicroelectronics Компэл STMicroelectronics

Page 66: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

CH3

CH2

CH1

STM8S. Таймеры 2,3

4-бит предделитель

Auto Reload REG

Capture Compare Capture Compare ЗАХВАТ/СРАВНЕНИЕ

CH1

CH2

CH3

Internal Clock

16-бит счетчик

Режим счета Up

Авто перезагрузка

Программируемый 4 - бит

предделитель

События/прерывания

Переполнение/инициализация

Input capture/Output compare

3 x 16 бит канала

Input capture

Output compare

PWM (edge - aligned)

Режим одиночного импульса

16-бит up/dn счетчик

Компэл Компэл STMicroelectronics

Page 67: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Таймер 4

3-бит предделитель

Auto Reload REG

8-бит счетчик(UP)

8 – бит счетчик

Up – режим счета

Авто перезагрузка

3 – бит программируемый

предделитель (1/2/3/8/16/64/28)

События/Прерывания

переполнение

Internal Clock

Компэл Компэл STMicroelectronics

Page 68: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

CH3

CH2

CH1

STM8S. Таймер 5

4-бит пред-ль

Trigger/Clock

Контроллер

TIM1/TIM6

Clock

Auto Reload REG

16-бит up счетчик

Capture Compare Capture Compare ЗАХВАТ/СРАВНЕНИЕ

ETR

TIM1(ITR 3)

TIM6(ITR 0)

CH1

CH2

CH3

16-бит счетчик

Up режим счета

Авто перезагрузка

Программируемый 4-бит пред-ль

События/Прерывания

переполнение, инициализация

Input capture

Output compare

Схема синхронизации

Внешний сигнал

Внутренние таймеры

3 x 16 бит канала

Input capture

Output compare

PWM (edge - aligned)

Режим одиночного импульса

Компэл Компэл STMicroelectronics

Page 69: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Таймер 6

3-бит предделитель

Trigger/Clock

Контроллер

TIM1/TIM5

Clock

Auto Reload REG

8-бит счетчик(up)

TIM1(ITR 3)

TIM5(ITR 2)

8-бит счетчик

Режим счета up

Авто перезагрузка

3-бит программируемый

предделитель

(1,2,3,8,16,64 и 128)

События & Прерывания

Переполнение, инициализация

Выход триггера

Схема синхронизации

Внешний сигнал

Коннект с внутренними

таймерами

Компэл Компэл STMicroelectronics

Page 70: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Режим одиночного импульса

One Pulse Mode (OPM) частный

случай обычного режима

Позволяет счетчику генерировать

одиночный импульс с

программируемой длиной после

программируемой задержки

2 режима работы, конфигурируется

программно:

Одиночный импульс

Повторяющийся импульс

TIM_ARR

TIM_CCR1

tDelay tPulse t

TI2

OC1REF

OC1

Компэл Компэл STMicroelectronics

Page 71: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Пример комплементарного режима

Dead-time disabled

OCxREF

OCx

OCxN

t

OCxREF

OCx

OCxN

t

delay

Dead-time enabled

OCx

OCxN

Dead-time конфигурируется в зависимости от

характеристик МК

Подробнее в даташите

TIM1 – комплементарный выход ШИМ

Компэл Компэл STMicroelectronics

Page 72: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Таймер 1 – интерфейс энкодера

Энкодер используется для определения позиции и скорости движения (линейной или угловой)

Счетчик предоставляет о текущей позиции (угловую позицию электрического ротора мотора)

Получение динамической информации (скорость, ускорения), возможность измерения количества импульсов между двумя периодическими событиями, генерируемыми другим таймером

Пример связки энкодер-микроконтроллер:

Внешний инкрементный датчик положения может быть напрямую соединен с МК без внешней интерфейсной логики.

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

Контроллер

триггера

Контроллер

Интерфейс

энкодера

Выбор полярности & Фронт

Контроллер TI1

Выбор полярности & Фронт

Контроллер TI2

Компэл Компэл STMicroelectronics

Page 73: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Синхронизация таймеров

Trigger

Controller

TRGO

TIM1

TRGO from TIM5

TRGO from TIM6

TIM1_CH1

TIM1_CH2

Trigger

Controller

TIM5

TRGO from TIM6

TRGO from TIM1

Trigger

Controller

TIM6

TRGO from TIM1

TRGO from TIM5 TIM5_CH2 TIM5_CH1

TRGO

TRGO

Возможная синхронизация среди TIM1,TIM5, TIM6

Компэл Компэл STMicroelectronics

Page 74: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Синхронизация таймеров – пример(1/3)

Режим каскада:

TIM_A главный таймер для TIM_B, TIM_B конфигурируется как slave

для TIM_A и master для TIM_C.

SLAVE / MASTER

MASTER

TIM_B ITR 1

ITR 0 prescaler

Trigger Controller

Update counter

TIM_C ITR0

ITR 1

prescaler counter

SLAVE

ITR3

TIM_A

Trigger Controller

prescaler

counter Update

CLOCK

TRGO

ITR 2

TRGO

Компэл Компэл STMicroelectronics

Page 75: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Один master, несколько slave

TIM_A master для TIM_B, TIM_C и TIM_D.

MASTER

TIM_A

Trigger Controller

prescaler

counter Update

CLOCK

TIM_C

ITR0

ITR3

prescaler counter

SLAVE 2

ITR1

TIM_B

ITR0

ITR2

prescaler counter

SLAVE 1

ITR1

TIM_D

ITR2

ITR3

prescaler counter

SLAVE 3

ITR1

Синхронизация таймеров – пример(2/3)

Компэл Компэл STMicroelectronics

Page 76: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Таймеры и внешняя синхронизация через триггер:

TIM_A, TIM_B и TIM_C – slave для внешнего сигнала, соединенного с

соответствующими выводами.

Trigger

Controller TRGO

TIM_A

Trigger

Controller TRGO

TIM_B

Trigger

Controller TRGO

TIM_C

Внешний триггер

Синхронизация таймеров – пример(3/3)

Компэл Компэл STMicroelectronics

Page 77: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Схема AWU

6-бит

СЧЕТЧИК

AWU

счетчики

LSI RC

128КГц

6-бит

Пред-ль

AWU_EN & HALT/WAIT

AWU IRQ

15 времен

HSE

4-24MГц

Пред-ль

до 128КГц

К TIM для калибровки

15мкс – 31сек

Компэл Компэл STMicroelectronics

Page 78: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Линейка STM8L

Системная периферия

Компэл Компэл STMicroelectronics

Page 79: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Карта памяти – STM8L101

До 8Кб памяти программ (Flash) базирующейся на EEPROM технологии

Часть памяти может конфигурироваться(options bytes) как EEPROM(до 2Кб)

Защита от записи с Memory Access Security System (MASS ключи)

Программируемая User Boot Code area (UBC) с защитой от записи

Одно прерывание,

сигнализирующее о завершении

операций

программирования/очистки памяти

и о недопустимых операциях с

памятью

0x8000

0x4800

0x0000

0x5000

0x9FFF

0x6000

0x9800

min

0x8080

Компэл Компэл STMicroelectronics

Page 80: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Карта памяти – STM8L15x/16x

До 64 Кб памяти программ (Flash)

базирующейся на EEPROM

технологии и до 2К EEPROM

Защита от записи с Memory Access

Security System (MASS ключи)

Программируемая User Boot Code

area (UBC) с защитой от записи

Автоматическая защита от чтения

частной области памяти(PCODE)

Загрузчик в ROM-памяти

Одно прерывание,

сигнализирующее о завершении

операций

программирования/очистки памяти

и о недопустимых операциях с

памятью

0x8000

0x4800

0x0000

0x5000

0x1000

0xFFFF

0x6000

0x8080

Компэл Компэл STMicroelectronics

Page 81: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

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

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

VDD/VSS = 1.65 - 3.6 В

Цифровые блоки

Аналоговые блоки

Стабилизатор напряж - Main regulator mode (MVR) - Ultra low power mode (ULP)

Ядро Память Цифровая периферия

I/Os

16 MГц RC генератор HSI 38 kHz RC генератор LSI

Power Control (PWR) Clock detector Компараторы

VDD

Компэл Компэл STMicroelectronics

Page 82: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

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

VDD/VSS = 1.8 – 3.6В, снижение до 1.65 В -сброс: внешние источники для I/Os и для встроенного стабилизатора.

VDDA/VSSA = 1.8 - 3.6В, снижение до 1.65В - сброс: внешние источники для аналоговой периферии(если используется ADC1, минимальное напряжение VDDA - 1.8В). VDDA и VSSA должны быть объединены с VDD и VSS

VDDIO/VSSIO = 1.8 - 3.6В, снижение до 1.65В -сброс: внешние источники для I/Os. VDDIO and VSSIO должны быть объединены с VDD и VSS

VREF+/VREF- : внешнее опорное напряжение для АЦП и ЦАП. Диапазон VREF+ от 1.8В до VDDA

Цифровые модули

Аналоговые модули

Регулятор напряжения - Main regulator mode (MVR) - Ultra low power mode (ULP)

Ядро Память Цифровая периферия

I/Os

12-бит ЦАП

16 МГц RC генератор HSI 38 kHz RC генератор LSI

Power Control (PWR) Clock detector Компараторы

VREF-

VDDA

VDD

ЦАП

VDDIO

VREF+

Компэл Компэл STMicroelectronics

Page 83: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Детекторы напряжений

2 детектора напряжений

Power On Reset (POR) с Power

Down Capability (PDR)

Brown Out Detection (BOR) –

мониторинг основного питания,

м.б. деактивирован в режимах

пониженного потребления

VDD/VDDIO

BOR triggered by POR

VDD

NRST

Vth-

1V

Vth+

PDR restarted by BOR Программируемый детектор

напряжения(PVD) , только STM8L15x

Активируется программно

Слежение за VDD относительно порога PVD

Порог конфигурируется от 1.85В до 3.05В с шагом 200мВ + 1 пин используется для индикации внешнего порога

Генерируется прерывание когда VDD < порог VDD > Порог

PVD выход и возможность прерывания

VDD

100мВ гистерезис

PVD

вывод

PVD порог

Компэл Компэл STMicroelectronics

Page 84: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Стабилизатор напряжения

Стабилизатор напряжения имеет 2 режима работы:

Run режим (MVR)

Режим пониженного энергопотребления(ULP) для Halt и Active-Halt

режимов работы МК

VDD

VCore

1.8В

Main Voltage Regulator (MVR)

Ultra Low Power Regulator (ULP)

Core Memories Digital Peripherals

1.8В– 3.3В

Voltage Regulator

Компэл Компэл STMicroelectronics

Page 85: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

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

STM8L15x поддерживают 5 режимов низкого потребления:

Режим Свойства

Wait :

- Wait for event (WFE)

- Wait for interrupt (WFI)

- ЦПУ остановлено,

- Выбранная периферия работает.

- Регистры и RAM контекст сохранен,

Low Power Run

- ЦПУ работает

- Flash, EEPROM, стабилизатор напряжения и вся периферия

остановлена, исключая RTC и 1 периферийный модуль

- Выполнение программы из RAM с Low Speed Oscillator

Low Power Wait

- ЦПУ остановлено

- EEPROM отключено и стабилизатор установлен в Ultra Low Power

режим

- Все прерывания замаскированы

- RTC и 1 периферийный модуль активны

Active HALT

RTC on

- High Speed clock off, POR/PDR On,

- RAM ON (контекст регистров сохранен),

AWU - High Speed clocks off,

- RTC от низкоскоростного встроенного RC

HALT - All clocks off, POR/PDR On,

- RAM ON (контекст регистров сохранен)

- RTC OFF

Компэл Компэл STMicroelectronics

Page 86: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Энергопотребление – STM8L

POR/PDR ON RAM содержимое сохранено Время пробуждения из Active HALT 4мкс

1.0 мкA

Active

HALT

RTC

0.4 мкA

HALT

5.1мкА

LP

RUN

32кГц

RAM

LP

WAIT

32кГц

RAM

3.0 мкA

LP Wait режим: LSI/LSE ON, периферия может быть активирована

ACTIVE HALT режим: Все источники тактирования отключены, RTC ON

HALT mode: Все источники тактирования отключены, RTC OFF

RUN

из

Flash

192мкА/MГц

RUN

из

RAM

90мкА/MГц

WAIT

16 МГц

Компэл Компэл STMicroelectronics

Page 87: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

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

Режимы

Функциональность Режимы и потребление

ЦПУ Периф

High

Speed

Osc

RTC

календа

рь

LSI

LSE FLASH RAM

Значения при

3В / 25°C

Значения при

@ 3В / 85°C

LP RUN ON Can be

enabled OFF ON ON OFF ON 5.1мкA

LP WAIT OFF Can be

enabled OFF ON ON OFF ON 3.0мкA

ACTIVE Halt

(полный RTC)

OFF

ON ON OFF ON 1.0мкA* 1.4мкA

ACTIVE Halt

(только AWU) OFF ON OFF ON 0.8мкA* 1.2мкA

HALT OFF OFF OFF ON 0.4мкA* 1мкA

6.8мкA

4.4мкA

5мкс

wake-

up

(using

HSI)

Компэл Компэл STMicroelectronics

Page 88: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Линейка STM8L

Стандартная периферия

Компэл Компэл STMicroelectronics

Page 89: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L – контроллер тактирования

Clock Security System (CSS)

Активируется единожды, активна после сброса

Автопереключение на HSI/8 когда сбой HSE + прерывание

Peripheral Clock Gating (PCG)

После сброса, clock не активен на всей периферии(STM8L)

Возможность отключение clock для следующей периферии:

USART, LINUART, SPI, I2C, TIMERS, ADC, CAN, AWU

Controllable Clock Output (CCO)

Возможность вывода внутреннего clock

Максимальная частота 10MГц

Компэл Компэл STMicroelectronics

Page 90: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема тактирования – STM8L101

HSI RC @16MГц, откалиброван на фабрике +/-2%, возможность

программной калибровки до +/-1%

LSI RC @38КГц, откалиброван на фабрике до +/-11% точности

Конфигурация после сброса(RESET)

HSI RC

16MГц

LSI RC

38КГц

/8

/4

/2

/1

AWU

SWIM

IWDG

периферия

CPU

WWDG

CCOSEL[1:0]

fMASTER/16

fMASTER

fMASTER/2

fMASTER/4

CCO

fMASTER

Компэл Компэл STMicroelectronics

Page 91: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема системы тактирования – STM8L15x

HSI RC @16MГц, откалиброван на фабрике +/-2%, возможность

программной калибровки до +/-1%

LSI RC @38КГц, откалиброван на фабрике до +/-5% точности

HSE Osc

1-16MГц

CSS

HSI RC

16MГц

LSI RC

38КГц /1

/2

/4

/8

/16

/32

/64

/1

/2

/4

/8

/16

/32

/64

/128

IWDG

RTC

LCD

CPU

память

периферия

OSC1

OSC2

CCO

CCOSEL[1:0]

fHSI

fLSI

fHSE

fLSE

LSE OSC

32,768КГц

OSC32

OSC32

/1

/2

/4

/8

/16

/32

/64

Конфигурация после сброса(RESET)

Компэл Компэл STMicroelectronics

Page 92: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики GPIO

Характеристики STM8S STM8L

Максим кол-во I/O

Количество портов

АЦП I/O

Внеш. прерываний I/O

68 / 80pin (18 high sink)

До 9 x 8 бит, порты GPIOA..GPIOI

до 16 ADC каналов

До 38 ножек для внешн. прерываний

67 / 80 pin

До 8 x 8 бит, порты GPIOA..GPIOI

До 24 каналов АЦП

До 40 внешних прерываний

Частота I/O,

OD возможность

2MГц – все ножки,

10MГц выбирается программно

True OD для I2C

2MГц – все ножки,

10MГц выбирается программно

True OD для I2C pins

Максимальная нагрузка

по току на пин

high sink: 20мA на 5В, 10мA на 3.3В

std pins: 10мA на 5В, 4мA на 3.3В

Общий ток: от 80 до 200мA

25мА для всех ножек

Общий ток: до 80мA

Альтернативные

функции

Output -> конфигурируется периферией,

может быть изменен SW(OD, pull-ups))

Input -> необходимо конфигурировать SW

Output -> конфигурируется периферией,

может быть изменен SW(OD, pull-ups))

Input -> необходимо конфигурировать SW

Состояние после сброса Clock connected на все I/O

Все I/O в режиме input floating

Clock connected на все I/O

Все I/O в режиме input floating

Компэл Компэл STMicroelectronics

Page 93: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L15x - RTC

Полноценный календарь с Секундами, Минутами, Часами (12 или 24

формат), День недели (День), День месяца (Дата), Месяц и Год в BCD

формате(binary coded decimal) с автоматическим учетом 28, 29 (високосный

год), 30 и 31 дней месяца.

Программируемый будильник с прерыванием, авто пробуждением,

выделенной ножкой в/в.

Прерывание авто-пробуждения с программируемым периодом, работа в

режимах пониженного энергопотребления

2 альтернативных функции:

Вывод с 512 Гц (с LSE и корректным значением пред-делителя).

Вывод сигнализирующий о событии будильника и авто-пробуждения

Компэл Компэл STMicroelectronics

Page 94: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L15x – функциональная схема

HSE

Wake-Up

16bit autoreload Timer

Asynchronous

4bit prescaler Periodic wake up Flag

Alarm Flag

RTC_ALARM Pin

Calendar

Day/date/month/year HH:mm:ss

(12/24 format)

Alarm ss, mm, HH/date

RTCSEL [3:0]

WUCKSEL [2:0]

RTC_CR2_OSEL[1:0]

RTC_CALIB Pin

512 Hz clock output

HSI

LSE

LSI

RTC

Prescaler

RTCCLK

RTCDIV [2:0]

PREDIV_A [6:0]

PREDIV_S [12:0]

Asynchronous

7bit prescaler

Synchronous

13bit prescaler

122us – 32sec

Компэл Компэл STMicroelectronics

Page 95: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Календарь

Время

Дата

Инициализация или чтение осуществляется через 6 теневых регистра, TRx и DRx.

STM8L15x – календарь RTC

DR2 DR1 DR3 TR3 TR1 TR2

HH : mm : ss

Теневые

регистры

Актуальные

регистры День Месяц Дата Год

Компэл Компэл STMicroelectronics

Page 96: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L. Программируемый будильник

Полностью конфигурируем программно

Вывод микроконтроллера из Active-Halt режима

Событие будильника может быть выведено на специальный вывод с конфигурируемой полярностью

Alarm flag устанавливается в случае если секунды, минуты, часы или дата соответствуют запрограммированному значению в регистре ALRMARx

Календарные секунды, минуты, часы или дата могут быть выбраны независимо(маскирование)

Calender

Day/date/month/year HH:mm:ss

(12/24 format)

Alarm ss, mm, HH/date

Alarm Flag

RTC_ALARMAx

registers

Компэл Компэл STMicroelectronics

Page 97: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

AWU таймер – STM8L101

AWU и Low Speed clock

AWU разработан для работы в Active Halt Low Power

режиме

Определенный вектор прерывания AWU

Измерение частоты LSI

Возможность коннекта к LSI одного встроенного таймера.

Это позволяет определять точность времени на AWU и

производить калибровку.

Компэл Компэл STMicroelectronics

Page 98: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

AWU. STM8L101

6-bit

COUNTER

AWU

counters

LSI RC

38kHz

6-bit

prescaler

AWU_EN & HALT/WAIT

AWU IRQ

15 врем. интерв

К TIM для калибровки

15мкс – 31 сек

Компэл Компэл STMicroelectronics

Page 99: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

DMA – STM8L15x

4 независимых канала(0..3)

4 программных уровня приоритета: Very High, High, Medium и Low

Программируемый размер данных: байт или полуслово (16бит) с программируемым количеством передаваемых данных ( до 255)

Работа в низкопотребляющих и ожидающих режимах

2 флага события / прерывание

DMA половина объема,

DMA полный объем

Независимые источники и получатели:

Память - память (канал 3),

Периферия - память

Память - периферия

Компэл Компэл STMicroelectronics

Page 100: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

DMA контроллер

DMA позволяет использовать до 4х каналов

DM

A

DMA запрос

ADC1

Запрос высокого приоритета Запрос низкого приоритета

Канал 0 Канал 1 Канал 2 Канал 3

I2C1_RX

Канал 3 EN бит Канал2 EN бит Канал1 EN бит Канал 0 EN бит

ADC1 ADC1

ADC1

TIM2_CC1

TIM3_Up

TIM1_CC3

TIM4_Up

TIM4_Up TIM4_Up

TIM4_Up

SPI1_TX SPI1_RX

USART1_T

X

TIM2_Up

TIM3_CC1

TIM1_CC4

TIM3_CC2

TIM1_Up

TIM1_CC1

TIM1_COM

USART1_R

X TIM1_CC2

DAC

I2C1_TX

Компэл Компэл STMicroelectronics

Page 101: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

IWDG – STM8L

7-bit PRESCALER

LSI

(38КГц) 8-bit down counter

Prescaler Register

Reload Register

Key Register

IWDG Reset

HW/SW старт через option bytes

Безопасность:

IWDG тактируется через

отдельный(LSI) кварц и остается

активным, даже если нет основного

клока

IWDG не может быть отключен

программно(LSI не может быть

остановлен)

Безопасная перезагрузка (ключ)

IWDG функционирует во всех

низкопотребляющих режимах,

исключая halt (LSI остановлен)

Для предотвращения IWDG сброса:

запись в IWDG_KR значения 0xAA и

значения интервала

Максимальное значение таймаута @LSI

(38КГц): 0.01мс ...... 1.73с

Вариант использованя – таймер работает полностью независимо от основного

приложения, в фоне

Компэл Компэл STMicroelectronics

Page 102: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

WWDG характеристики – STM8L15/STM8S

WWDG может быть активирован программно

и аппаратно

Конфигурируемое временное окно, м.б.

запрограммировано для определения

аварийного поведения приложения

Условия сброса

Сброс когда значение становится ниже

0x40 (T6=0)

Сброс если таймер перезагружается за

границами временного окна

Предотвращение WWDG сброса: запись

T[6:0] битов регулярных интервалов, пока

нижнее значение счетчик меньше чем

временное значение окна (W[6:0])

Мин – макс значение таймаута при 16MHz :

STM8S: 96.768мс ... 195.072мс (шаг 1.536мс)

STM8L15x: 0.77мс ... 49.15мс (шаг ~0.768мс)

CMP

W0 W1 W2 W3 W4 W5 W6 -

T0 T1 T2 T3 T4 T5 T6 WDGA

WWDG_CR

WWDG_WR

PRESCALER 12288

6-Bit Down Counter

SYSCLK

Запись WWDG_CR

компаратор = 1 когда

T6:0 > W6:0

WWDG Сброс

Нельзя обновить Окно обновления

T[6:0] CNT down counter

время

W[6:0]

3Fh

T6 bit

Сброс

Компэл Компэл STMicroelectronics

Page 103: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики АЦП(1/2)

Время преобразования АЦП 1мкс (SYSCLK 16МГц) с разрешением до 12-бит

Диапазон напряжения питания: 1.8 В - 3.6 В

Максимальная скорость при напряжении питания от 2.4 В до 3.6 В

Меньшая скорость при напряжении питания от 1.8 В до 2.4 В

Входной диапазон преобразования: VREF- ≤ VIN ≤ VREF+

До 27 мультиплексированных каналов:

25 внешних каналов: от 0 до 24 канала(ножки ADC1_IN0 - ADC1_IN24)

2 внутренних канала:

Встроенное опорное напряжение VREFINT

Выход температурного датчика(TS)

2 группы каналов:

24 медленных канала(1.31 мкс): канал0 - канал 23

3 быстрых канала(1 мкс): канал 24, канал VREFINT и канал TS

ST

M8L

151

S

TM

8L

101

S

TM

8L

152

Компэл Компэл STMicroelectronics

Page 104: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Совместимость с DMA

Одиночный и продолжительный режимы преобразования

Многоканальный режим преобразования(scan через DMA)

Внешние триггер для старта преобразования (внешние ножки, таймера)

Программируемое sampling time – независимо для быстрой и медленных групп

Правое выравнивание данных

Analog watchdog с заданием верхнего и нижнего порога

Генерация прерываний:

Завершение преобразования

Analog watchdog

Характеристики АЦП(2/2)

Компэл Компэл STMicroelectronics

Page 105: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема АЦП – STM8L15x

Внешнийl TRIG1

TIM1

TIM2

AN

ALO

G M

UX

GPIO порт

Темпер датчик

VREFINT

АЦП

VREF+

VREF-

VDDA

VSSA

ADC_IN0

ADC_IN1

ADC_IN24

.

.

.

Шина а

дреса/д

анны

х

Регистр данных (12/ 10 / 8 / 6 бит)

DMA запрос

ADCCLK Предделитель: /1,/2

FCLK

Аналоговый Watchdog

Регистр верхнего порога (12бит)

Регистр нижнего порога (12бит) AWD EOC OVER

AWDIE EOCIE OVERIE

Флаги

Биты разрешения

прерываний

Аналог watchdog

Пр

ео

бр

азо

ван

ие з

авер

шен

о

Прерывание АЦП

Программный триггер

PA6 PD0

ADC_IN23

Компэл Компэл STMicroelectronics

Page 106: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Время сэмплирования в АЦП – STM8L15x

PADC_CLK, до 16MHz, приходит с SYSCLK через предделитель

(/1, /2, /4, /8, /16, /32, /64 или /128)

ADCCLK приходит с PADC_CLK через пред-делитель (/1 или /2)

Программируемое время сэмплирования для каждой группы

каналов:

ADCCLK ADC Prescaler: Div1 or Div2

PCLK_ADC

96 cycles

9 cycles

192 cycles

48 cycles

16 cycles

24 cycles

4 cycles

384 cycles

Sam

ple

Tim

e

Sele

ctio

n

SMPx[2:0]

SMP1 : for slow channels

SMP2 : for fast channels

Компэл Компэл STMicroelectronics

Page 107: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Analog to digital converter block

Группа быстрых

каналов

Группа медленных каналаов

Режим scan в АЦП – STM8L15x

До 27 преобразований (с различным временем сэмплирования для

каждой группы).

Example: - Каналы преобразования: 0; 2; 5; 18; 23; 24; VREFINT.

1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1

0 1 2 3 4 5 6 7 8 9 1

0

1

1

1

2

1

3

1

4

1

5

1

6

1

7

1

8

1

9

2

0

2

1

2

2

2

3

1

24

1 0

VREFIN

T

TS

Scan

status

Каналы

Scan Direction

Digital Value

Компэл Компэл STMicroelectronics

Page 108: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Данные АЦП – STM8L15x

Конфигурируемое разрешение - 6, 8, 10 или 12 бит

При снижении разрешения, время преобразования также

снижается

Right alignment

12 bit resolution

0 0 0 0 D11 D10 D9 D8

ADC_DRH ADC_DRL

D7 D6 D5 D4 D3 D2 D1 D0

10 bit resolution

8 bit resolution

0 0 0 0 0 0 D11 D10

ADC_DRH ADC_DRL

D9 D8 D7 D6 D5 D4 D3 D2

ADC_DRL

D11 D10 D9 D8 D7 D6 D5 D4

ADC_DRL

0 0 D11 D10 D9 D8 D7 D6 6 bit resolution

Read direction

Компэл Компэл STMicroelectronics

Page 109: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

АЦП. Аналоговый Watchdog

Программируемые нижний и высший пороги:

10 бит – STM8S10x

12 бит – STM8L15x

Выбранный канал контролируется аналоговым watchdog

Генерация прерывания по низкому или высокому порогу

Регистр статуса

Аналоговый Watchdog

Низкий порог

Темпер датчик

VREFINT

ADC_IN0

ADC_IN1

ADC_IN25

.

.

.

AWD

Высокий порог

Компэл Компэл STMicroelectronics

Page 110: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

DMA в STM8L15x

Генерация прерывания по окончании преобразования в режиме сканирования

Генерация прерывания при попытке записи данных в не прочитанный буфер

Пример:

- Преобразование каналов 0, 1, 2, 3, 4, 5, 6, 7 и 8

- Преобразованные данные в ConvertedValue_Tab[9]

- Автоматический инкремент адреса DMA

Channel0 Channel1 Channel2 Channel3 Channel4 Channel5 Channel6 Channel7 Channel8

DMA Request

Channel8 conversion result

Channel7 conversion result

Channel6 conversion result

Channel5 conversion result

Channel4 conversion result

Channel3 conversion result

Channel2 conversion result

Channel1 conversion result

Channel0 conversion result

ADC DR register .

.

.

DMA Request

DMA Request

DMA Request

DMA Request

DMA Request

DMA Request

DMA Request

DMA Request

ConvertedValue_Tab[9]

Компэл Компэл STMicroelectronics

Page 111: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема ЦАП – STM8L15x

тригге

р

TIM4_TRGO

VREF+

VDDA

VSSA

DAC_OUT

DMA запрос

Регистр контроля ЦАП

Логика контроля Data Holding

Registers DHR

SWTRIGx

TSEL[2:0]

DM

AE

N

12 или 8 бит 12 бит

12 бит

DMA

прерывание

Data Output Register DOR

TE

N

DAC

DAC Output voltage = VREF+ x (DOR / 4095)

8 или 12-бит ЦАП,

1мкс время преобразования

Внутренний буфер 5kΩ/50pF

ЦАП при 1.8В - 3.6 В

Выход ЦАП: 0 ≤ VOUT ≤ VREF+

Левое или правое выравнивание в

12-бит режиме

Внешняя синхронизация - TIM4

DMA - CH3

Компэл Компэл STMicroelectronics

Page 112: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Inverting input

STM8L15x. Обзор компараторов

STM8L15x содержит COMP1 и COMP2

COMP1 с фиксированным порогом - VREFINT = 1.22 V

COMP2(rail-to-rail) с возможностью выбирать пороги

Два компаратора могут быть использованы совместно, режим

окна

1.22В

Bias from Band gap

+

-

Fast / Slow

+

-

Rail to rail

Внешний вход

ЦАП

Digital

Digital

Конфигурация

окна

COMP1

COMP2 Не инвертируемый вход

Не инвертируемый вход

Инвертируемый вход

Компэл Компэл STMicroelectronics

Page 113: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L10x. Обзор компараторов

STM8L10x содержит 2 компаратора(COMP1 и COMP2) sharing

the same current bias

COMP1 и COMP2 использую одинаковое опорное

напряжение(инвертирующий вход) – земля или внешнюю ножку

МК(выборочно)

Каждый компаратор имеет 4 входных канала(не инвертирующий

вход)

Генерация прерывания по нарастающему фронту(выход из Wait

режима энергопотребления)

Input capture или break generation на TIM2 или TIM3 (выборочно –

по переднему или заднему фронту)

Компэл Компэл STMicroelectronics

Page 114: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Comparators schematic (STM8L10x) • Schematic:

-

+ TIM2 input capture

1

COMP1

-

+

COMP2

TIM2 break

TIM2 input capture 2

TIM3 input capture

1

interrupt

COMPREF

POL

POL

CNF_TIM[1:0]

CNF_TIM[1:0]

&

IE2 &

IE1

COMP2_CH[0:3]

COMP1_CH[0:3]

IO

IO

IO

IO

IO

IO

IO

IO

IO

Компэл Компэл STMicroelectronics

Page 115: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

LCD контроллер – STM8L152

Высокая частота смены информации(30..100Гц)

Управление до 8 x 40 или 4 х 44 сегмента

Программный выбор между внешним и внутренними

источниками напряжения

Обновление через прерывание

Контроль контраста

Программирование частоты мерцания пикселей (0.5

– 4Гц)

Поддержка режимов пониженного потребления

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

тактирования LCD

Компэл Компэл STMicroelectronics

Page 116: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

135

STM8L. Таймеры

В линейке STM8L доступно до пяти таймеров

В STM8L101 недоступен TIM1

Компэл Компэл STMicroelectronics

Page 117: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

136

CH3

CH2N

CH2

CH1

CH1N

16-Bit Prescaler

Trigger/Clock

Controller

Trigger

Output/ADC

Clock

Auto Reload REG

+/- 16-Bit Counter

Capture Compare Capture Compare

Capture Compare Capture Compare

ETR

TIM3(ITR 2)

TIM5(ITR 1)

TIM4(ITR 0)

BKIN

CH1

CH2

CH3

CH3N

Break от COMP2

STM8L. Таймер 1

16-бит счетчик

Up, down и centered (up/down) режимы счета

Авто-перезагрузка

Повторяющийся счетчик

3 x 16 – бит каналов

Input Capture, PWM Input Capture

Output Compare, PWM outputs (edge или

center-aligned)

Режим одиночного импульса

Комплементарные выводы/Dead

time/Аварийный режим

Интерфейс энкодера, интерфейс датчика

Холла

Синхронизация

Поддержка DMA

Прерывания/События

Переполнение/опустошение счетчика

Инициализация счетчика

Trigger, Break, Commutation

Input capture, Output compare

TIM2(ITR 3)

Компэл Компэл STMicroelectronics

Page 118: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Источники прерываний

8 запроса прерываний на 3 векторах:

Break input

Trigger event

Update event (overflow,

underflow…)

Commutation event

Capture / compare 1 event

Capture / compare 2 event

Capture / compare 3 event

Capture / compare 4 event

Break Interrupt Enable

Break Flag status

TO IRQ Handler N°17

TO IRQ Handler N°23

Interrupt Enable

Trigger/Update/Commutation Flag status

Capture/Compare Interrupt Enable

Capture/Compare Flag status

TO IRQ Handler N°24

Компэл Компэл STMicroelectronics

Page 119: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

DMA совместимость

6 запросов DMA:

Commutation event

Capture / Compare 1 event

Capture / Compare 2 event

Capture / Compare 3 event

Capture / Compare 4 event

Update event (overflow, underflow…)

2 режима DMA :

Single mode: одиночный регистр передается в/из одиночный регистр TIM

Burst mode: осуществляется передача блока регистров таймера

Компэл Компэл STMicroelectronics

Page 120: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L. Режимы счета

3 режима счета:

Режим up counting

Режим down counting

Режим сenter-aligned

Пример для TIM1

Center Aligned Up counting Down counting

RCR = 0

RCR = 2

UEV

UEV

Компэл Компэл STMicroelectronics

Page 121: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

CH2

CH1

STM8S. Таймеры 2, 3, 5

3-бит предделитель

Auto Reload REG

Capture Compare Capture Compare ЗАХВАТ/СРАВНЕНИЕ

CH1

CH2

Internal Clock

16-бит счетчик

Режим счета Up/Down

Авто перезагрузка

Программируемый 3 - бит

предделитель

DMA совместимость

События/прерывания

Переполнение/инициализация

Input capture/Output compare

Break

Trigger

2 x 16 бит канала

Input capture

Output compare

PWM (edge - aligned)

Режим одиночного импульса

16-бит up/dn счетчик

Trigger/Clock

Controller

Timers/

DAC/ ADC TIM3(ITR 2)

TIM1(ITR 1)

TIM2(ITR 3)

ETR

Компэл Компэл STMicroelectronics

Page 122: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L. Таймер 4

3-бит пред-ль

Trigger/Clock

Controller

Timers/DAC

Clock

Auto Reload REG

8-бит up-счетчик

8 – бит счетчик

Up – режим счета

Авто перезагрузка

3 – бит программируемый пред-

делитель

(1,2,3,8,16,64 и 128)

События/Прерывания

переполнение, обновление

Вход триггера

Запросы DMA

Схема синхронизации

Внешний сигнал

Коннект с таймерами

TIM3(ITR 2)

TIM1(ITR 1)

TIM5(ITR 0)

TIM2(ITR 3)

Компэл Компэл STMicroelectronics

Page 123: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8L10x - синхронизация таймеров

Trigger

Controller

TRGO

TIM2

TRGO from TIM3

TRGO from TIM4

TIM2_CH1

TIM2_CH2

Trigger

Controller

TIM3

TRGO from TIM4

TRGO from TIM2

Trigger

Controller

TIM4

TRGO from TIM3

TRGO from TIM2 TIM3_CH2

TIM3_CH1

TRGO

TRGO

Возможная синхронизация среди TIM2,TIM3, TIM4

Компэл Компэл STMicroelectronics

Page 124: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Компэл

STM8L15x/16x - синхронизация таймеров

Trigger

Controller

TIM4

TRGO from TIM3

TRGO from TIM2

TRGO from TIM1

Trigger

Controller

TRGO

TIM1

TRGO from TIM3

TRGO from TIM2

TRGO from TIM4

TIM1_CH1

TIM1_CH2

Trigger

Controller

TIM2

TRGO from TIM1 TRGO from TIM3

TRGO from TIM4

Trigger

Controller

TIM3

TRGO from TIM2

TRGO from TIM1

TRGO from TIM4

TIM3_CH1

TIM2_CH2

TIM3_CH2

TIM2_CH1

Возможная синхронизация среди TIM1,TIM2, TIM3, TIM4

TRGO

TRGO TRGO

TRGO from TIM5

TRGO from TIM5 TRGO from TIM5

TRGO from TIM5

Trigger

Controller

TIM5

TRGO from TIM3

TRGO from TIM2

TRGO from TIM1

TRGO

TRGO from TIM4

Компэл STMicroelectronics

Page 125: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Также как и в STM8S

Синхронизация таймеров – примеры

Компэл Компэл STMicroelectronics

Page 126: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

ИК передатчик – STM8L15x

Используется для управления ИК диодом(потребительская

электроника)

ИК таймер использует 2 таймера TIM2 и TIM3:

TIM2 для генерации несущей частоты

TIM3 для генерации информационного сигнала

TIM2 и TIM3 должны быть сконфигурированы для генерации

корректной формы сигнала

TIM2_CH1(Несущая частота)

TIM3_CH1(модулирующий сигнал)

Выходной сигнал

Компэл Компэл STMicroelectronics

Page 127: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

158

STM8L162. AES128 – функциональная схема

Компэл Компэл STMicroelectronics

Page 128: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

159

STM8L162. AES128 – характеристики

Поддержка DMA

4 режима работы:

1 – encryption(кодирование)

2 – key derivation(генерирование ключа)

3 – decryption(декодирование)

4 – key derivation + decryption

Прерывания:

AES computation complete

AES read error

AES write error

Компэл Компэл STMicroelectronics

Page 129: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8 option bytes

STM8S

7+7б

STM8L10x

4B

STM8L15x

5B

Readout protection + + +

User bootloader size

(UBC)

+ + +

Datasize (emulated

EEPROM)

Max 2kB

PCODE (proprietary

code area)

2..255 pages of 128

bytes

HSE/LSE startup time HSE HSE and LSE

Ext clock Crystal or HSE bypass

AWU clock LSI/HSE and prescaler

WWDG On/Off, On (Halt) On/Off, On (Halt)

IWDG On/Off On/Off, On (Halt) On/Off, On (Halt)

Bootloader startup Bootloader or user code Bootloader or user code

BOR On/Off, threshold

Alternate functions Remapping of selected

peripherals

Компэл Компэл STMicroelectronics

Page 130: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Схема Beeper

5-bit

counter 3-bit

counter

LSI RC

128КГц

5-bit

prescaler

BEEPEN

1/2/4 КГц

BEEP pin

HSE

4-24MГц

prescaler

to 128КГц

Независимый счетчик для генерации частоты 1/2/4КГц(50%)

Определенные ножки в/в:

PD4 (STM8S)

PA0 (STM8L)

На вход TIM для LSI

калибровки

~8КГц

LSE

32КГц

LSI RC

38КГц

LSI RC

38КГц

STM8S

STML15x

STM8L10x

PD4

PA0

STM8S

STM8L

Компэл Компэл STMicroelectronics

Page 131: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Семейство STM8

Периферия обмена данными

Компэл Компэл STMicroelectronics

Page 132: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Коммуникационные интерфейсы (1/2)

Интерфейс STM8S STM8L10x STM8L15x

I2C 100/400КГц

7/10бит адресация

100/400КГц

7/10бит адресация

100/400КГц

7/10бит адресация

SMBUS, PMBUS

PEC

Поддержка DMA

SPI До 10Mбит/с

NSS HW и SW

Генерация и проверка

CRC

До 8Mбит/с

NSS HW и SW

Генерация и проверка

CRC

До 8Mбит/с

NSS HW и SW

Генерация и проверка

CRC

Поддержка DMA

USART RxD, TxD, CLK

До 1.5 Mбит/с

8,9 бит данных

1; 1.5; 2 стоп бит

Полный дуплекс,

Синхронный режим,

IrDa, SmartCard

LIN Master/Slave

RxD, TxD, CLK

До1Mбит/c

8,9 бит данных

1; 2 стоп бит

Полный дуплекс,

Синхронный режим

RxD, TxD, CLK

До1Mбит/c

8,9 бит данных

1; 1.5; 2 стоп бит

Синхронный режим, IrDa,

SmartCard

Поддержка DMA

Компэл Компэл STMicroelectronics

Page 133: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Интерфейс STM8S STM8L10x STM8L15x

CAN • 2.0B active cell

• 1Mбит

• 11/29 бит идентификатор

• 3 Tx буфера

• 1 Rx FIFO (3 блока)

• 6 банков

фильтра(масштабируем)

• Временной маркер SOF

• TTCAN

н/д

н/д

Коммуникационные интерфейсы (2/2)

Компэл Компэл STMicroelectronics

Page 134: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики I2C

Характеристики STM8S10x STM8S20x STM8L10x STM8L15x

Кол-во интерф - ов 1 1 1 1

Multimaster + + + +

Slave + + + +

standard/fast + / + + / + + / + + / +

7/10 бит адресация + / + + / + + / + + / +

DMA - - - CH0 – Rx

CH3 – Tx

HALT wakeup По адресу в slave По адресу в slave По адресу в slave По адресу в slave

CRC - - - CRC-8

x8 + x2 + x + 1

SMBUS 2.0 - - - +

PMBUS 2.0 - - - +

Компэл Компэл STMicroelectronics

Page 135: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики SPI

Feature STM8S10x STM8S20x STM8L10x STM8L15x

Кол-во интерф-ов 1 1 1 1

NSS HW/SW + / + + / + + / + + / +

Маск скорость 10Mбит/с 10Mбит/с 8Mбит/с 8Mбит/с

CRC CRC8 CRC8 - CRC8

DMA - - - CH2 – Tx

CH1 - Rx

HALT wakeup + + + +

Порядок данных MSB first / LSB first MSB first / LSB first MSB first / LSB first MSB first / LSB first

Полярность и фаза программно программно программно программно

Прерывания Буфер на передачу пуст

Буфер на прием пуст

Событие авто-пробуждения

Ошибка режима master

Ошибка переполнения

Ошибка CRC

Буфер на передачу пуст

Буфер на прием пуст

Событие авто-пробуждения

Ошибка режима master

Ошибка переполнения

Ошибка CRC

Буфер на передачу

пуст

Буфер на прием пуст

Событие авто-

пробуждения

Ошибка режима master

Ошибка переполнения

Буфер на передачу пуст

Буфер на прием пуст

Событие авто-пробуждения

Ошибка режима master

Ошибка переполнения

Ошибка CRC

Рабочие режимы Полный дуплекс (3 линии)

Симплекс(2 линии)

Полный дуплекс (3 линии)

Симплекс (2 линии)

Полный дуплекс

(3 линии)

Симплекс (2 линии)

Полный дуплекс

(3 линии)

Симплекс (2 линии)

Компэл Компэл STMicroelectronics

Page 136: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

SPI соединение, дуплекс

Shift register Shift register

Baud rate

generator

MASTER SLAVE

0 1 2 4 3 5 6 7

CPOL =0, CPHA = 0

CPOL =0, CPHA = 1

CPOL =1, CPHA = 0

CPOL =1, CPHA = 1

Компэл Компэл STMicroelectronics

Page 137: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

SPI соединение – симплекс, однопроводной режим

Shift register Shift register

Baud rate

generator

MASTER SLAVE

BDOE 1 0 M S

Master Slave data flow

BDOE 0 1 M S

Компэл Компэл STMicroelectronics

Page 138: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

SPI – симплекс, RxOnly режим

Shift register

Baud rate

generator

MASTER

Shift register

SLAVE

RxOnly Master

RxOnly Slave

Компэл Компэл STMicroelectronics

Page 139: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Расчет CRC

CRC улучшает надежность

Отдельный расчет для Tx и Rx данных

Расчет CRC с программируемым полиномом последовательно на каждый бит

Генерация события о ошибке в CRC

Берется из TXCRCR регистра и посылается MOSI

Shift register

Baud rate

generator

MASTER

Shift register

SLAVE

Берется из TXCRCR регистра

Компэл Компэл STMicroelectronics

Page 140: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

SD/MMC через SPI

Скорость: частота тактирования 8MГц

Проверка ошибок: аппаратный расчет CRC

Vdd

R =

4.7

Vdd

9 1 2

3 4

5 6

7 8

Компэл Компэл STMicroelectronics

Page 141: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

Характеристики U(S)ART

Свойства STM8S10x

UART2

STM8S20x

UART1 / UART3

STM8L10x

USART

STM8L15x

USART1

Макс скорость 1.5 Мбит/сек 1.5 Mбит/сек 1 Mбит/сек 1 Mбит/сек

Сигналы CLK, TX, RX CLK, TX, RX CLK, TX, RX CLK, TX, RX

LIN Master/slave U1: master

U3: master/slave

Эмуляция SPI + + / - + +

Smartcard + + / - - +

IrDa + + / - - +

Single wire HD - + / - - +

Поддержка DMA - - - CH1 – Tx

CH2 - Rx

Размер кадра 8, 9 бит

1, 2 стоп бит

1.5 стоп бит (smart

card)

8, 9 бит

1, 2 стоп бит

1.5 стоп бит (smart

card)

8, 9 бит

1, 2 стоп бит

8, 9 бит

1, 2 стоп бит

Прерывание 2 IRQ vectors

(передача + прием)

2 IRQ vectors

(передача + прием)

2 IRQ

vectors(передача +

прием)

2 IRQ vectors

(передача + прием)

wakeup режимы Address, idle line Address, idle line Address, idle line Address, idle line

Multiprocessor

communication

+ + / + + +

Компэл Компэл STMicroelectronics

Page 142: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

USART RX

TX

Received Data

Transmitted Data

STM8. Режимы передачи USART

Полный дуплекс, асинхронный обмен

TX Transmitted Data

Clock CLK

RX Received Data

TX Transmitted Data Received Data

Полный дуплекс, синхронный обмен

Полу-дуплекс, асинхронный, однопроводной

USART

USART

R =

10

CLK

RX

CLK

Компэл Компэл STMicroelectronics

Page 143: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S, STM8L15x – режим Smart Card

USART поддерживает эмуляцию Smart Card ISO 7816-3

Однопроводной полу-дуплекс, асинхронный режим, синхросигнал SCLK

8 бит данных, 1 бит четности, 1.5 стоп бит, TE и RE установлены

Автоматический прием и передача

Генерация ошибки четности с посылкой NACK

Конфигурируемое время синхронизации

Конфигурируемый предделитель

Компэл Компэл STMicroelectronics

Page 144: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

IrDA SIR Encoder Decoder – STM8S, STM8L15x

USART поддерживает IrDA спецификацию

Полу-дуплекс, NRZ модулирует RZI (0 представляет ИК импульс)

Максимальная скорость 115 200

1 стоп бит

Регулируемое время определения глитча

Half Duplex

TX

IrDA OUT

IrDA IN

RX

Компэл Компэл STMicroelectronics

Page 145: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Характеристики CAN

Основные характеристики:

Поддержка CAN протокола версии 2.0B Active

Скорость 1Mбит/с

Поддержка Time Triggered Communication option (TTCAN)

Обеспечение внешнего такт сигнала для исключения проблем девиации тактовой

частоты при высоких скоростях передачи

Передача

Временной маркер при начале передачи Start Of Frame (SOF)

3 буфера на передачу

Конфигурируемая приоритетность

Прием

Временной маркер при начале приема

SOF reception

1 буфер FIFO с 3 каскадами

6 масштабируемых банка фильтров

Конфигурируемок FIFO переполнение CAN TX CAN RX

Tx

Mailb

ox

2

Transmission Scheduler

Rx

FIF

O

6 Enhanced Filter Banks

Bosch CAN Core – 2.0B Active Co

ntr

ol &

Sta

tus R

eg

iste

rs S

et

Tx

Mailb

ox

1

Tx

Mailb

ox

0

Компэл Компэл STMicroelectronics

Page 146: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Принцип обмена данными по CAN

Широковещательный механизм

Node 1

Frame Filter

CAN core

Node 2

Frame Filter

CAN core

Node 3

Frame Filter

CAN core

Node 4

Frame Filter

CAN core

Компэл Компэл STMicroelectronics

Page 147: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8S. Формат кадров CAN

Стандартный кадр данных 11-бит идентификатор

11-bit

Identifier

SOF

RTR

I DE

r0

DLC 0..8 Data bytes CRC EOF ACK

High 11-bit Identifier

SOF

RTR

r1

r0

DLC 0..8 Data bytes CRC EOF ACK Low 18-bit Identifier

SRR

I DE

Расширенный кадр данных 29-бит

идентификатор

Компэл Компэл STMicroelectronics

Page 148: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

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

Инструменты

Компэл Компэл STMicroelectronics

Page 149: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8. Аппаратные инструменты разработки

STM8/128-EVAL

STX-RLINK

STX-RLINK – не дорогой программатор для

программирования и отладки

ST-LINK – не дорогой программатор/отладчик

STICE-SYS001 - high-end full featured emulator

Компэл Компэл STMicroelectronics

Page 150: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

STM8 – программные средства разработки

ST Visual Develop (STVD), бесплатная среда проектирования

ST Visual Programmer (STVP), бесплатное ПО программирования МК

Raisonance RIDE, бесплатная среда проектирования с RBuilder и

RFlasher

Raisonance C компилятор, 16 КБ версия бесплатно

IAR Systems cреда проектирования с С – компилятором

Cosmic C компилятор, 16 КБ бесплатно

STM8 библиотеки, примеры

STM8S IEC 60335 ClassB совместимая библиотека, одобрена VDE

www.cosmic-software.com

www.st.com/st

m8

www.raisonance.c

om

STX - RLINK STICE ST - LINK

Компэл Компэл STMicroelectronics

Page 151: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

184

STM8L1526 – EVAL

STM8L15LPBOARD

STM8L101 – EVAL

STM8L – оценочные наборы

Компэл Компэл STMicroelectronics

Page 152: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

185

STM8/128-EVAL

STM8/128-SK/RAIS

STEVAL-IHM026V1

STM8S – DISCOVERY EVB

STM8S – оценочные наборы

Компэл Компэл STMicroelectronics

Page 153: Cover Title – Arial Bold, 40pt...STM8. Управление прерываниями(1/4) До 32 вектора прерываний Как минимум 1 прерывание

186

Высокопроизводительное ядро, прогрессивная технология и

улучшенная плотность кода являются идеальной комбинацией

для бюджетных 8-разрядных приложений микроконтроллеров.

Устойчивость и надежность - ключевые отличительные

особенности.

Максимальная степень интеграции сокращает необходимость

во внешних компонентах удешевляя стоимость приложения.

Общее описание периферии для семейств STM8 и STM32.

Комбинация простых в использовании и доступных средств

проектирования сокращает время разработки

Заключение

Компэл Компэл STMicroelectronics