Руководство пользователя серии STM32L5 с высокой степенью защиты и низким энергопотреблением

Серия STM32L5 с высокой степенью безопасности и низким энергопотреблением

Технические характеристики:

  • Название продукта: RM0438 Справочное руководство
  • Редакция: Версия 8
  • Страницы: с 1 по 2187
  • Дата выхода: июнь 2025 г.
  • Производитель: www.st.com.

Информация о продукте:

Справочное руководство RM0438 содержит подробную информацию о
архитектура памяти и шины, архитектура безопасности TrustZone,
организация памяти, встроенная SRAM, флэш-память поверхview, ботинок
конфигурация и безопасность системы.

Инструкция по применению продукта:

Архитектура памяти и шины:

Архитектура системы включает в себя быструю C-шину, медленную C-шину, S-шину,
Шина 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-битные микроконтроллеры серии STM5L32 на базе Arm®
Введение
Данное справочное руководство предназначено для разработчиков приложений. Оно содержит полную информацию об использовании памяти и периферийных устройств микроконтроллеров 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 . ...

2.1.2 Медленная шина C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

2.1.3 S-шина . ...

2.1.4 Шина DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

2.1.5 Шина DMA контроллера SDMMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

2.1.6 BusMatrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 Безопасная загрузка . ...
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обнаружение и реагирование на er . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Безопасное хранение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.9.1 Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 4.9.2 Уникальный идентификатор . ...
Криптодвижки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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

Регистр конфигурации привилегий GTZC_TZSC 1 (GTZC_TZSC_PRIVCFGR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

5.5.5

Регистр конфигурации привилегий GTZC_TZSC 2 (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 Состояние атрибутов безопасности флэш-памяти . ...
6.6 Безопасная системная память . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
6.6.1 Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 6.6.2 RSS выделяет ресурсы загрузчику . ... . . . . . . . . . . . 198
6.7 Защита флэш-памяти . ...
6.7.1 Защита от записи (WRP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 6.7.2 Защита от считывания (RDP) . ...
6.8 Прерывания FLASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 6.9 Регистры FLASH . ...
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Регистр ключа e (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 (FLASH_SECCR) . . . . . . . . . . . . . . . . . . . . . 222 6.9.11 Регистр ECC Flash (FLASH_ECCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 6.9.12 Регистр опций Flash (FLASH_OPTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 6.9.13 Регистр адреса 0 незащищенной загрузки Flash (FLASH_NSBOOTADD0R) 227 6.9.14 Регистр адреса 1 незащищенной загрузки Flash (FLASH_NSBOOTADD1R) 228 6.9.15 Регистр адреса 0 защищенной загрузки Flash (FLASH_SECBOOTADD0R) . . 228 6.9.16 Регистр защищенной watermak1 банка Flash 1 (FLASH_SECWM1R1) . . . . 229 6.9.17 Регистр защищенной watermak1 Flash 2 (FLASH_SECWM1R2) . . . . . . . . 230 6.9.18 Регистр адреса A области Flash WPR1 (FLASH_WRP1AR) . . . . . . . . 231 6.9.19 Регистр адреса области B Flash WPR1 (FLASH_WRP1BR) . . . . . . . . . 232 6.9.20 Регистр защищенной памяти Watermak2 Flash (FLASH_SECWM2R1) . . . . . . . . . . 233 6.9.21 Регистр защищенной памяти Watermak2 Flash 2 (FLASH_SECWM2R2) . . . . . . . . 234 6.9.22 Регистр адреса области A Flash WPR2 (FLASH_WRP2AR) . . . . . . . . 235 6.9.23 Регистр адреса области B Flash WPR2 (FLASH_WRP2BR) . . . . . . . . 236

6/2187

RM0438 Версия 8

RM0438

Содержание

6.9.24
6.9.25
6.9.26 6.9.27 6.9.28

Регистр банка 1 на основе защищенного блока FLASH (FLASH_SECBB1Rx) (где x=1..4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Регистр банка 2 на основе защищенного блока FLASH (FLASH_SECBB2Rx) (где x=1..4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Регистр управления защищенной HDP-памятью FLASH (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 КЭШ TAG память . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

7.4.4 Прямое отображение ICACHE (односторонний кэш) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

7.4.5 Включение ICACHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

7.4.6 Кэшируемый и некэшируемый трафик . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

7.4.7 Переназначение адресов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248

7.4.8 Кэшируемые доступы . ...

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 Регистр конфигурации региона X ICACHE (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 Схема питания понижающего преобразователя SMPS . ...

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Электронный мониторинг (ПВМ). . . . . . . . . . . . . . . . . . . . . . . . . . 275

8.3.4 Верхний томtagмониторинг порога . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

8.3.5 Контроль порогового значения температуры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

8.4 Управление питанием . ...

8.4.1 Режимы мощности . ...

8.4.2 Режим работы . ...

8.4.3 Режим работы с низким энергопотреблением (режим работы с низким энергопотреблением) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

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

8.4.5 Спящий режим . ...

8.4.6 Режим энергосбережения (LP-сон) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

8.4.7 Режим остановки 0 . ...

8.4.8 Режим остановки 1 . ...

8.4.9 Режим остановки 2 . ...

8.4.10 Режим ожидания . ...

8.4.11 Режим выключения . ...

8.4.12 Автоматическое пробуждение из режима пониженного энергопотребления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296

8.5 Безопасность PWR TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296

8.5.1 Привилегированные и непривилегированные режимы PWR . ...

8.6 Регистры PWR . ...

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 ФАПЧ . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 9.3.6 Системные часы LSE . ... . . . . . . . . . . . . . . . . . . . . . 333 9.3.7 Выбор системного тактового сигнала (SYSCLK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 9.3.8 Частота источника тактового сигнала в зависимости от громкостиtagмасштабирование . . . . . . . . . . . . . . . . . . . . 335 9.3.11 Система безопасности синхронизации (CSS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 9.3.12 Система безопасности синхронизации на LSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 9.3.13 Тактовая частота АЦП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 9.3.14 Часы RTC . ... . . . . . . . . . . . . . . . . 336 9.3.15 Часы-сторож . ... 336 9.3.16 Измерение внутренней/внешней частоты с помощью TIM337/TIM9.3.17/TIM337 . . . . . 9.3.18 15 Регистры разрешения периферийной частоты
(RCC_AHBxENR, RCC_APBxENRy) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
9.4 Режимы низкого энергопотребления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 9.5 Безопасность RCC TrustZone® . ... . . . 341 9.6 Прерывания RCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 9.7 Регистры RCC . ...
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 (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 AHB3 в режимах сна и остановки (RCC_AHB3SMENR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 Регистр включения периферийных тактовых импульсов RCC APB1 в режимах сна и остановки регистр 1 (RCC_APB1SMENR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 Регистр включения периферийных тактовых импульсов RCC APB1 в режимах сна и остановки регистр 2 (RCC_APB1SMENR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Регистр включения периферийных часов RCC APB2 в режимах сна и останова (RCC_APB2SMENR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Регистр конфигурации независимых часов периферийных устройств RCC 1 (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 . ...
10.4.1 Структурная схема CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 10.4.2 Внутренние сигналы CRS . ... 425 10.4.3 Измерение погрешности частоты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 10.4.4 Оценка погрешности частоты и автоматическая подстройка . . . . . . . . . . . . . . . 426 10.4.5 Инициализация и конфигурация CRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
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 . ...

11

Универсальные вводы-выводы (GPIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435

11.1 Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435

11.2 Основные характеристики GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435

11.3 Функциональное описание GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435

11.3.1 Ввод-вывод общего назначения (GPIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438

11.3.2 Мультиплексор и сопоставление альтернативных функций выводов ввода-вывода . . . . . . . . . . . . . . . . . 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 Регистр конфигурации SYSCFG 1 (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 Регистр конфигурации SYSCFG 2 (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 Регистр защиты записи 2 SYSCFG SRAM2 (SYSCFG_SWPR2) . . . 466 12.3.11 Регистр команд RSS SYSCFG (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 к АЦП (ADC1/ADC2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471

13.3.3 От АЦП1/АЦП2 к таймеру (TIM1/TIM8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471

13.3.4 От таймера (TIM2/TIM4/TIM5/TIM6/TIM7/TIM8) и EXTI к ЦАП (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 От внутреннего аналогового источника к АЦП (АЦП1/АЦП2) и ОПAMP (ОПAMP1/ОПАМ2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 . ...
Прерывания DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 Регистры DMA . ...
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 Регистр адреса памяти 0 канала DMA x (DMA_CM0ARx) . . . . . . . 501 14.6.7 Регистр адреса памяти 1 канала DMA x (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. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 с регистром маски прерывания (EXTI_IMR1) . . . . . . . 557 17.6.18 Пробуждение ЦП EXTI с регистром маски событий (EXTI_EMR1) . . . . . . . . 558 17.6.19 Пробуждение ЦП EXTI с помощью регистра маски прерывания (EXTI_IMR2) . . . . . . . 559 17.6.20 Пробуждение ЦП EXTI с регистром маски событий (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 . ...
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 BUSY и ABORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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

Аналого-цифровые преобразователи (АЦП) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 Подключение АЦП1/2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690

21.4.5 Интерфейс ведомого AHB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692

21.4.6 Режим глубокого понижения мощности АЦП (DEEPPWD) и громкость АЦПtagрегулятор (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 Программируемые по каналам sampвремя ling (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 Временные диаграммы exampле (одиночные/непрерывные режимы,
(аппаратные/программные триггеры) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719 21.4.26 Управление данными . ... 721 21.4.27 Динамические функции с низким энергопотреблением . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726 21.4.28 Аналоговый оконный сторожевой таймер (AWD727EN, JAWD21.4.29EN, 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 АЦП сampРегистр времени 2 (ADC_SMPR2) . . . . . . . . . . . . . . . . . . . . . . . 775 21.7.8 Регистр порога сторожевого таймера АЦП 1 (ADC_TR1) . . . . . . . . . . . . . . . . . 776 21.7.9 Регистр порога сторожевого таймера АЦП 2 (ADC_TR2) . . . . . . . . . . . . . . . . . . 776 21.7.10 Регистр порога сторожевого таймера АЦП 3 (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 Регистр данных канала 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 Формат данных ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 Режимы преобразования двух каналов ЦАП (при наличии двух каналов) . ...

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_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825
22.7.15 Регистр управления калибровкой ЦАП (DAC_CCR) . . . . . . . . . . . . . . . . . . . . . . 827
22.7.16 Регистр управления режимом ЦАП (DAC_MCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 827
22.7.17 ЦАП канал 1 сampле и держи sampрегистр времени (DAC_SHSR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829
22.7.18 ЦАП канал 2 сampле и держи sampрегистр времени (DAC_SHSR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829
22.7.19 ЦАП сampрегистр времени удержания и удержания (DAC_SHHR) . . . . . . . . . . . . . . . . . 829
22.7.20 ЦАП сampрегистр времени обновления le и hold (DAC_SHRR) . . . . . . . . . 830
22.7.21 Карта регистров ЦАП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831

23

Томtagбуфер ссылок (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

Компаратор (КОМП) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837

24.1 Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837

RM0438 Версия 8

23/2187
54

Содержание

RM0438

24.2 24.3
24.4 24.5 24.6

Основные характеристики COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 Функциональное описание COMP . ...
24.3.1 Блок-схема COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 24.3.2 Выводы и внутренние сигналы COMP . ... 838 24.3.3 Механизм блокировки компаратора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 24.3.4 Оконный компаратор . ... . . . . . . . . . . . . . . . . . . . . . . . . 839 24.3.5 Функция гашения выхода компаратора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840 24.3.6 Режимы мощности и скорости COMP . ...
Режимы низкого энергопотребления COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842 Прерывания COMP . ... . . . . . . . . . . . . . 842
24.6.1 Регистр управления и состояния компаратора 1 (COMP1_CSR) . . . . . . . . . . . 843 24.6.2 Регистр управления и состояния компаратора 2 (COMP2_CSR) . . . . . . . . . . . . 845 24.6.3 Карта регистров COMP . ...

25

Оперативный ampлифтеры (ОПAMP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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_ОТР) . . 858

25.5.3 ОПAMP1 регистр подстройки смещения в режиме пониженного энергопотребления (OPAMP1_LPOTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858

25.5.4 ОПAMP2 регистр управления/состояния (OPAMP2_CRS) . . . . . . . . . . . . . . . . . . . . 859

25.5.5 ОПAMP2 регистр обрезки смещения в нормальном режиме (OPAMP2_ОТР) . . 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 Передача DMA DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892

26.7 Регистры канала y DFSDM (y=0..3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892

26.7.1 Регистр конфигурации канала y DFSDM (DFSDM_CHyCFGR1) . . . . 892

26.7.2 Регистр конфигурации канала y DFSDM (DFSDM_CHyCFGR2) . . . . 894

26.7.3 Аналоговый сторожевой таймер и регистр детектора короткого замыкания канала y DFSDM (DFSDM_CHyAWSCDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895

26.7.4 Регистр данных фильтра сторожевого таймера канала y DFSDM (DFSDM_CHyWDATR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896

26.7.5 Регистр ввода данных канала y DFSDM (DFSDM_CHyDATINR) . . . . . . 896

26.7.6 Регистр задержки канала y DFSDM (DFSDM_CHyDLYR). . . . . . . . . . . . 897

26.8 Регистры модуля x фильтра DFSDM (x=0..3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 898

26.8.1 Регистр управления фильтром x DFSDM 1 (DFSDM_FLTxCR1) . . . . . . . . . . . . . 898

26.8.2 Регистр управления фильтром x DFSDM 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 Регистр управления фильтром x DFSDM (DFSDM_FLTxFCR) . . . . . . . . . . . . . . . 905
26.8.7 Регистр данных x фильтра DFSDM для внедренной группы (DFSDM_FLTxJDATAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906
26.8.8 Регистр данных x фильтра DFSDM для обычного канала (DFSDM_FLTxRDATAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907
26.8.9 Фильтр DFSDM x аналоговый сторожевой таймер регистра высокого порога (DFSDM_FLTxAWHTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908
26.8.10 Фильтр DFSDM x регистр нижнего порога аналогового сторожевого таймера (DFSDM_FLTxAWLTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908
26.8.11 Регистр состояния аналогового сторожевого таймера фильтра DFSDM x (DFSDM_FLTxAWSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
26.8.12 Регистр флага очистки аналогового сторожевого таймера фильтра DFSDM x (DFSDM_FLTxAWCFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
26.8.13 Регистр максимума детектора экстремумов фильтра x DFSDM (DFSDM_FLTxEXMAX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
26.8.14 Регистр минимума детектора экстремумов фильтра DFSDM x (DFSDM_FLTxEXMIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911
26.8.15 Регистр таймера преобразования фильтра DFSDM x (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 СampВыбор режима ввода-вывода конденсатора и канала ввода-вывода . . . . . . . . . . . . 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 (TSC_IOHCR) . . . . . . . . . . . . . . . . 933 27.6.6 Регистр управления аналоговым переключателем ввода-вывода TSC
(TSC_IOASCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933 27.6.7 Ввод-вывод TSCampРегистр управления потоком (TSC_IOSCR) . . . . . . . . . . . . . . . . . 934 27.6.8 Регистр управления каналом ввода-вывода TSC (TSC_IOCCR) . . . . . . . . . . . . . . . . . . . 934 27.6.9 Регистр состояния управления группой ввода-вывода TSC (TSC_IOGCSR) . . . . . . . . . . . . . 935 27.6.10 Регистр счетчика x группы ввода-вывода TSC (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 (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 Регистр ключа AES 0 (AES_KEYR0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994

29.7.6 Регистр ключа AES 1 (AES_KEYR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994

29.7.7 Регистр ключа AES 2 (AES_KEYR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995

29.7.8 Регистр ключа AES 3 (AES_KEYR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995

29.7.9 Регистр вектора инициализации AES 0 (AES_IVR0) . . . . . . . . . . . . . . . . . . . . . 995

28/2187

RM0438 Версия 8

RM0438

Содержание

29.7.10 Регистр вектора инициализации AES 1 (AES_IVR1) . . . . . . . . . . . . . . . . . . . . 996 29.7.11 Регистр вектора инициализации AES 2 (AES_IVR2) . . . . . . . . . . . . . . . . . . . . . 996 29.7.12 Регистр вектора инициализации AES 3 (AES_IVR3) . . . . . . . . . . . . . . . . . . . . . 996 29.7.13 Регистр ключа AES 4 (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 Основные характеристики хеша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001

30.3 Реализация хеша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002

30.4 Функциональное описание хеша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002

30.4.1 Блок-схема хэша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002

30.4.2 Внутренние сигналы хэширования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 Управление ошибками хеша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012

30.4.11 Время обработки хеша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012

30.5 Прерывания хэширования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013

30.6 Регистры хэша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014

30.6.1 Регистр управления хэшем (HASH_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014

30.6.2 Регистр ввода данных хеша (HASH_DIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016

30.6.3 Начальный регистр хеша (HASH_STR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017

30.6.4 Регистры дайджеста хэша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018

30.6.5 Регистр разрешения прерываний HASH (HASH_IMR) . . . . . . . . . . . . . . . . . . . 1019

30.6.6 Регистр состояния хеша (HASH_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020

30.6.7 Регистры подкачки контекста хэша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020

30.6.8 Карта регистра хэша . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 Использование OTFDEC AES в режиме дешифрования счетчика . . . . . . . . . . . . . . 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 Регистр конечного адреса региона x OTFDEC (OTFDEC_RxENDADDR) . 1035

31.6.6 Регистр одноразовых номеров региона OTFDEC x 0 (OTFDEC_RxNONCER0) . . . . . 1036

31.6.7 Регистр одноразовых номеров региона OTFDEC x 1 (OTFDEC_RxNONCER1) . . . . . 1037

31.6.8 Регистр ключа x региона OTFDEC 0 (OTFDEC_RxKEYR0) . . . . . . . . . . 1037

31.6.9 Регистр ключа x региона OTFDEC 1 (OTFDEC_RxKEYR1) . . . . . . . . . . 1038

31.6.10 Регистр ключа x региона OTFDEC 2 (OTFDEC_RxKEYR2) . . . . . . . . . . 1038

31.6.11 Регистр ключа x региона OTFDEC 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
Режимы работы ПКА . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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
Example конфигураций и времени обработки . . . . . . . . . . . . . . . . . . 1064
32.5.1 Поддерживаемые эллиптические кривые . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064 32.5.2 Время вычислений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1066
Прерывания PKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1067 Регистры PKA . ...
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 Регистр разрешения DMA/прерываний TIMx (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 Регистр режима захвата/сравнения TIMx 1 (TIMx_CCMR1)(x = 1, 8) . . 1143
33.4.8 Регистр режима захвата/сравнения TIMx 1 [альтернативный] (TIMx_CCMR1)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144
33.4.9 Регистр режима захвата/сравнения TIMx 2 (TIMx_CCMR2)(x = 1, 8) . . 1147
33.4.10 Регистр режима захвата/сравнения TIMx 2 [альтернативный] (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 Регистр управления DMA TIMx (TIMx_DCR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1160
33.4.22 Адрес DMA TIMx для полной передачи (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 Регистр разрешения DMA/прерываний TIMx (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 Регистр режима захвата/сравнения TIMx 1 (TIMx_CCMR1)(x = от 2 до 5) . 1232 34.4.8 Регистр режима захвата/сравнения TIMx 1 [альтернативный] (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 Регистр управления DMA TIMx (TIMx_DCR)(x = от 2 до 5) . . . . . . . . . . . . 1243 34.4.21 Адрес DMA TIMx для полной передачи (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 Режим входа ШИМ (только для 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 . ... 1287 35.4.23 Синхронизация таймера (TIM15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1289 35.4.24 Использование выхода таймера в качестве триггера для других таймеров (TIM16/TIM17) . . . . . . 1289 35.4.25 Режим отладки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1289
Регистры TIM15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1290
35.5.1 Регистр управления 15 TIM1 (TIM15_CR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1290 35.5.2 Регистр управления 15 TIM2 (TIM15_CR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1291 35.5.3 Регистр управления подчиненным режимом TIM15 (TIM15_SMCR) . . . . . . . . . . . . . 1293 35.5.4 Регистр разрешения DMA/прерываний TIM15 (TIM15_DIER) . . . . 1294 35.5.5 Регистр состояния TIM15 (TIM15_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1295 35.5.6 Регистр генерации событий TIM15 (TIM15_EGR) . . . . . . . . . . . . . . . 1297 35.5.7 Регистр режима захвата/сравнения TIM15 1 (TIM15_CCMR1) . . . . . . . 1298 35.5.8 Регистр режима захвата/сравнения TIM15 1 [альтернативный] (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 Регистр управления DMA TIM15 (TIM15_DCR) . . . . . . . . . . . . . . . . . . . 1310

36/2187

RM0438 Версия 8

RM0438

Содержание

35.6

35.5.18 Адрес DMA TIM15 для полной передачи (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 Регистр разрешения DMA/прерываний TIMx (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 Регистр режима захвата/сравнения TIMx 1
(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 Регистр управления DMA TIMx (TIMx_DCR)(x = от 16 до 17) . . . . . . . . . . 1331 35.6.16 Адрес DMA TIMx для полной передачи (TIMx_DMAR)(x = 16 to 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 Регистр разрешения DMA/прерываний TIMx (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, с высокой степенью защиты и низким энергопотреблением, низкое энергопотребление, потребление

Ссылки

Оставьте комментарий

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