STM32F10x Standard Peripherals Library

STM32F10x Standard Peripherals Library (сокр. STM32F10x SPL) — библиотека, созданная компанией STMicroelectronics на языке Си для своих микроконтроллеров семейства STM32F10x.

Описание

Содержит функции, структуры и макросы для облегчения работы с периферией микроконтроллера. Библиотека документирована, включает примеры по каждому периферийному устройству, полностью поддерживает CMSIS (код ядра Cortex-M3[1], разработанный компанией ARM, включается в дистрибутив). Дистрибутив библиотеки доступен для бесплатного скачивания. Начиная с версии библиотеки ARM CMSIS 1.30, в CMSIS было сделано несколько важных исправлений[2], включая исправление ошибки «registers may not be the same — `strexh r0,r0,[r1]'». Для устранения этой и других ошибок рекомендуется самостоятельно обновить CMSIS.

Соглашения об именах

  1. PPP — обозначение периферийного устройства, например ADC (аналого-цифровой преобразователь).
  2. Файлы исходного кода библиотеки начинаются с приставки stm32f10x_.
  3. Имена констант прописаны заглавными буквами. Если константа используется в единственном файле, то она определяется в нём. Константа, используемая в более, чем одном файле, определяется в заголовочном файле.
  4. Имена регистров, как и констант, прописаны заглавными буквами. Регистры именуются так же, как в документации на микроконтроллеры.
  5. Имена функций начинаются с PPP, после чего идёт одно подчеркивание. Далее идут слитные слова, начинающиеся с заглавных букв. Например: USART_SendData().
  6. Для настройки периферии PPP используется функция PPP_Init(), в которую передаётся указатель на структуру типа PPP_InitTypeDef, содержащую настройки периферии.
  7. Функция PPP_DeInit() сбрасывает регистры периферии в их начальное состояние.
  8. Функция PPP_StructInit() заполняет поля структуры типа PPP_InitTypeDef значениями по умолчанию, которые описывают начальное состояние периферии (состояние после сброса).
  9. Функция PPP_Cmd() включает или отключает периферию.
  10. Функция PPP_ITConfig() включает или отключает прерывания.
  11. Функция PPP_DMAConfig() включает или отключает DMA-интерфейс.
  12. Функции, оканчивающиеся на Config, настраивают отдельные функции периферии. Например GPIO_PinRemapConfig().
  13. Функция PPP_GetFlagStatus() служит для получения состояния флагов.
  14. Функция PPP_ClearFlag() сбрасывает флаги.
  15. Функция PPP_GetITStatus() сообщает о том, произошло ли прерывание или нет.
  16. Функция PPP_ClearITPendingBit() сбрасывает бит захвата прерывания.

Примечания

  1. Cortex-M3 (англ.). keil.com.
  2. What is CMSIS? (англ.). keil.arm.com.
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya