NIIETCM4 PD  v0.7.0
Драйвер периферии для микроконтроллеров на базе ядра ARM Cortex-M4
Файл niietcm4_rcc.h

Файл содержит все прототипы функций для RCC (Reset & Clock Control). Подробнее...

#include "niietcm4.h"
Граф включаемых заголовочных файлов для niietcm4_rcc.h:
Граф файлов, в которые включается этот файл:

См. исходные тексты.

Структуры данных

struct  RCC_PLLInit_TypeDef
 Структура инициализации PLL. Подробнее...
 

Макросы

#define RCC_CLK_CHANGE_TIMEOUT   ((uint32_t)10000)
 
#define IS_RCC_PLL_REF(PLL_REF)
 Макрос проверки аргументов типа RCC_PLLRef_TypeDef. Подробнее...
 
#define IS_RCC_PLL_NO(PLL_NO)
 Макрос проверки аргументов типа RCC_PLLNO_TypeDef. Подробнее...
 
#define IS_RCC_UART_CLK(UART_CLK)
 Макрос проверки аргументов типа RCC_UARTClk_TypeDef. Подробнее...
 
#define IS_RCC_SPI_CLK(SPI_CLK)
 Макрос проверки аргументов типа RCC_SPIClk_TypeDef. Подробнее...
 
#define IS_RCC_USB_CLK(USB_CLK)
 Макрос проверки аргументов типа RCC_USBClk_TypeDef. Подробнее...
 
#define IS_RCC_USB_FREQ(USB_FREQ)
 Макрос проверки аргументов типа RCC_USBFreq_TypeDef. Подробнее...
 
#define IS_RCC_ADC_CLK(ADC_CLK)
 Макрос проверки аргументов типа RCC_ADCClk_TypeDef. Подробнее...
 
#define IS_RCC_SYS_CLK(SYS_CLK)
 Макрос проверки аргументов типа RCC_SysClk_TypeDef. Подробнее...
 
#define IS_RCC_PERIPH_CLK(PERIPH_CLK)
 Макрос проверки аргументов типа RCC_PeriphClk_TypeDef. Подробнее...
 
#define IS_RCC_PERIPH_RST(PERIPH_RST)
 Макрос проверки аргументов типа RCC_PeriphRst_TypeDef.
 
#define IS_RCC_PLLDIV(PLLDIV)   (((PLLDIV) & ((uint32_t)0xFFFFFF00)) == ((uint32_t)0x00))
 Макрос проверки значения выходного делителя PLL на попадание в допустимый диапазон.
 
#define IS_RCC_PLL_NR(PLL_NR)   (((PLL_NR) <= ((uint32_t)33)) && ((PLL_NR) >= ((uint32_t)2)))
 Макрос проверки значения опорного делителя PLL на попадание в допустимый диапазон.
 
#define IS_RCC_PLL_NF(PLL_NF)   (((PLL_NF) <= ((uint32_t)513)) && ((PLL_NF) >= ((uint32_t)2)))
 Макрос проверки значения делителя ОС PLL на попадание в допустимый диапазон.
 
#define IS_RCC_CLK_DIV(CLK_DIV)   ((CLK_DIV) < ((uint32_t)64))
 Макрос проверки значения делителя тактового сигнала на попадание в допустимый диапазон.
 
#define IS_RCC_SYS_FREQ(SYS_FREQ)   (((SYS_FREQ) < ((uint32_t)200000000)) && ((SYS_FREQ) >= ((uint32_t)1000000)))
 Макрос проверки значения желаемой частоты при автонастройке в допустимый диапазон.
 

Перечисления

enum  RCC_PLLRef_TypeDef { RCC_PLLRef_XI_OSC, RCC_PLLRef_USB_CLK, RCC_PLLRef_USB_60MHz, RCC_PLLRef_ETH_25MHz }
 Выбор источника опорного сигнала PLL. Подробнее...
 
enum  RCC_PLLNO_TypeDef { RCC_PLLNO_Disable, RCC_PLLNO_Div2, RCC_PLLNO_Div4 = 3 }
 Выходной делитель NO. Подробнее...
 
enum  RCC_UARTClk_TypeDef { RCC_UARTClk_SYSCLK, RCC_UARTClk_XI_OSC, RCC_UARTClk_USB_CLK, RCC_UARTClk_USB_60MHz }
 Выбор источника тактирования для UART. Подробнее...
 
enum  RCC_SPIClk_TypeDef { RCC_SPIClk_SYSCLK, RCC_SPIClk_XI_OSC, RCC_SPIClk_USB_CLK, RCC_SPIClk_USB_60MHz }
 Выбор источника тактирования для SPI. Подробнее...
 
enum  RCC_USBClk_TypeDef { RCC_USBClk_XI_OSC, RCC_USBClk_USB_CLK }
 Выбор источника тактирования для USB. Подробнее...
 
enum  RCC_USBFreq_TypeDef { RCC_USBFreq_12MHz, RCC_USBFreq_24MHz }
 Выбор фиксированной частоты на входе CLK_USB. Подробнее...
 
enum  RCC_ADCClk_TypeDef {
  RCC_ADCClk_0, RCC_ADCClk_1, RCC_ADCClk_2, RCC_ADCClk_3,
  RCC_ADCClk_4, RCC_ADCClk_5, RCC_ADCClk_6, RCC_ADCClk_7,
  RCC_ADCClk_8, RCC_ADCClk_9, RCC_ADCClk_10, RCC_ADCClk_11
}
 Выбор модуля ADC для настройки его тактового сигнала. Подробнее...
 
enum  RCC_SysClk_TypeDef {
  RCC_SysClk_CPE_Sel, RCC_SysClk_POR, RCC_SysClk_XI_OSC, RCC_SysClk_PLL,
  RCC_SysClk_PLLDIV, RCC_SysClk_USB60MHz, RCC_SysClk_USB_CLK, RCC_SysClk_ETH25MHz
}
 Выбор источника системной частоты. Подробнее...
 
enum  RCC_PeriphClk_TypeDef {
  RCC_PeriphClk_QEP0 = ((uint32_t)(1<<1)), RCC_PeriphClk_QEP1 = ((uint32_t)(1<<2)), RCC_PeriphClk_CMP = ((uint32_t)(1<<9)), RCC_PeriphClk_PWM0 = ((uint32_t)(1<<10)),
  RCC_PeriphClk_PWM1 = ((uint32_t)(1<<11)), RCC_PeriphClk_PWM2 = ((uint32_t)(1<<12)), RCC_PeriphClk_PWM3 = ((uint32_t)(1<<13)), RCC_PeriphClk_PWM4 = ((uint32_t)(1<<14)),
  RCC_PeriphClk_PWM5 = ((uint32_t)(1<<15)), RCC_PeriphClk_PWM6 = ((uint32_t)(1<<16)), RCC_PeriphClk_PWM7 = ((uint32_t)(1<<17)), RCC_PeriphClk_PWM8 = ((uint32_t)(1<<18)),
  RCC_PeriphClk_WD = ((uint32_t)(1<<19)), RCC_PeriphClk_I2C0 = ((uint32_t)(1<<20)), RCC_PeriphClk_I2C1 = ((uint32_t)(1<<21)), RCC_PeriphClk_ADC = ((uint32_t)(1<<24))
}
 Управление тактированием периферийных блоков Подробнее...
 
enum  RCC_PeriphRst_TypeDef {
  RCC_PeriphRst_WD = ((uint32_t)(1<<0)), RCC_PeriphRst_I2C0 = ((uint32_t)(1<<1)), RCC_PeriphRst_I2C1 = ((uint32_t)(1<<2)), RCC_PeriphRst_USB = ((uint32_t)(1<<3)),
  RCC_PeriphRst_Timer0 = ((uint32_t)(1<<4)), RCC_PeriphRst_Timer1 = ((uint32_t)(1<<5)), RCC_PeriphRst_Timer2 = ((uint32_t)(1<<6)), RCC_PeriphRst_UART0 = ((uint32_t)(1<<7)),
  RCC_PeriphRst_UART1 = ((uint32_t)(1<<8)), RCC_PeriphRst_UART2 = ((uint32_t)(1<<9)), RCC_PeriphRst_UART3 = ((uint32_t)(1<<10)), RCC_PeriphRst_SPI0 = ((uint32_t)(1<<11)),
  RCC_PeriphRst_SPI1 = ((uint32_t)(1<<12)), RCC_PeriphRst_SPI2 = ((uint32_t)(1<<13)), RCC_PeriphRst_SPI3 = ((uint32_t)(1<<14)), RCC_PeriphRst_ETH = ((uint32_t)(1<<15)),
  RCC_PeriphRst_QEP0 = ((uint32_t)(1<<0)), RCC_PeriphRst_QEP1 = ((uint32_t)(1<<1)), RCC_PeriphRst_PWM0 = ((uint32_t)(1<<2)), RCC_PeriphRst_PWM1 = ((uint32_t)(1<<3)),
  RCC_PeriphRst_PWM2 = ((uint32_t)(1<<4)), RCC_PeriphRst_PWM3 = ((uint32_t)(1<<5)), RCC_PeriphRst_PWM4 = ((uint32_t)(1<<6)), RCC_PeriphRst_PWM5 = ((uint32_t)(1<<7)),
  RCC_PeriphRst_PWM6 = ((uint32_t)(1<<8)), RCC_PeriphRst_PWM7 = ((uint32_t)(1<<9)), RCC_PeriphRst_PWM8 = ((uint32_t)(1<<10)), RCC_PeriphRst_CAP0 = ((uint32_t)(1<<11)),
  RCC_PeriphRst_CAP1 = ((uint32_t)(1<<12)), RCC_PeriphRst_CAP2 = ((uint32_t)(1<<13)), RCC_PeriphRst_CAP3 = ((uint32_t)(1<<14)), RCC_PeriphRst_CAP4 = ((uint32_t)(1<<15)),
  RCC_PeriphRst_CAP5 = ((uint32_t)(1<<16)), RCC_PeriphRst_CMP = ((uint32_t)(1<<17))
}
 Управление сбросом периферийных блоков Подробнее...
 

Функции

void RCC_SysClkDiv2Out (FunctionalState State)
 Включение генерации тактового сигнала с частой равной половине системной на выводе H[0]. Функция использует драйвер GPIO для настройки выхода. Подробнее...
 
OperationStatus RCC_PLLAutoConfig (RCC_PLLRef_TypeDef RCC_PLLRef, uint32_t SysFreq)
 Автоматическая конфигурация PLL для получения желаемой системной частоты. Подробнее...
 
void RCC_PLLInit (RCC_PLLInit_TypeDef *RCC_PLLInit_Struct)
 Инициализирует PLL согласно параметрам структуры RCC_PLLInit_Struct. Подробнее...
 
void RCC_PLLDeInit ()
 Устанавливает все регистры PLL значениями по умолчанию. Подробнее...
 
void RCC_PLLStructInit (RCC_PLLInit_TypeDef *RCC_PLLInit_Struct)
 Заполнение каждого члена структуры RCC_PLLInit_Struct значениями по умолчанию. Подробнее...
 
void RCC_PLLPowerDownCmd (FunctionalState State)
 Управление режимом PowerDown PLL. Подробнее...
 
void RCC_PeriphClkCmd (RCC_PeriphClk_TypeDef RCC_PeriphClk, FunctionalState State)
 Включение тактирования выбранного блока периферии. Подробнее...
 
OperationStatus RCC_SysClkSel (RCC_SysClk_TypeDef RCC_SysClk)
 Выбор источника для системного тактового сигнала. Подробнее...
 
RCC_SysClk_TypeDef RCC_SysClkStatus ()
 Текущий источник системного тактового сигнала. Подробнее...
 
void RCC_USBClkConfig (RCC_USBClk_TypeDef RCC_USBClk, RCC_USBFreq_TypeDef RCC_USBFreq)
 Настройка источника тактового сигнала для USB. Подробнее...
 
void RCC_USBClkCmd (FunctionalState State)
 Включение тактирования USB. Подробнее...
 
void RCC_UARTClkSel (NT_UART_TypeDef *UARTx, RCC_UARTClk_TypeDef RCC_UARTClk)
 Настройка источника тактового сигнала для выбранного UART. Подробнее...
 
void RCC_UARTClkDivConfig (NT_UART_TypeDef *UARTx, uint32_t DivVal, FunctionalState DivState)
 Настройка делителя тактового сигнала для выбранного UART. Подробнее...
 
void RCC_UARTClkCmd (NT_UART_TypeDef *UARTx, FunctionalState State)
 Включение тактирования UART. Подробнее...
 
void RCC_SPIClkSel (NT_SPI_TypeDef *SPIx, RCC_SPIClk_TypeDef RCC_SPIClk)
 Настройка источника тактового сигнала для выбранного SPI. Подробнее...
 
void RCC_SPIClkDivConfig (NT_SPI_TypeDef *SPIx, uint32_t DivVal, FunctionalState DivState)
 Настройка делителя тактового сигнала для выбранного SPI. Подробнее...
 
void RCC_SPIClkCmd (NT_SPI_TypeDef *SPIx, FunctionalState State)
 Включение тактирования SPI. Подробнее...
 
void RCC_ADCClkDivConfig (RCC_ADCClk_TypeDef RCC_ADCClk, uint32_t DivVal, FunctionalState DivState)
 Настройка делителя тактового сигнала для выбранного ADC. Подробнее...
 
void RCC_ADCClkCmd (RCC_ADCClk_TypeDef RCC_ADCClk, FunctionalState State)
 Включение тактирования ADC. Подробнее...
 
void RCC_PeriphRstCmd (RCC_PeriphRst_TypeDef RCC_PeriphRst, FunctionalState State)
 Вывод из состояния сброса периферийных блоков. Подробнее...
 

Подробное описание

Файл содержит все прототипы функций для RCC (Reset & Clock Control).

Автор
НИИЭТ
Дата
26.10.2015
Внимание

ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНО ВЫРАЖЕННЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ ГАРАНТИИ ТОВАРНОЙ ПРИГОДНОСТИ, СООТВЕТСТВИЯ ПО ЕГО КОНКРЕТНОМУ НАЗНАЧЕНИЮ И ОТСУТСТВИЯ НАРУШЕНИЙ, НО НЕ ОГРАНИЧИВАЯСЬ ИМИ. ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДНАЗНАЧЕНО ДЛЯ ОЗНАКОМИТЕЛЬНЫХ ЦЕЛЕЙ И НАПРАВЛЕНО ТОЛЬКО НА ПРЕДОСТАВЛЕНИЕ ДОПОЛНИТЕЛЬНОЙ ИНФОРМАЦИИ О ПРОДУКТЕ, С ЦЕЛЬЮ СОХРАНИТЬ ВРЕМЯ ПОТРЕБИТЕЛЮ. НИ В КАКОМ СЛУЧАЕ АВТОРЫ ИЛИ ПРАВООБЛАДАТЕЛИ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ПО КАКИМ-ЛИБО ИСКАМ, ЗА ПРЯМОЙ ИЛИ КОСВЕННЫЙ УЩЕРБ, ИЛИ ПО ИНЫМ ТРЕБОВАНИЯМ, ВОЗНИКШИМ ИЗ-ЗА ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ИНЫХ ДЕЙСТВИЙ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.

© 2015 ОАО "НИИЭТ"

См. определение в файле niietcm4_rcc.h