Серия STM32L5 с висока сигурност и ниска консумация на енергия
“
Спецификации:
- Име на продукта: RM0438 Справочно ръководство
- Ревизия: Rev 8
- Страници: 1 до 2187
- Дата на издаване: юни 2025 г
- Производител: www.st.com
Информация за продукта:
Справочникът RM0438 предоставя подробна информация за
архитектура на паметта и шината, архитектура на сигурността на TrustZone,
организация на паметта, вградена SRAM памет, флаш памет върхуview, обувка
конфигурация и системна сигурност.
Инструкции за употреба на продукта:
Архитектура на паметта и шината:
Системната архитектура включва бърза C-bus, бавна C-bus, S-bus,
DMA-шина, DMA шина на SDMMC контролер и BusMatrix.
Архитектура на сигурността на TrustZone:
Обяснява състоянието на сигурност по подразбиране на TrustZone и TrustZone
периферна класификация.
Организация на паметта:
Описва картата на паметта, адресите на границите на регистрите и
организация на вградената SRAM памет.
Вградена SRAM памет:
Детайли за проверка на четността на SRAM2, защита от запис, защита от четене,
операции за изтриване.
Флаш паметта е надview:
Осигурява надview на флаш паметта, използвана в системата.
Конфигурация на стартиране:
Обхваща настройките за конфигурация на зареждане на системата.
Сигурност на системата:
Въведение в мерките за системна сигурност.
Често задавани въпроси (FAQ):
В: Къде мога да намеря информация за нулиране на регистъра
стойности?
A: Стойностите за нулиране на регистъра са описани подробно в раздел 1.3 на
ръководство.
В: Какво представлява архитектурата за сигурност на TrustZone?
A: Архитектурата на сигурността на TrustZone е обяснена в раздел 2.2.
на ръководството.
В: Как да конфигурирам настройките за зареждане?
A: Инструкции за конфигуриране на зареждане можете да намерите в раздел 3
на ръководството.
„`
RM0438 Справочно ръководство
Усъвършенствани 32-битови микроконтролери, базирани на Arm®, серия STM5L32
Въведение
Това ръководство е предназначено за разработчици на приложения. То предоставя пълна информация за това как да използвате паметта и периферните устройства на микроконтролерите STM32L552xx и STM32L562xx. STM32L552xx и STM32L562xx принадлежат към линията микроконтролери STM32L5x2 с различни размери на паметта, корпуси и периферни устройства. За информация за поръчка, механични и електрически характеристики на устройството, моля, вижте съответните технически листове. За информация относно ядрото Arm® Cortex®-M33 вижте техническото ръководство Cortex®-M33. Микропроцесорите STM32L552xx и STM32L562xx включват най-съвременна патентована технология на ST.
Свързани документи
· Техническо ръководство за Cortex®-M33, достъпно на http://infocenter.arm.com · Технически спецификации за STM32L552xx и STM32L562xx · Списъци с грешки и грешки за STM32L552xx и STM32L562xx
юни 2025 г
RM0438 Версия 8
1/2187
www.st.com
1
Съдържание
Съдържание
RM0438
1
Конвенции за документиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
1.1 Обща информация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
1.2 Списък със съкращения за регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
1.3 Стойност за нулиране на регистъра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
1.4 Речник . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
1.5 Наличност на периферни устройства . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2
Архитектура на паметта и шината . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.1 Системна архитектура . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.1.1 Бърза C-шина . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.1.2 Бавен C-bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.1.3 S-шина . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.1.4 DMA-шина . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
2.1.5 DMA шина на SDMMC контролер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
2.1.6 ШинаМатрица . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
2.2 Архитектура на сигурността на TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
2.2.1 Състояние на сигурността на TrustZone по подразбиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2.2.2 Класификация на периферни устройства в TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.3 Организация на паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.3.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.3.2 Адреси на картата на паметта и границите на регистрите . . . . . . . . . . . . . . . . . . 87
2.4 Вградена SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.4.1 Проверка за четност на SRAM2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.4.2 Защита от запис в SRAM2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.4.3 Защита от четене на SRAM2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2.4.4 Изтриване на SRAM2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2.5 Флаш памет надview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
3
Конфигурация на зареждане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4
Системна сигурност . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.2 Ключови характеристики за сигурност . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
2/2187
RM0438 Версия 8
RM0438
Съдържание
4.3 4.4 4.5 4.6
4.7 4.8
4.9 4.10 4.11 4.12 4.13
Сигурно инсталиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Сигурно стартиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.4.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 4.4.2 Уникален запис за зареждане и BOOT_LOCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 4.4.3 Неизменен корен на доверие в системната флаш памет . . . . . . . . . . . . . . . . . 102
Сигурна актуализация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 Изолиране на ресурси чрез TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
4.6.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 4.6.2 Архитектура за сигурност на TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 4.6.3 Разширение за сигурност Armv8-M на Cortex-M33 . . . . . . . . . . . . . . . . . . . . . . . . 104 4.6.4 Разпределение на памет и периферни устройства чрез IDAU/SAU . . . . . . . . . . . . . . . 104 4.6.5 Разпределение на памет и периферни устройства чрез GTZC . . . . . . . . . . . . . . . . . . . . 106 4.6.6 Управление на сигурността в периферни устройства, поддържащи TrustZone . . . . . . . . . . . . . . . . 109 4.6.7 Активиране на защитата на TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 4.6.8 Деактивиране на защитата на TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Други изолации на ресурси . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
4.7.1 Временна изолация с помощта на защитно покритие (HDP) . . . . . . . . . . . . . 117
Сигурно изпълнение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
4.8.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 4.8.2 Устройство за защита на паметта (MPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 4.8.3 Защита от запис на вградена флаш памет . . . . . . . . . . . . . . . . . . . . . . . . . . 118 4.8.4 Тampоткриване и реагиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Сигурно съхранение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.9.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 4.9.2 Уникален идентификатор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Крипто двигатели . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.10.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 4.10.2 Характеристики на крипто системите . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 4.10.3 Система за декриптиране в движение (OTFDEC) . . . . . . . . . . . . . . . . . . . . . . . . . 122
Жизнен цикъл на продукта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.11.1 Управление на жизнения цикъл със защита от четене (RDP) . . . . . . . . . . . . . 124 4.11.2 Препоръчителни настройки на байтовете за опции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Дебъгване с контролиран достъп . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
4.12.1 Защита от отстраняване на грешки със защита от четене (RDP) . . . . . . . . . . . . . . . . . 125
Защита на интелектуалната собственост върху софтуера и съвместна разработка 126
RM0438 Версия 8
3/2187
54
Съдържание
RM0438
4.13.1
4.13.2 4.13.3
Защита на интелектуалната собственост върху софтуера със защита от четене (RDP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Защита на интелектуалната собственост върху софтуера с OTFDEC . . . . . . . . . . . 127
Други защити на интелектуалната собственост върху софтуер . . . . . . . . . . . . . . . . . 129
5
Глобален контролер TrustZone® (GTZC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.1 Въведение в GTZC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.2 Основни характеристики на GTZC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.2.1 Системна архитектура на GTZC TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.3 Функционално описание на GTZC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.3.1 Блокова схема на GTZC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.3.2 Дефиниция за незаконен достъп . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
5.3.3 Контролер за сигурност TrustZone (TZSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
5.3.4 Контролер за защита на паметта – блоково базиран (MPCBB) . . . . . . . . . . . . . 134
5.3.5 TrustZone контролер за нелегален достъп (TZIC) . . . . . . . . . . . . . . . . . . . . . . . 135
5.3.6 Състояние на включване/нулиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5.3.7 Заявки за DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5.4 Събития на GTZC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5.5 Регистри GTZC_TZSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.5.1 GTZC_TZSC контролен регистър (GTZC_TZSC_CR) . . . . . . . . . . . . . . . . 136
5.5.2
GTZC_TZSC регистър 1 за защитена конфигурация (GTZC_TZSC_SECCFGR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.5.3
GTZC_TZSC регистър 2 за защитена конфигурация (GTZC_TZSC_SECCFGR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
5.5.4
Регистър 1 за конфигурация на привилегии на GTZC_TZSC (GTZC_TZSC_PRIVCFGR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.5.5
Регистър 2 за конфигурация на привилегии на GTZC_TZSC (GTZC_TZSC_PRIVCFGR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5.5.6
GTZC_TZSC външна памет x регистър 1 за незащитен воден знак (GTZC_TZSC_MPCWMxANSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.5.7
GTZC_TZSC външна памет x регистър 2 за незащитен воден знак (GTZC_TZSC_MPCWMxBNSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.5.8 Карта на регистъра GTZC_TZSC и стойности за нулиране . . . . . . . . . . . . . . . . . . . . 148
5.6 Регистри GTZC_MPCBB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
5.6.1 GTZC_MPCBBx контролен регистър (GTZC_MPCBBx_CR) (x = 1 до 2) . 150
5.6.2 GTZC_MPCBB1 регистър за заключване 1 (GTZC_MPCBB1_LCKVTR1) . . . . . . 151
5.6.3
GTZC_MPCBB2 регистър за заключване 1 (GTZC_MPCBB2_LCKVTR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
4/2187
RM0438 Версия 8
RM0438
Съдържание
5.6.4
GTZC_MPCBBx векторен регистър y (GTZC_MPCBBx_VCTRy) (x = 1 до 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
5.6.5 Карта на регистъра GTZC_MPCBB1 и стойности за нулиране . . . . . . . . . . . . . . . . . 153
5.6.6 Карта на регистъра GTZC_MPCBB2 и стойности за нулиране . . . . . . . . . . . . . . . . . 153
5.7 Регистри GTZC_TZIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
5.7.1 GTZC_TZIC регистър 1 за разрешаване на прекъсвания (GTZC_TZIC_IER1) . . . . . . . 154
5.7.2 GTZC_TZIC регистър 2 за разрешаване на прекъсвания (GTZC_TZIC_IER2) . . . . . . . 157
5.7.3 GTZC_TZIC регистър 3 за разрешаване на прекъсвания (GTZC_TZIC_IER3) . . . . . . . 159
5.7.4 GTZC_TZIC регистър на състоянието 1 (GTZC_TZIC_SR1) . . . . . . . . . . . . . . . 160
5.7.5 GTZC_TZIC регистър на състоянието 2 (GTZC_TZIC_SR2) . . . . . . . . . . . . . . . 163
5.7.6 GTZC_TZIC регистър на състоянието 3 (GTZC_TZIC_SR3) . . . . . . . . . . . . . . . 165
5.7.7 GTZC_TZIC флаг за изчистване на регистър 1 (GTZC_TZIC_FCR1) . . . . . . . . . . . . 166
5.7.8 GTZC_TZIC флаг за изчистване на регистър 2 (GTZC_TZIC_FCR2) . . . . . . . . . . . . 169
5.7.9 GTZC_TZIC флаг за изчистване на регистър 3 (GTZC_TZIC_FCR3) . . . . . . . . . . . . 171
5.7.10 GTZC_TZIC карта на регистъра и стойности за нулиране . . . . . . . . . . . . . . . . . . . . . . 172
6
Вградена флаш памет (FLASH) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6.2 Основни характеристики на FLASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6.3 Функционално описание на флаш паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
6.3.1 Организация на флаш паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
6.3.2 Корекция на кодове за грешки (ECC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
6.3.3 Закъснение при достъп за четене . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
6.3.4 Нисък обемtagд прочетете . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.3.5 Операции по програмиране и изтриване на флаш памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.3.6 Последователности за изтриване на флаш паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
6.3.7 Програмни последователности на флаш паметта . . . . . . . . . . . . . . . . . . . 185
6.3.8 Флагове за грешки във флаш паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.3.9
Четене по време на запис (RWW) е налично само в режим с две банки (DBANK = 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
6.4 Байтове за опции за флаш памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.4.1 Описание на опционалните байтове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.4.2 Програмиране на опционални байтове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
6.5 Защита на сигурността и привилегиите на Flash TrustZone . . . . . . . . . . . . . . . . 193
6.5.1 Защита на TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
6.5.2 Защита на областта, базирана на воден знак . . . . . . . . . . . . . . . . . . . . . . . 195
6.5.3 Сигурна защита на кожата (HDP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
RM0438 Версия 8
5/2187
54
Съдържание
RM0438
6.5.4 Защита на защитена блокова област (SECBB) . . . . . . . . . . . . . . . . . . . . 196 6.5.5 Принудително зареждане от защитен адрес в паметта . . . . . . . . . . . . . . . . . . . . . . 197 6.5.6 Състояние на атрибута за сигурност на флаш паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 6.5.7 Регистри на флаш паметта - привилегировани и непривилегировани режими . . . . . . . . . . . . . . . . 198
6.6 Защитена системна памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
6.6.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 6.6.2 RSS разпределя ресурс на буутлоудъра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 6.6.3 RSSLIB функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
6.7 Защита на флаш паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
6.7.1 Защита от запис (WRP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 6.7.2 Защита от четене (RDP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
6.8 FLASH прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 6.9 FLASH регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
6.9.1 Регистър за контрол на достъпа до флаш паметта (FLASH_ACR) . . . . . . . . . . . . . . . . . . . . 213 6.9.2 Регистър за клавиш за изключване на флаш паметта (FLASH_PDKEYR) . . . . . . . . . . . . . . . 214 6.9.3 Регистър за незащитени ключове на флаш паметта (FLASH_NSKEYR) . . . . . . . . . . . . . . . 215 6.9.4 Регистър за защитени ключове на флаш паметта (FLASH_SECKEYR) . . . . . . . . . . . . . . . . . 215 6.9.5 Регистър за ключове за опции на флаш паметта (FLASH_OPTKEYR) . . . . . . . . . . . . . . . . . . 216 6.9.6 Светкавица с ниска сила на звукаtagРегистър на ключове (FLASH_LVEKEYR) . . . . . . . . . . . . . . . . 216 6.9.7 Регистър за състояние на флаш паметта (FLASH_NSSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 6.9.8 Регистър за състояние на флаш паметта (FLASH_SECSR) . . . . . . . . . . . . . . . . . . . . . . . . . 218 6.9.9 Регистър за незащитено управление на флаш паметта (FLASH_NSCR) . . . . . . . . . . . . . . . . 220 6.9.10 Регистър за защитен контрол на флаш паметта (FLASH_SECCR) . . . . . . . . . . . . . . . . . . 222 6.9.11 Регистър за ECC на флаш паметта (FLASH_ECCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 6.9.12 Регистър за опции на флаш паметта (FLASH_OPTR) . . . . . . . . . . . . . . . . . . . . . . . . . 225 6.9.13 Регистър на незащитен адрес 0 за зареждане във флаш памет (FLASH_NSBOOTADD0R) 227 6.9.14 Регистър на незащитен адрес 1 за зареждане във флаш памет (FLASH_NSBOOTADD1R) 228 6.9.15 Регистър на защитен адрес 0 за зареждане във флаш памет (FLASH_SECBOOTADD0R) . . 228 6.9.16 Регистър на защитена watermak1 във флаш памет 1 (FLASH_SECWM1R1) . . . . 229 6.9.17 Регистър на защитена watermak1 във флаш памет 2 (FLASH_SECWM1R2) . . . . . . . . 230 6.9.18 Регистър на адреси на област A във флаш паметта WPR1 (FLASH_WRP1AR) . . . . . . . . . . 231 6.9.19 Флаш WPR1 адресен регистър на област B (FLASH_WRP1BR) . . . . . . . . . . 232 6.9.20 Флаш регистър за защитена watermak2 (FLASH_SECWM2R1) . . . . . . . . . . 233 6.9.21 Флаш регистър за защитена watermak2 2 (FLASH_SECWM2R2) . . . . . . . . 234 6.9.22 Флаш WPR2 адресен регистър на област A (FLASH_WRP2AR) . . . . . . . . . 235 6.9.23 Флаш WPR2 адресен регистър на област B (FLASH_WRP2BR) . . . . . . . . . 236
6/2187
RM0438 Версия 8
RM0438
Съдържание
6.9.24
6.9.25
6.9.26 6.9.27 6.9.28
FLASH регистър на банка 1, базиран на защитени блокове (FLASH_SECBB1Rx) (където x=1..4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
FLASH регистър на банка 2, базиран на защитени блокове (FLASH_SECBB2Rx) (където x=1..4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
FLASH регистър за контрол на защитения HDP (FLASH_SECHDPCR) . . . . . . . . 238
Регистър за конфигурация на привилегии за FLASH (FLASH_PRIVCFGR) . . . . . . . 238
Карта на FLASH регистрите и стойности за нулиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
7
Кеш на инструкции (ICACHE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7.1 Въведение в ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7.2 Основни характеристики на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7.3 Внедряване на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.4 Функционално описание на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.4.1 Блокова схема на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
7.4.2 Нулиране на ICACHE и тактови процесори . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
7.4.3 ICACHE TAG памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
7.4.4 Директно картографиран ICACHE (еднопосочен кеш) . . . . . . . . . . . . . . . . . . . . . . . . . 1
7.4.5 Активиране на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
7.4.6 Кешируем и некешируем трафик . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
7.4.7 Пренасочване на адреси . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
7.4.8 Кешируем достъп . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
7.4.9 Кеш с два главни процесора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
7.4.10 Сигурност на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
7.4.11 Поддръжка на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
7.4.12 Мониторинг на производителността на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
7.4.13 ICACHE зареждане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
7.5 ICACHE режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
7.6 Управление на грешки и прекъсвания в ICACHE . . . . . . . . . . . . . . . . . . . . . . . . 253
7.7 Регистри на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
7.7.1 ICACHE контролен регистър (ICACHE_CR) . . . . . . . . . . . . . . . . . . . . . . . . . 253
7.7.2 Регистър за състояние на ICACHE (ICACHE_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
7.7.3 Регистър за разрешаване на прекъсвания на ICACHE (ICACHE_IER) . . . . . . . . . . . . . . . 255
7.7.4 Регистър за изчистване на флага на ICACHE (ICACHE_FCR) . . . . . . . . . . . . . . . . . . . . 255
7.7.5 Регистър за монитор на попаденията на ICACHE (ICACHE_HMONR) . . . . . . . . . . . . . . . . 256
7.7.6 Регистър за монитор за пропуски на ICACHE (ICACHE_MMONR) . . . . . . . . . . . . . . 256
7.7.7 Регистър за конфигурация на ICACHE регион x (ICACHE_CRRx) . . . . . . . . . 256
7.7.8 Карта на регистъра на ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
RM0438 Версия 8
7/2187
54
Съдържание
RM0438
8
Контрол на мощността (PWR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
8.1 Захранвания и области на захранване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
8.1.1 Независимо захранване на аналогови периферни устройства . . . . . . . . . . . . . . . . . . . . . . . . . . 264
8.1.2 Независима захранваща шина за входове/изходи . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
8.1.3 Захранване на независими USB приемо-предаватели . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
8.1.4 Домейн за резервно захранване от батерия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
8.2 Обем на системното захранванеtagд регулация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
8.2.1 томtagд регулатор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
8.2.2 Вграден SMPS понижаващ преобразувател . . . . . . . . . . . . . . . . . . . . . . . . . 267
8.2.3 Схема на захранване на понижаващ преобразувател с импулсен захранващ блок . . . . . . . . . . . . . . . 268
8.2.4 SMPS понижаващ преобразувател спрямо режим с ниска консумация на енергия . . . . . . . . . . . . . 269
8.2.5 Динамичен обемtagуправление на мащабирането . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
8.2.6 VDD12 домейн и външно SMPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
8.3 Надзор на захранването . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
8.3.1
Нулиране при включване (POR) / нулиране при изключване (PDR) / нулиране при спад на напрежението (BOR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
8.3.2 Програмируем обемtagе-детектор (PVD) . . . . . . . . . . . . . . . . . . . . . . . . . . 274
8.3.3 Периферен обемtagелектронно наблюдение (PVM) . . . . . . . . . . . . . . . . . . . . . . . . . . 275
8.3.4 Горен обемtagнаблюдение на прага . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
8.3.5 Мониторинг на температурния праг . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
8.4 Управление на захранването . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
8.4.1 Режими на захранване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
8.4.2 Режим на работа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
8.4.3 Режим на работа с ниска мощност (LP режим) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
8.4.4 Режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
8.4.5 Режим на заспиване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
8.4.6 Режим на заспиване с ниска консумация на енергия (LP заспиване) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
8.4.7 Режим стоп 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
8.4.8 Режим стоп 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
8.4.9 Режим стоп 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
8.4.10 Режим на готовност . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
8.4.11 Режим на изключване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
8.4.12 Автоматично събуждане от режим на ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
8.5 Сигурност на PWR TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
8.5.1 PWR Привилегировани и непривилегировани режими . . . . . . . . . . . . . . . . . . . . . . 298
8.6 PWR регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
8/2187
RM0438 Версия 8
RM0438
Съдържание
8.6.1 8.6.2 8.6.3 8.6.4 8.6.5 8.6.6 8.6.7 8.6.8 8.6.9 8.6.10 8.6.11 8.6.12 8.6.13 8.6.14 8.6.15 8.6.16 8.6.17 8.6.18 8.6.19 8.6.20 8.6.21 8.6.22 8.6.23 8.6.24 8.6.25 8.6.26
Регистър за управление на мощността 1 (PWR_CR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Регистър за управление на мощността 2 (PWR_CR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 Регистър за управление на мощността 3 (PWR_CR3) . . . . . . . . . . . . . . . . . . . . . . . . 301 Регистър за управление на мощността 4 (PWR_CR4) . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 Регистър за състояние на захранване 1 (PWR_SR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304 Регистър за състояние на захранване 2 (PWR_SR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 Регистър за изчистване на състоянието на захранване (PWR_SCR) . . . . . . . . . . . . . . . . . . . . . . 307 Регистър за управление на издърпването на захранващ порт A (PWR_PUCRA) . . . . . . . . . . . . . . 308 Регистър за управление на издърпването на захранващ порт A (PWR_PDCRA) . . . . . . . . . . 308 Регистър за управление на издърпването на захранващ порт B (PWR_PUCRB) . . . . . . . . . . . . . 309 Регистър за управление на издърпването на захранващ порт B (PWR_PDCRB) . . . . . . . . . . 310 Регистър за управление на издърпването на захранващ порт C (PWR_PUCRC) . . . . . . . . . . . 310 Регистър за управление на издърпването на захранващ порт C (PWR_PDCRC) . . . . . . . . . . 311 Регистър за управление на издърпването на захранващ порт D (PWR_PUCRD) . . . . . . . . . . . . . 311 Регистър за управление на изтеглянето на захранващ порт D (PWR_PDCRD) . . . . . . . . . . 312 Регистър за управление на изтеглянето на захранващ порт E (PWR_PUCRE) . . . . . . . . . . . . . 313 Регистър за управление на изтеглянето на захранващ порт E (PWR_PDCRE) . . . . . . . . . . 313 Регистър за управление на изтеглянето на захранващ порт F (PWR_PUCRF) . . . . . . . . . . . . 314 Регистър за управление на изтеглянето на захранващ порт F (PWR_PDCRF) . . . . . . . . . . . 314 Регистър за управление на издърпването на захранващ порт G (PWR_PUCRG) . . . . . . . . . . . . . 315 Регистър за управление на издърпването на захранващ порт G (PWR_PDCRG) . . . . . . . . . . . 316 Регистър за управление на издърпването на захранващ порт H (PWR_PUCRH) . . . . . . . . . . . . 316 Регистър за управление на издърпването на захранващ порт H (PWR_PDCRH) . . . . . . . . . . . 317 Регистър за конфигурация на защитено захранване (PWR_SECCFGR) . . . . . . . . . . . 317 Регистър за конфигурация на привилегиите за захранване (PWR_PRIVCFGR) . . . . . . . . . . 319 Карта на PWR регистъра и стойности за нулиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
9
Нулиране и управление на тактовата честота (RCC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
9.1 Нулиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
9.1.1 Нулиране на захранването . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
9.1.2 Нулиране на системата . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
9.1.3 Нулиране на резервния домейн . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
9.2 RCC пинове и вътрешни сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
9.3 Часовници . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
9.3.1 HSE часовник . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
9.3.2 HSI16 тактов сигнал . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
9.3.3 MSI тактова честота . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
RM0438 Версия 8
9/2187
54
Съдържание
RM0438
9.3.4 HSI48 тактов сигнал . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 9.3.5 PLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 9.3.6 LSE тактов сигнал . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 9.3.7 Системен такт на LSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 9.3.8 LSI такт . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 9.3.9 Избор на системен такт (SYSCLK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 9.3.10 Честота на източника на тактов сигнал спрямо силата на звукаtage мащабиране . . . . . . . . . . . . . . . . . . . . 335 9.3.11 Система за защита на тактовия сигнал (CSS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 9.3.12 Система за защита на тактовия сигнал на LSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 9.3.13 Тактов сигнал на ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 9.3.14 Часовник на реално време . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 9.3.15 Таймер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 9.3.16 Часовник за наблюдение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 9.3.17 Възможност за изключване на такта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 9.3.18 Измерване на вътрешен/външен тактов сигнал с TIM15/TIM16/TIM17 . . . . . 337 9.3.19 Регистри за активиране на периферен тактов сигнал
(RCC_AHBxENR, RCC_APBxENRy) . . . . . . . . . . . . . . . . . . . . . . . . . . 340
9.4 Режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 9.5 RCC TrustZone® сигурност . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 9.6 RCC привилегирован и непривилегирован режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 9.7 RCC прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 9.8 RCC регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
9.8.1 Регистър за управление на RCC тактов сигнал (RCC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 9.8.2 Регистър за калибриране на вътрешни източници на тактов сигнал на RCC (RCC_ICSCR) . . . . . . 348 9.8.3 Регистър за конфигуриране на RCC тактов сигнал (RCC_CFGR) . . . . . . . . . . . . . . . . 349 9.8.4 Регистър за конфигуриране на RCC PLL (RCC_PLLCFGR) . . . . . . . . . . . . . . . 352 9.8.5 Регистър за конфигуриране на RCC PLLSAI1 (RCC_PLLSAI1CFGR) . . . . . . . . 355 9.8.6 Регистър за конфигурация на RCC PLLSAI2 (RCC_PLLSAI2CFGR) . . . . . . . . 358 9.8.7 Регистър за разрешаване на прекъсване на RCC тактов инструмент (RCC_CIER) . . . . . . . . . . . . . . . . 360 9.8.8 Регистър за флагове за прекъсване на RCC тактов инструмент (RCC_CIFR) . . . . . . . . . . . . . . . . . . 361 9.8.9 Регистър за изчистване на прекъсване на RCC тактов инструмент (RCC_CICR) . . . . . . . . . . . . . . . . . . 363 9.8.10 RCC AHB1 регистър за нулиране на периферия (RCC_AHB1RSTR) . . . . . . . . . . 364 9.8.11 RCC AHB2 регистър за нулиране на периферия (RCC_AHB2RSTR) . . . . . . . . . . 365 9.8.12 RCC AHB3 регистър за нулиране на периферия (RCC_AHB3RSTR) . . . . . . . . . . 367 9.8.13 RCC APB1 регистър за нулиране на периферия 1 (RCC_APB1RSTR1) . . . . . . . . 368 9.8.14 RCC APB1 регистър за нулиране на периферия 2 (RCC_APB1RSTR2) . . . . . . . . . 370 9.8.15 Регистър за нулиране на периферно устройство на RCC APB2 (RCC_APB2RSTR) . . . . . . . . . . 371
10/2187
RM0438 Версия 8
RM0438
Съдържание
9.8.16 9.8.17 9.8.18 9.8.19 9.8.20 9.8.21 9.8.22
9.8.23
9.8.24
9.8.25
9.8.26
9.8.27
9.8.28
9.8.29 9.8.30 9.8.31 9.8.32
9.8.33 9.8.34 9.8.35 9.8.36 9.8.37 9.8.38 9.8.39 9.8.40 9.8.41 9.8.42
RCC AHB1 регистър за активиране на периферен такт (RCC_AHB1ENR) . . . . . 373 RCC AHB2 регистър за активиране на периферен такт (RCC_AHB2ENR) . . . . . 374 RCC AHB3 регистър за активиране на периферен такт (RCC_AHB3ENR) . . . . . . 376
RCC APB1 регистър за активиране на периферен такт 1 (RCC_APB1ENR1) . . . 377 RCC APB1 регистър за активиране на периферен такт 2 (RCC_APB1ENR2) . . . 379
Регистър за активиране на периферни тактови устройства RCC APB2 (RCC_APB2ENR) . . . . . 381 Регистър за активиране на периферни тактови устройства RCC AHB1 в режими на заспиване и стоп (RCC_AHB1SMENR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382 Регистър за активиране на периферни тактови устройства RCC AHB2 в режими на заспиване и стоп (RCC_AHB2SMENR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Регистър за активиране на периферни тактови устройства RCC AHB3 в режими на заспиване и стоп (RCC_AHB3SMENR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 Регистър за активиране на периферни тактови устройства RCC APB1 в режими на заспиване и стоп 1 (RCC_APB1SMENR1) . . . . . . . . . . . . . . . . . . . . . . . . . . 387 Регистър за активиране на периферни тактови устройства RCC APB1 в режими на заспиване и стоп 2 (RCC_APB1SMENR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Регистър за активиране на периферни тактови устройства на RCC APB2 в режими на заспиване и стоп (RCC_APB2SMENR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Регистър 1 за конфигурация на независими тактови устройства на RCC периферни устройства (RCC_CCIPR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 Регистър за контрол на домейна на резервно копие на RCC (RCC_BDCR) . . . . . . . . . . . . . . . . 395
Регистър за управление/състояние на RCC (RCC_CSR) . . . . . . . . . . . . . . . . . . . . . . . . . . 398 RC регистър за възстановяване на RCC тактова честота (RCC_CRRCR) . . . . . . . . . . . . . . . . 400 Регистър 2 за конфигурация на независим тактов сигнал на RCC периферни устройства (RCC_CCIPR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Регистър за конфигурация на OCTOSPI закъснение (RCC_DLYCFGR) . . . . . . . . . . 402 Регистър за защитена конфигурация на RCC (RCC_SECCFGR) . . . . . . . . . . . . . 403 Регистър за защитено състояние на RCC (RCC_SECSR) . . . . . . . . . . . . . . . . . . . 405
Регистър за състояние на сигурността на RCC AHB1 (RCC_AHB1SECSR) . . . . . . . . . . . 407 Регистър за състояние на сигурността на RCC AHB2 (RCC_AHB2SECSR) . . . . . . . . . . 408 Регистър за състояние на сигурността на RCC AHB3 (RCC_AHB3SECSR) . . . . . . . . . . 410
Регистър за състояние на сигурността на RCC APB1 1 (RCC_APB1SECSR1) . . . . . . . . 411 Регистър за състояние на сигурността на RCC APB1 2 (RCC_APB1SECSR2) . . . . . . . 414 Регистър за състояние на сигурността на RCC APB2 (RCC_APB2SECSR) . . . . . . . . . . 415
Карта на регистъра на RCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
10
Система за възстановяване на тактовия сигнал (CRS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
10.1 Въведение в CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
10.2 Основни характеристики на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
RM0438 Версия 8
11/2187
54
Съдържание
RM0438
10.3 10.4
10.5 10.6 10.7
Внедряване на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 Функционално описание на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.4.1 Блокова схема на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 10.4.2 Вътрешни сигнали на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 10.4.3 Вътрешни сигнали на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 10.4.4 Вход за синхронизация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 10.4.5 Измерване на честотна грешка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 10.4.6 Оценка на честотната грешка и автоматично подравняване . . . . . . . . . . . . . . 428 XNUMX Инициализация и конфигуриране на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XNUMX
CRS в режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 CRS прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 CRS регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
10.7.1 CRS контролен регистър (CRS_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 10.7.2 CRS конфигурационен регистър (CRS_CFGR) . . . . . . . . . . . . . . . . . . . . . . . 430 10.7.3 CRS регистър за прекъсване и състояние (CRS_ISR) . . . . . . . . . . . . . . . . . . 431 10.7.4 CRS регистър за изчистване на флага за прекъсване (CRS_ICR) . . . . . . . . . . . . . . . . . . . . . . . 433 10.7.5 Карта на регистъра на CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
11
Входно-изходни устройства с общо предназначение (GPIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
11.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
11.2 Основни характеристики на GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
11.3 Функционално описание на GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
11.3.1 Вход/изход с общо предназначение (GPIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
11.3.2 Мултиплексор и картографиране на I/O пинове с алтернативна функция . . . . . . . . . . . . . . . 438
11.3.3 Регистри за управление на входно/изходни портове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
11.3.4 Регистри за данни на входно/изходни портове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
11.3.5 Побитова обработка на входно/изходни данни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
11.3.6 GPIO заключващ механизъм . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
11.3.7 Алтернативна функция на вход/изход на вход/изход . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
11.3.8 Външни линии за прекъсване/събуждане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
11.3.9 Конфигурация на входа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
11.3.10 Конфигурация на изхода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
11.3.11 Конфигурация на алтернативна функция . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
11.3.12 Аналогова конфигурация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
11.3.13 Използване на пиновете на осцилатора HSE или LSE като GPIO . . . . . . . . . . . . . . . . . 443
11.3.14 Използване на GPIO пиновете в домейна за захранване на RTC . . . . . . . . . . . . . . . . . 443
11.3.15 Използване на PH3 като GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
12/2187
RM0438 Версия 8
RM0438
Съдържание
11.4 11.5 11.6
Сигурност на TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
Привилегирован и непривилегирован режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
GPIO регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
11.6.1 Регистър на режима на GPIO порт (GPIOx_MODER) (x =A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
11.6.2 Регистър за типа изход на GPIO порт (GPIOx_OTYPER) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
11.6.3 Регистър за скорост на изхода на GPIO порт (GPIOx_OSPEEDR) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
11.6.4 Регистър за изтегляне/изтегляне на GPIO порт (GPIOx_PUPDR) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
11.6.5 Регистър за входни данни на GPIO порт (GPIOx_IDR) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
11.6.6 Регистър за изходни данни на GPIO порт (GPIOx_ODR) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
11.6.7 Регистър за задаване/нулиране на битове на GPIO порт (GPIOx_BSRR) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
11.6.8 Регистър за заключване на конфигурацията на GPIO порт (GPIOx_LCKR) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
11.6.9 GPIO алтернативен регистър с нисък ниво (GPIOx_AFRL) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
11.6.10 GPIO регистър с алтернативна функция (GPIOx_AFRH) (x = A до H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
11.6.11 Регистър за нулиране на битовете на GPIO порт (GPIOx_BRR) (x = A до H) . . . . . . . . . . . . . 452
11.6.12 Регистър за защитена конфигурация на GPIO (GPIOx_SECCFGR) (x = A до H) . 452
11.6.13 Карта на GPIO регистрите . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
12
Контролер за системна конфигурация (SYSCFG) . . . . . . . . . . . . . . . . . . . . 456
12.1 Основни характеристики на SYSCFG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
12.2 SYSCFG TrustZone сигурност и привилегии . . . . . . . . . . . . . . . . . . . . . . . . 456
12.3 Регистри SYSCFG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
12.3.1 Регистър за защитена конфигурация на SYSCFG (SYSCFG_SECCFGR) . . . . . 458
12.3.2 Регистър 1 за конфигурация на SYSCFG (SYSCFG_CFGR1) . . . . . . . . . . . . 459
12.3.3 Регистър за маска за прекъсване на FPU (SYSCFG_FPUIMR) . . . . . . . . . . . . . . . . 461
12.3.4 SYSCFG Регистър за незащитено заключване на процесора (SYSCFG_CNSLCKR) . . . . . 461
12.3.5 SYSCFG Регистър за защитено заключване на процесора (SYSCFG_CSLOCKR) . . . . . . . . 462
12.3.6 Регистър 2 за конфигурация на SYSCFG (SYSCFG_CFGR2) . . . . . . . . . . . . 463
12.3.7 SYSCFG SRAM2 регистър за управление и състояние (SYSCFG_SCSR) . . . . 464
12.3.8 SYSCFG SRAM2 ключов регистър (SYSCFG_SKR) . . . . . . . . . . . . . . . . . 465
RM0438 Версия 8
13/2187
54
Съдържание
RM0438
12.3.9 SYSCFG SRAM2 регистър за защита от запис (SYSCFG_SWPR) . . . . . . 465 12.3.10 SYSCFG SRAM2 регистър за защита от запис 2 (SYSCFG_SWPR2) . . . 466 12.3.11 SYSCFG RSS регистър за команди (SYSCFG_RSSCMDR) . . . . . . . . . . 466 12.3.12 Карта на регистъра SYSCFG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
13
Матрица за свързване на периферни устройства . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
13.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
13.2 Обобщение на връзката . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
13.3 Подробности за взаимосвързването . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
13.3.1 От таймер (TIM1/TIM2/TIM3/TIM4/TIM5/TIM8/TIM15/TIM16/TIM17) към таймер (TIM1/TIM2/TIM3/TIM4/TIM5/TIM8/TIM15) . . . . . . . . . . . . . . . . 470
13.3.2 От таймер (TIM1/TIM2/TIM3/TIM4/TIM6/TIM8/TIM15) и EXTI към ADC (ADC1/ADC2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
13.3.3 От ADC1/ADC2 към таймер (TIM1/TIM8) . . . . . . . . . . . . . . . . . . . . . . . . 471
13.3.4 От таймер (TIM2/TIM4/TIM5/TIM6/TIM7/TIM8) и EXTI към DAC (DAC1/DAC2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
13.3.5 От таймер (TIM1/TIM3/TIM4/TIM6/TIM7/TIM8/TIM16/LPTIM1) и EXTI към DFSDM1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
13.3.6 От DFSDM1 към таймер (TIM1/TIM8/TIM15/TIM16/TIM17) . . . . . . . . . 473
13.3.7 От HSE, LSE, LSI, MSI, MCO, RTC към таймер (TIM2/TIM15/TIM16/TIM17) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
13.3.8 От RTC, COMP1, COMP2 към таймер с ниска консумация на енергия (LPTIM1/LPTIM2/LPTIM3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
13.3.9 От таймер (TIM1/TIM2/TIM3/TIM8/TIM15) към компаратори (COMP1/COMP2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
13.3.10 От АЦП (АЦП1) към АЦП (АЦП2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
13.3.11 От USB към таймер (TIM2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
13.3.12 От вътрешен аналогов източник към ADC (ADC1/ADC2) и OPAMP (ОПAMP1/OPAM2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
13.3.13 От компаратори (COMP1/COMP2) към таймери (TIM1/TIM2/TIM3/TIM8/TIM15/TIM16/TIM17) . . . . . . . . . . . . . . . . . . . . 475
13.3.14 От системни грешки към таймери (TIM1/TIM8/TIM15/TIM16/TIM17) . . . . 476
13.3.15 От таймери (TIM16/TIM17) към IRTIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
13.3.16 От АЦП (АЦП1/АЦП2) към DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
14
Контролер за директен достъп до паметта (DMA) . . . . . . . . . . . . . . . . . . . . . . . . 478
14.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
14.2 Основни характеристики на DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
14.3 Внедряване на DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
14/2187
RM0438 Версия 8
RM0438
Съдържание
14.4
14.5 14.6
14.3.1 DMA1 и DMA2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 14.3.2 Съпоставяне на DMA заявки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Функционално описание на DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
14.4.1 Блокова схема на DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 14.4.2 DMA пинове и вътрешни сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 14.4.3 DMA трансфери . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 14.4.4 DMA арбитраж . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 14.4.5 DMA канали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483 14.4.6 Ширина, подравняване и ендионност на DMA данните . . . . . . . . . . . . . . . . . . . . . . 488 14.4.7 Управление на грешки в DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
DMA прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 DMA регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
14.6.1 Регистър за състояние на прекъсване на DMA (DMA_ISR) . . . . . . . . . . . . . . . . . . . . . . . . 490 14.6.2 Регистър за изчистване на флага за прекъсване на DMA (DMA_IFCR) . . . . . . . . . . . . . . . . . . 494 14.6.3 Регистър за конфигурация на DMA канал x (DMA_CCRx) . . . . . . . . . . . . . 495 14.6.4 Регистър за брой данни за прехвърляне на DMA канал x (DMA_CNDTRx) . 500 14.6.5 Регистър за периферен адрес на DMA канал x (DMA_CPARx) . . . . . . . . 501 14.6.6 DMA канал x памет 0 адресен регистър (DMA_CM0ARx) . . . . . . . . 501 14.6.7 DMA канал x памет 1 адресен регистър (DMA_CM1ARx) . . . . . . . . 502 14.6.8 Карта на DMA регистъра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
15
Мултиплексор на заявки за DMA (DMAMUX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
15.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
15.2 Основни характеристики на DMAMUX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
15.3 DMAMUX реализация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
15.3.1 Създаване на DMAMUX екземпляри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
15.3.2 DMAMUX картографиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508
15.4 Функционално описание на DMAMUX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .511
15.4.1 Блокова схема на DMAMUX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
15.4.2 DMAMUX сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
15.4.3 DMAMUX канали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
15.4.4 DMAMUX защитени/незащитени канали . . . . . . . . . . . . . . . . . . . . . . . . . . 513
15.4.5 DMAMUX привилегировани/непривилегировани канали . . . . . . . . . . . . . . . . . . . . 513
15.4.6 DMAMUX мултиплексор на заявка линия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
15.4.7 Генератор на DMAMUX заявки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
15.5 DMAMUX прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
RM0438 Версия 8
15/2187
54
Съдържание
RM0438
15.6
DMAMUX регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
15.6.1 Регистър за конфигурация на канал x на мултиплексора на линията за заявки DMAMUX (DMAMUX_CxCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
15.6.2 Регистър за състоянието на канала за прекъсване на мултиплексора за заявки на DMAMUX (DMAMUX_CSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
15.6.3 Регистър за флагове за изчистване на канала за прекъсване на мултиплексор на линията за заявки DMAMUX (DMAMUX_CCFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
15.6.4 Регистър за конфигурация на канал x на генератора на DMAMUX заявки (DMAMUX_RGxCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
15.6.5 Регистър за състояние на прекъсване на генератора на заявки за DMAMUX (DMAMUX_RGSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
15.6.6 Регистър за изчистване на флага за прекъсване на генератора на заявки за DMAMUX (DMAMUX_RGCFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523
15.6.7 Карта на регистрите на DMAMUX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
16
Вложен контролер на векторни прекъсвания (NVIC) . . . . . . . . . . . . . . . . . . . . 528
16.1 Основни характеристики на NVIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
16.2 Регистър за калибровъчни стойности на SysTick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
16.3 Вектори на прекъсвания и изключения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
17
Разширен контролер на прекъсвания и събития (EXTI) . . . . . . . . . . . . . . . . 533
17.1 Основни характеристики на EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
17.2 Блокова схема на EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
17.2.1 EXTI връзки между периферни устройства и процесор . . . . . . . . . . . . . . . . 535
17.2.2 EXTI картографиране на прекъсване/събитие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
17.3 Функционално описание на EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
17.3.1 Събуждане от конфигурируем вход за събития EXTI . . . . . . . . . . . . . . . . . . . . . . . . . 537
17.3.2 Събуждане при директно въвеждане на EXTI събитие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
17.3.3 Избор на EXTI mux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
17.4 Функционално поведение на EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
17.5 Защита на събития EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
17.5.1 EXTI защита . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
17.5.2 Защита на привилегии EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
17.6 Регистри EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
17.6.1 17.6.2 17.6.3 17.6.4
EXTI нарастващ регистър за избор на тригер (EXTI_RTSR1) . . . . . . . . . . . . . . 543 EXTI падащ регистър за избор на тригер (EXTI_FTSR1) . . . . . . . . . . . . . 544 Регистър на събития за прекъсване на софтуера EXTI (EXTI_SWIER1) . . . . . . . . . . . 545 EXTI изчакващ регистър на нарастващия фронт (EXTI_RPR1) . . . . . . . . . . . . . . . . 546
16/2187
RM0438 Версия 8
RM0438
Съдържание
17.6.5 EXTI чакащ регистър на падащ фронт (EXTI_FPR1) . . . . . . . . . . . . . . . . 547 17.6.6 Регистър за конфигурация на сигурността EXTI (EXTI_SECCFGR1) . . . . . . . . . . 548 17.6.7 Регистър за конфигуриране на привилегии EXTI (EXTI_PRIVCFGR1) . . . . . . . . . 549 17.6.8 EXTI нарастващ регистър за избор на тригер (EXTI_RTSR2) . . . . . . . . . . . . . . 549 17.6.9 EXTI падащ регистър за избор на тригер (EXTI_FTSR2) . . . . . . . . . . . . . 550 17.6.10 Регистър на събития за прекъсване на софтуера EXTI (EXTI_SWIER2) . . . . . . . . . . . 551 17.6.11 EXTI нарастващ ръб в очакване регистър (EXTI_RPR2) . . . . . . . . . . . . . . . . 551 17.6.12 EXTI спадащ край чакащ регистър (EXTI_FPR2) . . . . . . . . . . . . . . . . 552 17.6.13 EXTI регистър за активиране на сигурността (EXTI_SECCFGR2) . . . . . . . . . . . . . . . 553 17.6.14 EXTI регистър за разрешаване на привилегии (EXTI_PRIVCFGR2) . . . . . . . . . . . . . . 553 17.6.15 EXTI външен регистър за избор на прекъсване (EXTI_EXTICRn) . . . . . . . . 554 17.6.16 Регистър за заключване на EXTI (EXTI_LOCKR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 17.6.17 Събуждане на EXTI CPU с регистър на маската за прекъсване (EXTI_IMR1) . . . . . . . 557 17.6.18 Събуждане на EXTI CPU с регистър на маската на събитието (EXTI_EMR1) . . . . . . . . 558 17.6.19 Събуждане на EXTI CPU с регистър на маската за прекъсване (EXTI_IMR2) . . . . . . . 559 17.6.20 Събуждане на EXTI CPU с регистър на маската на събитието (EXTI_EMR2) . . . . . . . . 559 17.6.21 Карта на регистъра EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
18
Изчислителна единица за циклична проверка за излишък (CRC) . . . . . . . . . . . . . . . . 563
18.1 Въведение в КПР . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
18.2 Основни характеристики на CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
18.3 Функционално описание на CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
18.3.1 Блокова схема на CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
18.3.2 Вътрешни сигнали на CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
18.3.3 CRC операция . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
18.4 CRC регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
18.4.1 18.4.2 18.4.3 18.4.4
CRC регистър за данни (CRC_DR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 CRC независим регистър за данни (CRC_IDR) . . . . . . . . . . . . . . . . . . . . . 566 CRC контролен регистър (CRC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 Начална стойност на CRC (CRC_INIT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
18.4.5 CRC полином (CRC_POL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
18.4.6 Карта на CRC регистъра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569
19
Гъвкав статичен контролер на паметта (FSMC) . . . . . . . . . . . . . . . . . . . . . 570
19.1 Въведение в FMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
19.2 Основни характеристики на FMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
RM0438 Версия 8
17/2187
54
Съдържание
RM0438
19.3 19.4 19.5 19.6
19.7
Блокова схема на FMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571 AHB интерфейс . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
19.4.1 Поддържани памети и транзакции . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
Съпоставяне на адреси на външни устройства . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
19.5.1 Съпоставяне на адреси на NOR/PSRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573 19.5.2 Съпоставяне на адреси на NAND флаш памет . . . . . . . . . . . . . . . . . . . . . . . . . . 574
NOR флаш/PSRAM контролер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575
19.6.1 Сигнали за интерфейс на външна памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576 19.6.2 Поддържани памети и транзакции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578 19.6.3 Общи правила за времезадаване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580 19.6.4 Асинхронни транзакции на NOR флаш/PSRAM контролер . . . . . . . . . . . . 580 19.6.5 Синхронни транзакции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598 19.6.6 Регистри на NOR/PSRAM контролер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605
NAND флаш контролер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
19.7.1 Сигнали за интерфейс на външна памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613 19.7.2 Поддържани NAND флаш памети и транзакции . . . . . . . . . . . . . . . . 614 19.7.3 Времеви диаграми за NAND флаш памет . . . . . . . . . . . . . . . . . . . . . . . . . 615 19.7.4 NAND флаш операции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615 19.7.5 Функционалност за предварително изчакване на NAND флаш памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616 19.7.6 Изчисляване на кода за коригиране на грешки (ECC)
в NAND флаш памет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617 19.7.7 Регистри на NAND флаш контролера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618 19.7.8 Карта на FMC регистрите . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
20
Octo-SPI интерфейс (OCTOSPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
20.1 Въведение в OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
20.2 Основни функции на OCTOSPI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
20.3 Внедряване на OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
20.4 Функционално описание на OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
20.4.1 Блокова схема на OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
20.4.2 OCTOSPI пинове и вътрешни сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
20.4.3 OCTOSPI интерфейс към режими на паметта . . . . . . . . . . . . . . . . . . . . . . . . . . 630
20.4.4 OCTOSPI протокол за обикновени команди . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
20.4.5 Сигнален интерфейс на протокола за обикновени команди OCTOSPI . . . . . . . . . . . . . 634
20.4.6 Протокол HyperBus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637
20.4.7 Специфични характеристики . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
18/2187
RM0438 Версия 8
RM0438
Съдържание
20.5 20.6 20.7
20.4.8 Въвеждане на работния режим OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . 642 20.4.9 Индиректен режим OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 20.4.10 OCTOSPI автоматичен режим на запитване за състояние . . . . . . . . . . . . . . . . . . . . . . 644 20.4.11 OCTOSPI режим на карта на паметта . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645 20.4.12 Въведение в конфигурацията на OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . 646 20.4.13 Системна конфигурация OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646 20.4.14 Конфигурация на OCTOSPI устройство . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646 20.4.15 Конфигурация на редовен команден режим OCTOSPI . . . . . . . . . . . . . . . . 649 20.4.16 Конфигурация на OCTOSPI HyperBus протокол . . . . . . . . . . . . . . . . . . . . . 651 20.4.17 Управление на грешки в OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652 20.4.18 OCTOSPI ЗАЕТ и ПРЕКРАТЯВАНЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653 20.4.19 Преконфигуриране или деактивиране на OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653 20.4.20 Поведение на NCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
Подравняване на адреса и номер на данните. . . . . . . . . . . . . . . . . . . . . . . . . . . 655 OCTOSPI прекъсвания. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656 OCTOSPI регистрира . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
20.7.1 OCTOSPI контролен регистър (OCTOSPI_CR) . . . . . . . . . . . . . . . . . . . . . 657 20.7.2 Регистър за конфигурация на OCTOSPI устройство 1 (OCTOSPI_DCR1) . . . . . . 659 20.7.3 Регистър за конфигурация на OCTOSPI устройство 2 (OCTOSPI_DCR2) . . . . . . 661 20.7.4 Регистър за конфигурация на OCTOSPI устройство 3 (OCTOSPI_DCR3) . . . . . . 662 20.7.5 Регистър за конфигурация на OCTOSPI устройство 4 (OCTOSPI_DCR4) . . . . . . 662 20.7.6 Регистър на състоянието на OCTOSPI (OCTOSPI_SR) . . . . . . . . . . . . . . . . . . . . . . 663 20.7.7 OCTOSPI флаг чист регистър (OCTOSPI_FCR) . . . . . . . . . . . . . . . . . . 664 20.7.8 OCTOSPI регистър на дължината на данните (OCTOSPI_DLR) . . . . . . . . . . . . . . . . 664 20.7.9 Адресен регистър на OCTOSPI (OCTOSPI_AR) . . . . . . . . . . . . . . . . . . . . 665 20.7.10 OCTOSPI регистър на данни (OCTOSPI_DR) . . . . . . . . . . . . . . . . . . . . . . . 665 20.7.11 OCTOSPI регистър на маската за състояние на запитване (OCTOSPI_PSMKR) . . . . . . . 666 20.7.12 OCTOSPI регистър на съвпадение на състоянието на запитване (OCTOSPI_PSMAR) . . . . . . . 667 20.7.13 Регистър на интервала на запитване на OCTOSPI (OCTOSPI_PIR) . . . . . . . . . . . . . . 667 20.7.14 Комуникационен конфигурационен регистър на OCTOSPI (OCTOSPI_CCR) . . 667 20.7.15 OCTOSPI конфигурационен регистър за времето (OCTOSPI_TCR) . . . . . . . . . . 670 20.7.16 Регистър на инструкции OCTOSPI (OCTOSPI_IR) . . . . . . . . . . . . . . . . . . . 670 20.7.17 Регистър на алтернативни байтове на OCTOSPI (OCTOSPI_ABR) . . . . . . . . . . . . . 671 20.7.18 OCTOSPI регистър за изчакване с ниска мощност (OCTOSPI_LPTR) . . . . . . . . . . 671 20.7.19 Регистър за конфигуриране на комуникация с обвивка на OCTOSPI
(OCTOSPI_WPCCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672 20.7.20 Регистър за конфигуриране на времето за обвиване на OCTOSPI (OCTOSPI_WPTCR) . . 674
RM0438 Версия 8
19/2187
54
Съдържание
RM0438
20.7.21 Регистър на инструкции за обвиване на OCTOSPI (OCTOSPI_WPIR) . . . . . . . . . . . . 674 20.7.22 Регистър на алтернативните байтове на OCTOSPI (OCTOSPI_WPABR) . . . . . . 675 20.7.23 OCTOSPI запис на комуникационен конфигурационен регистър
(OCTOSPI_WCCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675 20.7.24 Регистър за конфигурация на времето за запис на OCTOSPI (OCTOSPI_WTCR) . . . . 677 20.7.25 OCTOSPI регистър на инструкции за запис (OCTOSPI_WIR) . . . . . . . . . . . . . 678 20.7.26 OCTOSPI записва регистър на алтернативни байтове (OCTOSPI_WABR). . . . . . . 678 20.7.27 OCTOSPI HyperBus конфигурационен регистър за латентност
(OCTOSPI_HLCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679 20.7.28 OCTOSPI регистрационна карта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
21
Аналогово-цифрови преобразуватели (ADC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
21.1 Въведение в аналогово-цифровия преобразувател . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
21.2 Основни характеристики на аналогово-цифровия преобразувател . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
21.3 Реализация на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685
21.4 Функционално описание на аналогово-цифровия преобразувател . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686
21.4.1 Блокова схема на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686
21.4.2 Пинове на аналогово-цифровия преобразувател и вътрешни сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
21.4.3 Тактови генератори на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688
21.4.4 Свързване на ADC1/2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690
21.4.5 Интерфейс за подчинено устройство . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
21.4.6 Режим на дълбоко изключване на ADC (DEEPPWD) и сила на звука на ADCtagд регулатор (ADVREGEN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
21.4.7 Еднопосочен и диференциален входен канал . . . . . . . . . . . . . . . . . . . . . 693
21.4.8 Калибриране (ADCAL, ADCALDIF, ADC_CALFACT) . . . . . . . . . . . . . . . 693
21.4.9 Управление на включване/изключване на аналогово-цифровия преобразувател (ADEN, ADDIS, ADRDY) . . . . . . . . . . . . . . . . . . . . . 696
21.4.10 Ограничения при записване на управляващите битове на аналогово-цифровия преобразувател . . . . . . . . . . . . . . . . . . . . 697
21.4.11 Избор на канал (ADC_SQRy, ADC_JSQR) . . . . . . . . . . . . . . . . . . . . 698
21.4.12 Програмируеми по каналиampвреме за предаване (SMPR1, SMPR2) . . . . . 699
21.4.13 Режим на единично преобразуване (CONT = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
21.4.14 Режим на непрекъснато преобразуване (CONT = 1) . . . . . . . . . . . . . . . . . . . . . . . 700
21.4.15 Стартиране на реализации (ADSTART, JADSTART) . . . . . . . . . . . . . . . . . . . . 701
21.4.16 Време на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702
21.4.17 Спиране на текущо преобразуване (ADSTP, JADSTP) . . . . . . . . . . . . . . 702
21.4.18 Преобразуване на външен тригер и полярност на тригера (EXTSEL, EXTEN, JEXTSEL, JEXTEN) . . . . . . . . . . . . . . . . . . . . . . . . 704
21.4.19 Управление на инжектирани канали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706
21.4.20 Прекъснат режим (DISCEN, DISCNUM, JDISCEN) . . . . . . . . . . . . 708
20/2187
RM0438 Версия 8
RM0438
Съдържание
21.5 21.6 21.7
21.4.21 Опашка от контекст за инжектирани реализации . . . . . . . . . . . . . . . . . . . . . . . . . 709 21.4.22 Програмируема резолюция (RES) – Режим на бързо преобразуване . . . . . . . . . . . 717 21.4.23 Край на преобразуването, край на sampФаза на преобразуване (EOC, JEOC, EOSMP) . . 718 21.4.24 Край на последователността на преобразуване (EOS, JEOS) . . . . . . . . . . . . . . . . . . . . . . . 718 21.4.25 Времеви диаграми (напр.ampле (единични/непрекъснати режими,
хардуерни/софтуерни тригери) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719 21.4.26 Управление на данни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 21.4.27 Управление на реализациите с помощта на DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . 726 21.4.28 Динамични функции за ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 21.4.29 Аналогов контролер на прозореца (AWD1EN, JAWD1EN, AWD1SGL,
AWD1CH, AWD2CH, AWD3CH, AWD_HTx, AWD_LTx, AWDx). . . . . 732 21.4.30 Оувърсampлер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736 21.4.31 Двойни режими на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 21.4.32 Температурен сензор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755 21.4.33 Мониторинг на захранването VBAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 757 21.4.34 Мониторинг на вътрешния обемtagд препратка . . . . . . . . . . . . . . . . . . . . . . . . 758
АЦП в режим на ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759 АЦП прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 760 АЦП регистри (за всеки АЦП) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761
21.7.1 Регистър за прекъсване и състояние на АЦП (ADC_ISR) . . . . . . . . . . . . . . . . . . . . . 761 21.7.2 Регистър за разрешаване на прекъсване на АЦП (ADC_IER) . . . . . . . . . . . . . . . . . . . . . . . . . 763 21.7.3 Регистър за управление на АЦП (ADC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765 21.7.4 Регистър за конфигурация на АЦП (ADC_CFGR) . . . . . . . . . . . . . . . . . . . . . . . . . 768 21.7.5 Регистър 2 за конфигурация на АЦП (ADC_CFGR2) . . . . . . . . . . . . . . . . . . . 772 21.7.6 АЦПampрегистър за време 1 (ADC_SMPR1) . . . . . . . . . . . . . . . . . . . . . 774 21.7.7 ADCampРегистър за време 2 (ADC_SMPR2) . . . . . . . . . . . . . . . . . . . . . . 775 21.7.8 Регистър за праг 1 на ADC (ADC_TR1) . . . . . . . . . . . . . . . . . . 776 21.7.9 Регистър за праг 2 на ADC (ADC_TR2) . . . . . . . . . . . . . . . . . 776 21.7.10 Регистър за праг 3 на ADC (ADC_TR3) . . . . . . . . . . . . . . . . . 777 21.7.11 Регистър 1 на АЦП с регулярна последователност (ADC_SQR1) . . . . . . . . . . . . . . . . . 778 21.7.12 Регистър 2 на АЦП с регулярна последователност (ADC_SQR2) . . . . . . . . . . . . . . . . . 779 21.7.13 Регистър 3 на АЦП с регулярна последователност (ADC_SQR3) . . . . . . . . . . . . . . . . 780 21.7.14 Регистър 4 на АЦП с регулярна последователност (ADC_SQR4) . . . . . . . . . . . . . . . . . 781 21.7.15 Регистър за обикновени данни на АЦП (ADC_DR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 781 21.7.16 Регистър за инжектирана последователност на АЦП (ADC_JSQR) . . . . . . . . . . . . . . . . . . 782 21.7.17 Регистър за отместване y на АЦП (ADC_OFRy) . . . . . . . . . . . . . . . . . . . . . . . . . . 784 21.7.18 Регистър на данни, инжектирани от ADC в канал y (ADC_JDRy) . . . . . . . . . . . . . . . 785
RM0438 Версия 8
21/2187
54
Съдържание
RM0438
21.8 21.9
21.7.19 Регистър за конфигурация на аналоговия контролер 2 на АЦП (ADC_AWD2CR) . . . . 785 21.7.20 Регистър за конфигурация на аналоговия контролер 3 на АЦП (ADC_AWD3CR) . . . . 786 21.7.21 Регистър за избор на диференциален режим на АЦП (ADC_DIFSEL) . . . . . . . . . . . 786 21.7.22 Коефициенти за калибриране на АЦП (ADC_CALFACT) . . . . . . . . . . . . . . . . . . . . . . . 787
Общи регистри на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787
21.8.1 Общ регистър за състояние на АЦП (ADC_CSR) . . . . . . . . . . . . . . . . . . . . . . . 787 21.8.2 Общ регистър за управление на АЦП (ADC_CCR) . . . . . . . . . . . . . . . . . . . . . 789 21.8.3 Общ регистър за обикновени данни на АЦП за двоен режим (ADC_CDR) . . . . . 792
Карта на регистрите на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 792
22
Цифрово-аналогов преобразувател (ЦАП) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
22.1 Въведение в КПР . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
22.2 Основни характеристики на ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
22.3 Внедряване на DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797
22.4 Функционално описание на ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
22.4.1 Блокова схема на ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
22.4.2 Активиране на ЦАП канал . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
22.4.3 Формат на данните на DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
22.4.4 ЦАП преобразуване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
22.4.5 Изходен обем на ЦАПtagд. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
22.4.6 Избор на спусък на ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 802
22.4.7 Заявки за DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 803
22.4.8 Генериране на шум . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 803
22.4.9 Генериране на триъгълни вълни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805
22.4.10 Режими на ЦАП канала . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 806
22.4.11 Калибриране на буфера на ЦАП канала . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809
22.4.12 Режими на преобразуване на канали на ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810
22.4.13 Режими на преобразуване на канали с двоен ЦАП (ако са налични двойни канали) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 811
22.5 ЦАП в режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815
22.6 Прекъсвания на ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816
22.7 ЦАП регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816
22.7.1 Управляващ регистър на ЦАП (DAC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816
22.7.2 Регистър за задействане на софтуерен ЦАП (DAC_SWTRGR) . . . . . . . . . . . . . . . . . 820
22.7.3 ЦАП канал 1 12-битов регистър за съхранение на данни, подравнен надясно (DAC_DHR12R1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820
22/2187
RM0438 Версия 8
RM0438
Съдържание
22.7.4 ЦАП канал 1 12-битов регистър за съхранение на данни, подравнен вляво (DAC_DHR12L1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821
22.7.5 ЦАП канал 1 8-битов регистър за съхранение на данни, подравнен вдясно (DAC_DHR8R1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821
22.7.6 ЦАП канал 2 12-битов регистър за съхранение на данни, подравнен вдясно (DAC_DHR12R2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822
22.7.7 ЦАП канал 2 12-битов регистър за съхранение на данни, подравнен вляво (DAC_DHR12L2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822
22.7.8 ЦАП канал 2 8-битов регистър за съхранение на данни, подравнен надясно (DAC_DHR8R2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823
22.7.9 Двоен ЦАП 12-битов регистър за съхранение на данни, подравнен вдясно (DAC_DHR12RD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823
22.7.10 Двоен ЦАП 12-битов регистър за съхранение на данни, подравнен вляво (DAC_DHR12LD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 824
22.7.11 Двоен ЦАП 8-битов регистър за съхранение на данни, подравнен вдясно (DAC_DHR8RD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 824
22.7.12 Регистър за изходни данни на ЦАП канал 1 (DAC_DOR1) . . . . . . . . . . . . . . . 825
22.7.13 Регистър за изходни данни на ЦАП канал 2 (DAC_DOR2) . . . . . . . . . . . . . . . 825
22.7.14 Регистър за състояние на DAC (DAC_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825
22.7.15 Регистър за управление на калибрирането на ЦАП (DAC_CCR) . . . . . . . . . . . . . . . . . . . 827
22.7.16 Регистър за управление на режима на ЦАП (DAC_MCR) . . . . . . . . . . . . . . . . . . . . . . . . 827
22.7.17 ЦАП канал 1 sample и задръжте sampрегистър за време (DAC_SHSR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829
22.7.18 ЦАП канал 2 sample и задръжте sampрегистър за време (DAC_SHSR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829
22.7.19 КПРampРегистър за запис и време на задържане (DAC_SHHR) . . . . . . . . . . . . . . . 829
22.7.20 КПРampрегистър за време за опресняване и задържане (DAC_SHRR) . . . . . . . . . 830
22.7.21 Карта на регистъра на ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831
23
Voltagреферентен буфер (VREFBUF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
23.1 Въведение във VREFBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
23.2 Функционално описание на VREFBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
23.3 Подрязване на VREFBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834
23.4 Регистри VREFBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835
23.4.1 VREFBUF регистър за управление и състояние (VREFBUF_CSR) . . . . . . . . . . 835
23.4.2 VREFBUF регистър за управление на калибрирането (VREFBUF_CCR) . . . . . . . . . . 836
23.4.3 Карта на регистъра VREFBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836
24
Сравнител (COMP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837
24.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837
RM0438 Версия 8
23/2187
54
Съдържание
RM0438
24.2 24.3
24.4 24.5 24.6
Основни характеристики на COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 Функционално описание на COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838
24.3.1 Блокова схема на COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 24.3.2 COMP пинове и вътрешни сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 24.3.3 COMP нулиране и тактови честоти . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 24.3.4 Механизъм за заключване на компаратора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 24.3.5 Компаратор за прозорец . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840 24.3.6 Хистерезис . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840 24.3.7 Функция за затъмняване на изхода на компаратора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841 24.3.8 Режими на мощност и скорост на компаратора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842
COMP режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842 COMP прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842 COMP регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843
24.6.1 Регистър за управление и състояние на компаратор 1 (COMP1_CSR) . . . . . . . . . . . 843 24.6.2 Регистър за управление и състояние на компаратор 2 (COMP2_CSR) . . . . . . . . . . . 845 24.6.3 Карта на регистъра COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 848
25
Оперативен ampлифъри (OPAMP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
25.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
25.2 ОПAMP основни характеристики . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
25.3 ОПAMP функционално описание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
25.3.1 ОПAMP нулиране и часовници . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
25.3.2 Първоначална конфигурация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850
25.3.3 Маршрутизиране на сигнала . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850
25.3.4 ОПAMP режими . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851
25.3.5 Калибриране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 854
25.4 ОПAMP режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 856
25.5 ОПAMP регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857
25.5.1 ОПAMP1 регистър за управление/състояние (OPAMP1_КСО) . . . . . . . . . . . . . . . . 857
25.5.2 ОПAMP1 регистър за отместване на тример в нормален режим (OPAMP1_OTR) . . 858
25.5.3 ОПAMP1 регистър за подрязване на отместване в режим на ниска консумация на енергия (OPAMP1_LPOTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858
25.5.4 ОПAMP2 регистър за управление/състояние (OPAMP2_CRS) . . . . . . . . . . . . . . . . 859
25.5.5 ОПAMP2 регистър за отместване на тример в нормален режим (OPAMP2_OTR) . . 860
25.5.6 ОПAMP2 регистър за подрязване на отместване в режим на ниска консумация на енергия (OPAMP2_LPOTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860
25.5.7 ОПAMP регистрова карта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 861
24/2187
RM0438 Версия 8
RM0438
Съдържание
26
Цифров филтър за сигма делта модулатори (DFSDM) . . . . . . . . . . . . . . . 862
26.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 862
26.2 Основни характеристики на DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863
26.3 Внедряване на DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864
26.4 Функционално описание на DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865
26.4.1 Блокова схема на DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865
26.4.2 DFSDM пинове и вътрешни сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866
26.4.3 Нулиране и тактови честоти на DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 867
26.4.4 Приемо-предаватели за серийни канали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 868
26.4.5 Конфигуриране на входния сериен интерфейс . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878
26.4.6 Паралелни входове за данни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878
26.4.7 Избор на канал . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 880
26.4.8 Конфигурация на цифров филтър . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881
26.4.9 Интеграторно устройство . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882
26.4.10 Аналогов пазител . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883
26.4.11 Детектор за късо съединение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
26.4.12 Детектор за екстремни стойности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886
26.4.13 Блок данни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886
26.4.14 Формат на подписани данни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 887
26.4.15 Стартиране на реализации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888
26.4.16 Непрекъснат и бърз непрекъснат режим . . . . . . . . . . . . . . . . . . . . . . . . . 888
26.4.17 Заявка за приоритет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889
26.4.18 Оптимизация на мощността в режим на работа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890
26.5 DFSDM прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890
26.6 DFSDM DMA прехвърляне . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892
26.7 DFSDM канал y регистри (y=0..3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892
26.7.1 Регистър за конфигурация на DFSDM канал y (DFSDM_CHyCFGR1) . . . . 892
26.7.2 Регистър за конфигурация на DFSDM канал y (DFSDM_CHyCFGR2) . . . . 894
26.7.3 Регистър за аналогов контролер и детектор за късо съединение на DFSDM канал y (DFSDM_CHyAWSCDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895
26.7.4 Регистър на данни за филтър за наблюдение на DFSDM канал y (DFSDM_CHyWDATR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896
26.7.5 Регистър за входни данни на DFSDM канал y (DFSDM_CHyDATINR) . . . . . . 896
26.7.6 DFSDM канал y регистър на забавяне (DFSDM_CHyDLYR) . . . . . . . . . . . . 897
26.8 Регистри на DFSDM филтърния x модул (x=0..3) . . . . . . . . . . . . . . . . . . . . . . . . 898
26.8.1 DFSDM филтър x управляващ регистър 1 (DFSDM_FLTxCR1) . . . . . . . . . . . . 898
26.8.2 DFSDM филтър x управляващ регистър 2 (DFSDM_FLTxCR2) . . . . . . . . . . . . 901
RM0438 Версия 8
25/2187
54
Съдържание
RM0438
26.8.3 Регистър за прекъсване и състояние на DFSDM филтър x (DFSDM_FLTxISR) . . . . . 902
26.8.4 Регистър за изчистване на флага за прекъсване на DFSDM филтър x (DFSDM_FLTxICR) . . . . . 904
26.8.5 Регистър за избор на инжектирана група канали с DFSDM филтър x (DFSDM_FLTxJCHGR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905
26.8.6 DFSDM регистър за управление на филтър x (DFSDM_FLTxFCR) . . . . . . . . . . . . . . 905
26.8.7 DFSDM регистър на данни за филтър x за инжектирана група (DFSDM_FLTxJDATAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906
26.8.8 DFSDM регистър за данни на филтър x за обикновения канал (DFSDM_FLTxRDATAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907
26.8.9 Регистър за висок праг на аналоговия филтър x на контролера DFSDM (DFSDM_FLTxAWHTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908
26.8.10 DFSDM филтър x регистър за нисък праг на аналоговия контролер (DFSDM_FLTxAWLTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908
26.8.11 Регистър за състояние на аналоговия сторожов сензор DFSDM филтър x (DFSDM_FLTxAWSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
26.8.12 Регистър за флаг за изчистване на аналоговия watchdog филтър x (DFSDM_FLTxAWCFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
26.8.13 Регистър за максимуми на детектора на екстремуми на DFSDM филтър x (DFSDM_FLTxEXMAX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
26.8.14 Регистър на минимумите на детектора на екстремуми на DFSDM филтър x (DFSDM_FLTxEXMIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911
26.8.15 Регистър на таймера за преобразуване на филтър x от DFSDM (DFSDM_FLTxCNVTIMR) . . 911
26.8.16 Карта на регистъра на DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 912
27
Контролер с докосване (TSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920
27.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920
27.2 Основни характеристики на TSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920
27.3 Функционално описание на TSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921
27.3.1 Блокова схема на TSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921
27.3.2 Придобиване на пренос на повърхностен заряд върхуview . . . . . . . . . . . . . . . . . . . 921
27.3.3 Нулиране и тактови часовници . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924
27.3.4 Последователност за придобиване на пренос на заряд . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924
27.3.5 Функция за разпръснат спектър . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925
27.3.6 Грешка от максималния брой . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
27.3.7 SampИзбор на режим на входно/изходен кондензатор и канален входно/изходен режим . . . . . . . . . . . . 926
27.3.8 Режим на събиране на данни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 927
27.3.9 Хистерезис на входовете/изходите и управление с аналогови превключватели . . . . . . . . . . . . . . . . . . . . . . . . . 927
27.4 Режими с ниска консумация на енергия на TSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928
27.5 TSC прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928
26/2187
RM0438 Версия 8
RM0438
Съдържание
27.6
Регистри на TSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928
27.6.1 TSC управляващ регистър (TSC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928 27.6.2 Регистър за разрешаване на TSC прекъсвания (TSC_IER) . . . . . . . . . . . . . . . . . . . . . . . 931 27.6.3 Регистър за изчистване на TSC прекъсвания (TSC_ICR) . . . . . . . . . . . . . . . . . . . . . . . 932 27.6.4 Регистър за състояние на TSC прекъсвания (TSC_ISR) . . . . . . . . . . . . . . . . . . . . . . . . 932 27.6.5 Регистър за управление на хистерезиса на TSC I/O (TSC_IOHCR) . . . . . . . . . . . . . . . 933 27.6.6 Регистър за управление на аналогов превключвател на TSC I/O
(TSC_IOASCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933 27.6.7 TSC входно-изходни операцииampРегистър за управление на входно/изходни канали (TSC_IOSCR) . . . . . . . . . . . . . . . . . 934 27.6.8 Регистър за управление на TSC I/O канали (TSC_IOCCR) . . . . . . . . . . . . . . . . . 934 27.6.9 Регистър за състояние на управление на TSC I/O група (TSC_IOGCSR) . . . . . . . . . . . . 935 27.6.10 Регистър на брояча на TSC I/O група x (TSC_IOGxCR) . . . . . . . . . . . . . . . 935 27.6.11 Карта на TSC регистъра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936
28
Генератор на истински случайни числа (ГСЧ) . . . . . . . . . . . . . . . . . . . . . . . . . 938
28.1 Въведение в генератора на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938
28.2 Основни характеристики на генератора на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938
28.3 Функционално описание на случаен генератор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
28.3.1 Блокова диаграма на случаен генератор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
28.3.2 Вътрешни сигнали на генератора на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
28.3.3 Генериране на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
28.3.4 Инициализация на случаен генератор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942
28.3.5 Работа с генератор на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943
28.3.6 Тактиране на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945
28.3.7 Управление на грешки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945
28.3.8 Използване на ниска мощност на генератор на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946
28.4 Прекъсвания от генератор на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946
28.5 Време за обработка на генератор на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947
28.6 Валидиране на източника на ентропия на случаен генератор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947
28.6.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947
28.6.2 Условия за валидиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947
28.6.3 Събиране на данни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948
28.7 Регистри на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948
28.7.1 Регистър за управление на случайни числа (RNG_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948
28.7.2 Регистър за състояние на случайни числа (RNG_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950
28.7.3 Регистър на данни за случаен генератор (RNG_DR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
28.7.4 Регистър за контрол на теста за състоянието на случайните числа (RNG_HTCR) . . . . . . . . . . . . . . . . . . 952
RM0438 Версия 8
27/2187
54
Съдържание
RM0438
28.7.5 Карта на регистрите на случайни числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952
29
Хардуерен ускорител на AES (AES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
29.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
29.2 Основни характеристики на AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
29.3 Внедряване на AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
29.4 Функционално описание на AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954
29.4.1 Блокова схема на AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954
29.4.2 Вътрешни сигнали на AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954
29.4.3 AES криптографско ядро . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954
29.4.4 AES процедура за извършване на шифроваща операция . . . . . . . . . . . . . . . . . . . 960
29.4.5 Подготовка на ключ за AES декриптиране . . . . . . . . . . . . . . . . . . . . . . . . . . 963
29.4.6 Кражба на AES шифрован текст и допълване на данни . . . . . . . . . . . . . . . . . . . . . . . 963
29.4.7 Спиране и възобновяване на AES задача . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
29.4.8 Основни режими на верижно свързване на AES (ECB, CBC) . . . . . . . . . . . . . . . . . . . . . . . . 964
29.4.9 Режим на AES брояч (CTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969
29.4.10 AES режим на Галоа/брояч (GCM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971
29.4.11 Код за удостоверяване на съобщение AES Galois (GMAC) . . . . . . . . . . . . . . 976
29.4.12 AES брояч с CBC-MAC (CCM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
29.4.13 AES регистри за данни и размяна на данни . . . . . . . . . . . . . . . . . . . . . . . . . . 983
29.4.14 Регистри на ключове AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985
29.4.15 Регистри на вектори за инициализация на AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985
29.4.16 AES DMA интерфейс . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 986
29.4.17 Управление на грешки в AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 987
29.5 AES прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 988
29.6 Забавяне при обработка на AES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 988
29.7 AES регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989
29.7.1 AES контролен регистър (AES_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989
29.7.2 Регистър за състояние на AES (AES_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991
29.7.3 Регистър за въвеждане на AES данни (AES_DINR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 993
29.7.4 Регистър за изходни AES данни (AES_DOUTR) . . . . . . . . . . . . . . . . . . . . . . . 993
29.7.5 Регистър 0 на AES ключове (AES_KEYR0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994
29.7.6 Регистър 1 на AES ключове (AES_KEYR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994
29.7.7 Регистър 2 на AES ключове (AES_KEYR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995
29.7.8 Регистър 3 на AES ключове (AES_KEYR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995
29.7.9 Регистър 0 на вектор за инициализация на AES (AES_IVR0) . . . . . . . . . . . . . . . . . . 995
28/2187
RM0438 Версия 8
RM0438
Съдържание
29.7.10 Регистър 1 на AES инициализационен вектор (AES_IVR1) . . . . . . . . . . . . . . . . . . 996 29.7.11 Регистър 2 на AES инициализационен вектор (AES_IVR2) . . . . . . . . . . . . . . . . . . 996 29.7.12 Регистър 3 на AES инициализационен вектор (AES_IVR3) . . . . . . . . . . . . . . . . . 996 29.7.13 Регистър 4 на AES ключове (AES_KEYR4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 29.7.14 Регистър за AES ключове 5 (AES_KEYR5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 29.7.15 Регистър за AES ключове 6 (AES_KEYR6) . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 29.7.16 Регистър за AES ключове 7 (AES_KEYR7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998 29.7.17 AES регистри за спиране (AES_SUSPxR) . . . . . . . . . . . . . . . . . . . . . . . . . . 998 29.7.18 AES карта на регистрите . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 999
30
Хеш процесор (HASH) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001
30.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001
30.2 Основни характеристики на HASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001
30.3 HASH реализация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002
30.4 Функционално описание на HASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002
30.4.1 Блокова диаграма на HASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002
30.4.2 Вътрешни HASH сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003
30.4.3 Относно алгоритмите за сигурно хеширане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003
30.4.4 Изпращане на данни от съобщения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003
30.4.5 Изчисляване на дайджест на съобщения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005
30.4.6 Допълване на съобщения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006
30.4.7 Работа с HMAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008
30.4.8 HASH операции за спиране/възобновяване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010
30.4.9 HASH DMA интерфейс . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012
30.4.10 Управление на HASH грешки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012
30.4.11 Време за обработка на HASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012
30.5 HASH прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013
30.6 HASH регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014
30.6.1 HASH контролен регистър (HASH_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014
30.6.2 Регистър за въвеждане на HASH данни (HASH_DIN) . . . . . . . . . . . . . . . . . . . . . . . . 1016
30.6.3 HASH начален регистър (HASH_STR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017
30.6.4 Регистри за HASH дайджест . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018
30.6.5 Регистър за разрешаване на HASH прекъсвания (HASH_IMR) . . . . . . . . . . . . . . . . . . 1019
30.6.6 Регистър за състояние на HASH (HASH_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020
30.6.7 Регистри за размяна на HASH контекст . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020
30.6.8 Карта на HASH регистъра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021
RM0438 Версия 8
29/2187
54
Съдържание
RM0438
31
Механизъм за декриптиране в движение (OTFDEC) . . . . . . . . . . . . . . . . . . . . . . . 1023
31.1 Въведение в OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023
31.2 Основни характеристики на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023
31.3 Функционално описание на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024
31.3.1 Блокова схема на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024
31.3.2 Вътрешни сигнали на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024
31.3.3 OTFDEC декриптиране в движение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025
31.3.4 Използване на AES от OTFDEC при декриптиране в режим на брояч . . . . . . . . . . . . . 1026
31.3.5 Управление на потока . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027
31.3.6 Управление на грешките на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027
31.4 OTFDEC прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028
31.5 Информация за заявлението OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028
31.5.1 Процес на инициализация на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028
31.5.2 OTFDEC и управление на захранването . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1030
31.5.3 Криптиране за OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1030
31.5.4 Изходен код на CRC за OTFDEC ключ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031
31.6 Регистри на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1032
31.6.1 OTFDEC контролен регистър (OTFDEC_CR) . . . . . . . . . . . . . . . . . . . . . . 1032
31.6.2 Регистър за конфигурация на привилегирован контрол на достъпа на OTFDEC (OTFDEC_PRIVCFGR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033
31.6.3 Регистър за конфигурация на OTFDEC регион x (OTFDEC_RxCFGR) . . . . . 1033
31.6.4 Регистър на начален адрес на OTFDEC регион x (OTFDEC_RxSTARTADDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035
31.6.5 Регистър на краен адрес на OTFDEC регион x (OTFDEC_RxENDADDR) . 1035
31.6.6 OTFDEC регион x nonce регистър 0 (OTFDEC_RxNONCER0) . . . . . 1036
31.6.7 OTFDEC регион x nonce регистър 1 (OTFDEC_RxNONCER1) . . . . . 1037
31.6.8 OTFDEC регион x регистър на ключове 0 (OTFDEC_RxKEYR0) . . . . . . . . . . 1037
31.6.9 OTFDEC регион x регистър на ключове 1 (OTFDEC_RxKEYR1) . . . . . . . . . . 1038
31.6.10 OTFDEC регион x регистър на ключове 2 (OTFDEC_RxKEYR2) . . . . . . . . . . 1038
31.6.11 OTFDEC регион x регистър на ключове 3 (OTFDEC_RxKEYR3) . . . . . . . . . . 1039
31.6.12 Регистър за състояние на прекъсване на OTFDEC (OTFDEC_ISR) . . . . . . . . . . . . . . 1039
31.6.13 Регистър за изчистване на прекъсване на OTFDEC (OTFDEC_ICR) . . . . . . . . . . . . . . . 1040
31.6.14 Регистър за разрешаване на прекъсвания на OTFDEC (OTFDEC_IER) . . . . . . . . . . . . . . 1041
31.6.15 Карта на регистъра на OTFDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042
32
Ускорител с публичен ключ (PKA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046
32.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046
30/2187
RM0438 Версия 8
RM0438
Съдържание
32.2 32.3
32.4
32.5 32.6 32.7
Основни характеристики на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046 Функционално описание на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046
32.3.1 Блокова схема на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046 32.3.2 Вътрешни сигнали на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047 32.3.3 Нулиране и тактови сигнали на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047 32.3.4 Ускорение на публичен ключ на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047 32.3.5 Типични приложения за PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1049 32.3.6 PKA процедура за извършване на операция . . . . . . . . . . . . . . . . . . . . . . . . . . 1051 32.3.7 Управление на грешки в PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052
Работни режими на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052
32.4.1 Въведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052 32.4.2 Изчисляване на параметрите на Монтгомъри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1053 32.4.3 Модулно събиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054 32.4.4 Модулно изваждане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054 32.4.5 Модулно умножение и умножение по Монтгомъри . . . . . . . . . . . . . . . . . . . . . . . . 1055 32.4.6 Модулно степенуване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056 32.4.7 Модулна инверсия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056 32.4.8 Модулна редукция . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057 32.4.9 Аритметично събиране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057 32.4.10 Аритметично изваждане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057 32.4.11 Аритметично умножение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058 32.4.12 Аритметично сравнение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058 32.4.13 RSA CRT степенуване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1059 32.4.14 Точка от елиптичната крива Fp проверка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1059 32.4.15 ECC Fp скаларно умножение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1060 32.4.16 ECDSA знак . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061 32.4.17 ECDSA проверка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1063
Exampброй конфигурации и време за обработка . . . . . . . . . . . . . . . . . 1064
32.5.1 Поддържани елиптични криви . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064 32.5.2 Времена за изчисление . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1066
PKA прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1067 PKA регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1068
32.7.1 PKA контролен регистър (PKA_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1068 32.7.2 PKA регистър за състояние (PKA_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069 32.7.3 PKA регистър за флаг за изчистване (PKA_CLRFR) . . . . . . . . . . . . . . . . . . . . . . . . . . 1070 32.7.4 PKA RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
RM0438 Версия 8
31/2187
54
Съдържание
RM0438
32.7.5 Карта на регистъра на PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071
33
Таймери с разширено управление (TIM1/TIM8) . . . . . . . . . . . . . . . . . . . . . . . . . 1072
33.1 Въведение в TIM1/TIM8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072
33.2 Основни характеристики на TIM1/TIM8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072
33.3 Функционално описание на TIM1/TIM8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074
33.3.1 Единица за времева база . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074
33.3.2 Режими на брояча . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076
33.3.3 Брояч на повторения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1087
33.3.4 Външен тригерен вход . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1089
33.3.5 Избор на часовник . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1090
33.3.6 Заснемане/сравняване на канали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1094
33.3.7 Режим на заснемане на входа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1096
33.3.8 ШИМ входен режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1097
33.3.9 Режим на принудително извеждане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1098
33.3.10 Режим на сравнение на изхода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1099
33.3.11 ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1100
33.3.12 Асиметричен ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103
33.3.13 Комбиниран ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
33.3.14 Комбиниран 3-фазен ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105
33.3.15 Допълнителни изходи и вмъкване на мъртво време . . . . . . . . . . . . . . . 1106
33.3.16 Използване на функцията break . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108
33.3.17 Двупосочни входове за прекъсване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1114
33.3.18 Изчистване на OCxREF сигнала при външно събитие . . . . . . . . . . . . . . 1115
33.3.19 6-стъпково ШИМ генериране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117
33.3.20 Едноимпулсен режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1118
33.3.21 Режим с едно импулс с възможност за повторно задействане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119
33.3.22 Режим на интерфейса на енкодера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1120
33.3.23 Преназначаване на UIF битове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1122
33.3.24 Функция XOR на входа на таймера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123
33.3.25 Връзка със сензори на Хол . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123
33.3.26 Синхронизация на таймера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126
33.3.27 Синхронизация на АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1130
33.3.28 DMA пакетен режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1130
33.3.29 Режим на отстраняване на грешки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1131
33.4 Регистри TIM1/TIM8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1132
33.4.1 TIMx управляващ регистър 1 (TIMx_CR1)(x = 1, 8) . . . . . . . . . . . . . . . . . . 1132
32/2187
RM0438 Версия 8
RM0438
Съдържание
33.4.2 TIMx управляващ регистър 2 (TIMx_CR2)(x = 1, 8) . . . . . . . . . . . . . . . . . . 1133
33.4.3 TIMx регистър за управление на подчинения режим (TIMx_SMCR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1136
33.4.4 TIMx регистър за разрешаване на DMA/прекъсвания (TIMx_DIER)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1138
33.4.5 Регистър за състояние на TIMx (TIMx_SR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . 1140
33.4.6 Регистър за генериране на събития TIMx (TIMx_EGR)(x = 1, 8) . . . . . . . . . . . . . 1142
33.4.7 Регистър 1 за режим на заснемане/сравнение на TIMx (TIMx_CCMR1)(x = 1, 8) . . 1143
33.4.8 Регистър 1 за режим на заснемане/сравнение на TIMx [алтернативен] (TIMx_CCMR1)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144
33.4.9 Регистър 2 за режим на заснемане/сравнение на TIMx (TIMx_CCMR2)(x = 1, 8) . . 1147
33.4.10 Регистър 2 за режим на заснемане/сравнение на TIMx [алтернативен] (TIMx_CCMR2)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1148
33.4.11 Регистър за разрешаване на заснемане/сравнение на TIMx (TIMx_CCER)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149
33.4.12 TIMx брояч (TIMx_CNT)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153
33.4.13 TIMx делител (TIMx_PSC)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153
33.4.14 Регистър за автоматично презареждане на TIMx (TIMx_ARR)(x = 1, 8) . . . . . . . . . . . . . . . . 1153
33.4.15 Регистър на брояча на повторения на TIMx (TIMx_RCR)(x = 1, 8) . . . . . . . . . . . . 1154
33.4.16 TIMx регистър за заснемане/сравнение 1 (TIMx_CCR1)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1154
33.4.17 TIMx регистър за заснемане/сравнение 2 (TIMx_CCR2)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1155
33.4.18 TIMx регистър за заснемане/сравнение 3 (TIMx_CCR3)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1155
33.4.19 TIMx регистър за заснемане/сравнение 4 (TIMx_CCR4)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1156
33.4.20 TIMx регистър за прекъсване и мъртво време (TIMx_BDTR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1156
33.4.21 TIMx DMA контролен регистър (TIMx_DCR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1160
33.4.22 TIMx DMA адрес за пълно прехвърляне (TIMx_DMAR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1161
33.4.23 TIM1 регистър на опции 1 (TIM1_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162
33.4.24 TIM8 регистър на опции 1 (TIM8_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162
33.4.25 TIMx регистър 3 за режим на заснемане/сравнение (TIMx_CCMR3)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1163
33.4.26 TIMx регистър за заснемане/сравнение 5 (TIMx_CCR5)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1164
33.4.27 TIMx регистър за заснемане/сравнение 6 (TIMx_CCR6)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165
RM0438 Версия 8
33/2187
54
Съдържание
RM0438
33.4.28 TIM1 регистър за опции 2 (TIM1_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165 33.4.29 TIM1 регистър за опции 3 (TIM1_OR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1167 33.4.30 TIM8 регистър за опции 2 (TIM8_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1168 33.4.31 TIM8 регистър 3 за опции (TIM8_OR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1170 33.4.32 Карта на регистъра TIM1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1172 33.4.33 Карта на регистъра TIM8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1174
34
Таймери с общо предназначение (TIM2/TIM3/TIM4/TIM5) . . . . . . . . . . . . . . . . 1177
34.1 Въведение в TIM2/TIM3/TIM4/TIM5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1177
34.2 Основни характеристики на TIM2/TIM3/TIM4/TIM5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1177
34.3 Функционално описание на TIM2/TIM3/TIM4/TIM5 . . . . . . . . . . . . . . . . . . . . .1179
34.3.1 Единица за времева база . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1179
34.3.2 Режими на брояча . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1181
34.3.3 Избор на часовник . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191
34.3.4 Заснемане/Сравняване на канали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195
34.3.5 Режим на заснемане на входа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1197
34.3.6 ШИМ входен режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1198
34.3.7 Режим на принудително извеждане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1199
34.3.8 Режим на сравнение на изхода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1200
34.3.9 ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1201
34.3.10 Асиметричен ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1204
34.3.11 Комбиниран ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1205
34.3.12 Изчистване на OCxREF сигнала при външно събитие . . . . . . . . . . . . . . 1206
34.3.13 Едноимпулсен режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1208
34.3.14 Режим с едно импулс с възможност за повторно задействане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1209
34.3.15 Режим на интерфейса на енкодера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1210
34.3.16 Преназначаване на UIF битове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1212
34.3.17 Функция XOR на входа на таймера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1212
34.3.18 Таймери и външна синхронизация на задействане . . . . . . . . . . . . . . . . . . . 1213
34.3.19 Синхронизация на таймера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1216
34.3.20 DMA пакетен режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1221
34.3.21 Режим на отстраняване на грешки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1222
34.4 Регистри TIM2/TIM3/TIM4/TIM5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1223
34.4.1 TIMx управляващ регистър 1 (TIMx_CR1)(x = 2 до 5) . . . . . . . . . . . . . . . . . 1223
34.4.2 TIMx управляващ регистър 2 (TIMx_CR2)(x = 2 до 5) . . . . . . . . . . . . . . . . . 1224
34.4.3 Регистър за управление на подчинения режим TIMx (TIMx_SMCR)(x = 2 до 5) . . . . . . . . 1226
34.4.4 TIMx регистър за разрешаване на DMA/прекъсвания (TIMx_DIER)(x = 2 до 5) . . . . . . 1229
34/2187
RM0438 Версия 8
RM0438
Съдържание
34.4.5 Регистър за състояние на TIMx (TIMx_SR)(x = 2 до 5) . . . . . . . . . . . . . . . . . . . . . 1230 34.4.6 Регистър за генериране на събития TIMx (TIMx_EGR)(x = 2 до 5) . . . . . . . . . . 1231 34.4.7 Регистър 1 за режим на заснемане/сравнение на TIMx (TIMx_CCMR1)(x = 2 до 5) . 1232 34.4.8 Регистър 1 за режим на заснемане/сравнение на TIMx [алтернативен] (TIMx_CCMR1)
(x = 2 до 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234 34.4.9 TIMx регистър 2 за режим на заснемане/сравнение (TIMx_CCMR2)(x = 2 до 5) . 1236 34.4.10 TIMx регистър 2 за режим на заснемане/сравнение [алтернативен] (TIMx_CCMR2)
(x = от 2 до 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1237 34.4.11 TIMx регистър за разрешаване на заснемане/сравнение
(TIMx_CCER)(x = 2 до 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1238 34.4.12 TIMx брояч (TIMx_CNT)(x = 2 до 5) . . . . . . . . . . . . . . . . . . . . . . . . . 1239 34.4.13 TIMx брояч [алтернативен] (TIMx_CNT)(x = 2 до 5) . . . . . . . . . . . . . . . . . . 1240 34.4.14 TIMx делител (TIMx_PSC)(x = 2 до 5) . . . . . . . . . . . . . . . . . . . . . . . . 1240 34.4.15 TIMx регистър за автоматично презареждане (TIMx_ARR)(x = 2 до 5) . . . . . . . . . . . . . 1241 34.4.16 TIMx регистър за заснемане/сравнение 1 (TIMx_CCR1)(x = 2 до 5) . . . . . . . 1241 34.4.17 TIMx регистър за заснемане/сравнение 2 (TIMx_CCR2)(x = 2 до 5) . . . . . . . 1241 34.4.18 TIMx регистър за заснемане/сравнение 3 (TIMx_CCR3)(x = 2 до 5) . . . . . . . . 1242 34.4.19 TIMx регистър за заснемане/сравнение 4 (TIMx_CCR4)(x = 2 до 5) . . . . . . . . 1242 34.4.20 TIMx DMA управляващ регистър (TIMx_DCR)(x = 2 до 5) . . . . . . . . . . . . . 1243 34.4.21 TIMx DMA адрес за пълно прехвърляне (TIMx_DMAR)(x = 2 до 5) . . . . . . . 1244 34.4.22 TIM2 регистър за опции 1 (TIM2_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244 34.4.23 TIM3 регистър за опции 1 (TIM3_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244 34.4.24 TIM2 регистър за опции 2 (TIM2_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1245 34.4.25 TIM3 регистър 2 за опции (TIM3_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1245 34.4.26 Карта на TIMx регистър . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1247
35
Таймери с общо предназначение (TIM15/TIM16/TIM17) . . . . . . . . . . . . . . . . . 1250
35.1 Въведение в TIM15/TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1250
35.2 Основни характеристики на TIM15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1250
35.3 Основни характеристики на TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1251
35.4 Функционално описание на TIM15/TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . 1254
35.4.1 Единица за времева база . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1254
35.4.2 Режими на брояча . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1256
35.4.3 Брояч на повторения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1260
35.4.4 35.4.5 35.4.6 35.4.7
Избор на тактов сигнал . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1261 Заснемане/сравняване на канали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1263 Входен режим на заснемане . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1265 PWM входен режим (само за TIM15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1266
RM0438 Версия 8
35/2187
54
Съдържание
RM0438
35.5
35.4.8 Режим на принудително изходно захранване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1267 35.4.9 Режим на сравнение на изходи . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1268 35.4.10 ШИМ режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1269 35.4.11 Комбиниран ШИМ режим (само за TIM15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1270 35.4.12 Допълнителни изходи и вмъкване на мъртво време . . . . . . . . . . . . . . . 1271 35.4.13 Използване на функцията за прекъсване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1273 35.4.14 Двупосочни входове за прекъсване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1278 35.4.15 6-стъпково ШИМ генериране . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279 35.4.16 Едноимпулсен режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1281 35.4.17 Повторно задействащ се едноимпулсен режим (само за TIM15) . . . . . . . . . . . . . . . . . . . . . 1282 35.4.18 Пренареждане на UIF битове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1283 35.4.19 Функция XOR на таймерния вход (само за TIM15) . . . . . . . . . . . . . . . . . . . . . . . . . 1284 35.4.20 Синхронизация на външен тригер (само за TIM15) . . . . . . . . . . . . . . . . . . . 1285 35.4.21 Режим на подчинено устройство, комбиниран режим на нулиране + тригер . . . . . . . . . . . . . . . . . . . 1287 35.4.22 DMA burst режим . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1287 35.4.23 Синхронизация на таймера (TIM15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1289 35.4.24 Използване на изхода на таймера като тригер за други таймери (TIM16/TIM17) . . . . . . 1289 35.4.25 Режим на отстраняване на грешки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1289
Регистри TIM15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1290
35.5.1 TIM15 управляващ регистър 1 (TIM15_CR1) . . . . . . . . . . . . . . . . . . . . . . . . . 1290 35.5.2 TIM15 управляващ регистър 2 (TIM15_CR2) . . . . . . . . . . . . . . . . . . . . . . . 1291 35.5.3 TIM15 управляващ регистър за подчинен режим (TIM15_SMCR) . . . . . . . . . . . . . 1293 35.5.4 TIM15 регистър за разрешаване на DMA/прекъсване (TIM15_DIER) . . . . . . . . . . . . 1294 35.5.5 Регистър за състояние TIM15 (TIM15_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1295 35.5.6 Регистър за генериране на събития TIM15 (TIM15_EGR) . . . . . . . . . . . . . . . 1297 35.5.7 Регистър 15 за режим на заснемане/сравнение TIM1 (TIM15_CCMR1) . . . . . . . 1298 35.5.8 Регистър 15 за режим на заснемане/сравнение TIM1 [алтернативен] (TIM15_CCMR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1299 35.5.9 TIM15 регистър за разрешаване на заснемане/сравнение (TIM15_CCER) . . . . . . . . . 1302 35.5.10 TIM15 брояч (TIM15_CNT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1305 35.5.11 TIM15 делител (TIM15_PSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1305 35.5.12 TIM15 регистър за автоматично презареждане (TIM15_ARR) . . . . . . . . . . . . . . . . . . . . . 1305 35.5.13 TIM15 регистър за брояч на повторения (TIM15_RCR) . . . . . . . . . . . . . . . 1306 35.5.14 TIM15 регистър за заснемане/сравнение 1 (TIM15_CCR1) . . . . . . . . . . . . . . 1306 35.5.15 TIM15 регистър за заснемане/сравнение 2 (TIM15_CCR2) . . . . . . . . . . . . . . 1307 35.5.16 TIM15 регистър за прекъсване и мъртво време (TIM15_BDTR) . . . . . . . . . . . . 1307 35.5.17 TIM15 DMA управляващ регистър (TIM15_DCR) . . . . . . . . . . . . . . . . . . . 1310
36/2187
RM0438 Версия 8
RM0438
Съдържание
35.6
35.5.18 TIM15 DMA адрес за пълно прехвърляне (TIM15_DMAR) . . . . . . . . . . . . . 1310 35.5.19 TIM15 регистър за опции 1 (TIM15_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1311 35.5.20 TIM15 регистър за опции 2 (TIM15_OR2) . . . . . . . . . . . . . . . . . . . . . . . 1311 35.5.21 Карта на регистъра TIM15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1313
Регистри TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1316
35.6.1 TIMx управляващ регистър 1 (TIMx_CR1)(x = 16 до 17) . . . . . . . . . . . . . . . 1316 35.6.2 TIMx управляващ регистър 2 (TIMx_CR2)(x = 16 до 17) . . . . . . . . . . . . . . 1317 35.6.3 TIMx регистър за разрешаване на DMA/прекъсване (TIMx_DIER)(x = 16 до 17) . . . . 1318 35.6.4 TIMx регистър за състояние (TIMx_SR)(x = 16 до 17) . . . . . . . . . . . . . . . . . . 1319 35.6.5 Регистър за генериране на TIMx събития (TIMx_EGR)(x = 16 до 17) . . . . . . . . 1320 35.6.6 Регистър 1 за режим на заснемане/сравнение на TIMx
(TIMx_CCMR1)(x = 16 до 17) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1321 35.6.7 TIMx регистър 1 за режим на заснемане/сравнение [алтернативен] (TIMx_CCMR1)(x = 16 до 17) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1322 35.6.8 TIMx регистър за разрешаване на заснемане/сравнение (TIMx_CCER)(x = 16 до 17) . 1324 35.6.9 TIMx брояч (TIMx_CNT)(x = 16 до 17) . . . . . . . . . . . . . . . . . . . . . . . . 1326 35.6.10 TIMx делител (TIMx_PSC)(x = 16 до 17) . . . . . . . . . . . . . . . . . . . . . 1327 35.6.11 TIMx регистър за автоматично презареждане (TIMx_ARR)(x = 16 до 17) . . . . . . . . . . . . . . 1327 35.6.12 TIMx регистър за брояч на повторения (TIMx_RCR)(x = 16 до 17) . . . . . . . . 1328 35.6.13 TIMx регистър за заснемане/сравнение 1 (TIMx_CCR1)(x = 16 до 17) . . . . . 1328 35.6.14 TIMx регистър за прекъсване и мъртво време (TIMx_BDTR)(x = 16 до 17) . . . . 1329 35.6.15 TIMx регистър за управление на DMA (TIMx_DCR)(x = 16 до 17) . . . . . . . . . . . . 1331 35.6.16 TIMx DMA адрес за пълно прехвърляне (TIMx_DMAR)(x = 16 до 17) . . . . 1332 35.6.17 TIM16 регистър за опции 1 (TIM16_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . 1332 35.6.18 TIM16 регистър за опции 2 (TIM16_OR2) . . . . . . . . . . . . . . . . . . . . . . 1333 35.6.19 TIM17 регистър за опции 1 (TIM17_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1334 35.6.20 TIM17 регистър 2 (TIM17_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1335 35.6.21 Карта на регистъра TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1337
36
Основни таймери (TIM6/TIM7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1339
36.1 Въведение в TIM6/TIM7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1339
36.2 Основни характеристики на TIM6/TIM7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1339
36.3 Функционално описание на TIM6/TIM7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1340
36.3.1 Единица за времева база . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1340
36.3.2 Режим на броене . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342
36.3.3 Преназначаване на UIF битове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1345
36.3.4 Източник на тактов сигнал . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1345
RM0438 Версия 8
37/2187
54
Съдържание
RM0438
36.4
36.3.5 Режим на отстраняване на грешки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1346
Регистри TIM6/TIM7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1346
36.4.1 TIMx управляващ регистър 1 (TIMx_CR1)(x = 6 до 7) . . . . . . . . . . . . . . . . . . 1346 36.4.2 TIMx управляващ регистър 2 (TIMx_CR2)(x = 6 до 7) . . . . . . . . . . . . . . . . 1348 36.4.3 TIMx регистър за разрешаване на DMA/прекъсване (TIMx_DIER)(x = 6 до 7) . . . . . . 1348 36.4.4 TIMx регистър за състояние (TIMx_SR)(x = 6 до 7) . . . . . . . . . . . . . . . . . . . . 1349 36.4.5 Регистър за генериране на TIMx събития (TIMx_EGR)(x = 6 до 7) . . . . . . . . . . . 1349 36.4.6 TIMx брояч (TIMx_CNT)(x = 6 до 7) . . . . . . . . . . . . . . . . . . . . . . . . . 1349 36.4.7 TIMx делител (TIMx_PSC)(x = 6 до 7) . . . . . . . . . . . . . . . . . . . . . . . 1350 36.4.8 TIMx регистър за автоматично презареждане (TIMx_ARR)(x = 6 до 7) . . . . . . . . . . . . . . . 1350 36.4.9 Карта на TIMx регистър . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1351
37
Таймер за ниска консумация на енергия (LPTIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1352
37.1 Въведение в LPTIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1352
37.2 Основни характеристики на LPTIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1352
37.3 Внедряване на LPTIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1352
37.4 Функционално описание на LPTIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1353
37.4.1 Блокова схема на LPTIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1353
37.4.2 LPTIM пинове и вътрешни сигнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1353
37.4.3 LPTIM вход и картографиране на задействания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1354
37.4.4 Нулиране на LPTIM и тактови часовници . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1355
37.4.5 Филтър за бъгове . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1355
37.4.6 Делител . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1356
37.4.7 Тригерен мултиплексор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1356
37.4.8 Режим на работа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1357
37.4.9 Функция за изчакване . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1359
37.4.10 Генериране на вълнова форма . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1359
37.4.11 Актуализация на регистъра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1360
37.4.12 Режим на брояч . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1361
37.4.13 Активиране на таймера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1362
37.4.14 Нулиране на брояча на таймера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1362
37.4.15 Режим на енкодер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1363
37.4.16 Брояч на повторения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1364
37.4.17 Режим на отстраняване на грешки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1365
37.5 LPTIM режими с ниска консумация на енергия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1366
37.6 LPTIM прекъсвания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1366
38/2187
RM0438 Версия 8
RM0438
Съдържание
37.7
LPTIM регистри . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1367
37.7.1 Регистър за прекъсвания и състояние на LPTIM (LPTIM_ISR) . . . . . . . . . . . . . . . . 1367 37.7.2 Регистър за изчистване на прекъсвания на LPTIM (LPTIM_ICR) . . . . . . . . . . . . . . . . . . . . 1368 37.7.3 Регистър за разрешаване на прекъсвания на LPTIM (LPTIM_IER) . . . . . . . . . . . . . . . . . 1369 37.7.4 Регистър за конфигурация на LPTIM (LPTIM_CFGR) . . . . . . . . . . . . . . . . . . 1370 37.7.5 LPTIM контролен регистър (LPTIM_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1373 37.7.6 LPTIM сравнение r
Документи / Ресурси
![]() |
Серия ST STM32L5 с висока сигурност и ниска консумация на енергия [pdf] Ръководство за потребителя RM0438, Серия STM32L5 Високо сигурна с ниска консумация на енергия, Серия STM32L5, Високо сигурна с ниска консумация на енергия, Ниска консумация на енергия, Консумация |