STM32F10x Standard Peripherals Library (сокр. STM32F10x SPL) — библиотека, созданная компанией STMicroelectronics на языке Си для своих микроконтроллеров семейства STM32F10x.
Описание Содержит функции, структуры и макросы для облегчения работы с периферией микроконтроллера. Библиотека документирована, включает примеры по каждому периферийному устройству, полностью поддерживает CMSIS (код ядра Cortex-M3, разработанный компанией ARM, включается в дистрибутив). Дистрибутив библиотеки доступен для бесплатного скачивания. Начиная с версии библиотеки ARM CMSIS 1.30, в CMSIS было сделано несколько важных исправлений, включая исправление ошибки «registers may not be the same — `strexh r0,r0,[r1]'». Для устранения этой и других ошибок рекомендуется самостоятельно обновить CMSIS.
Соглашения об именах PPP — обозначение периферийного устройства, например ADC (аналого-цифровой преобразователь). Файлы исходного кода библиотеки начинаются с приставки stm32f10x_. Имена констант прописаны заглавными буквами. Если константа используется в единственном файле, то она определяется в нём. Константа, используемая в более, чем одном файле, определяется в заголовочном файле. Имена регистров, как и констант, прописаны заглавными буквами. Регистры именуются так же, как в документации на микроконтроллеры. Имена функций начинаются с PPP, после чего идёт одно подчеркивание. Далее идут слитные слова, начинающиеся с заглавных букв. Например: USART_SendData(). Для настройки периферии PPP используется функция PPP_Init(), в которую передаётся указатель на структуру типа PPP_InitTypeDef, содержащую настройки периферии. Функция PPP_DeInit() сбрасывает регистры периферии в их начальное состояние. Функция PPP_StructInit() заполняет поля структуры типа PPP_InitTypeDef значениями по умолчанию, которые описывают начальное состояние периферии (состояние после сброса). Функция PPP_Cmd() включает или отключает периферию. Функция PPP_ITConfig() включает или отключает прерывания. Функция PPP_DMAConfig() включает или отключает DMA-интерфейс. Функции, оканчивающиеся на Config, настраивают отдельные функции периферии. Например GPIO_PinRemapConfig(). Функция PPP_GetFlagStatus() служит для получения состояния флагов. Функция PPP_ClearFlag() сбрасывает флаги. Функция PPP_GetITStatus() сообщает о том, произошло ли прерывание или нет. Функция PPP_ClearITPendingBit() сбрасывает бит захвата прерывания.
Примечания
Категория:Библиотеки программ