功能描述:清除DMA通道x待处理标志位 例:
DMA_ClearFlag(DMA_FLAG_TE3);
9 函数DMA_GetITStatus
功能描述:检查指定的DMA通道x中断发生与否 例:
ITStatus Status;
Status = DMA_GetITStatus(DMA_IT_TC7);
DMA_IT
参数DMA_IT定义了待检察的DMA中断。 DMA_IT_GLx:通道x全局中断 DMA_IT_TCx:通道x传输完成中断 DMA_IT_HTx:通道x传输过半中断
DMA_IT_TEx:通道x传输错误中断(1--7)
10 函数DMA_ClearITPendingBit
功能描述:清除DMA通道x中断待处理标志位 例:
DMA_ClearITPendingBit(DMA_IT_GL5);
七、复位和时钟设置(RCC)
RCC寄存器结构
RCC寄存器结构,RCC_TypeDeff,在文件“stm32f10x_map.h”中定义如下:
typedef struct {
vu32 CR; vu32 CFGR; vu32 CIR;
vu32 APB2RSTR; vu32 APB1RSTR; vu32 AHBENR; vu32 APB2ENR;
46
vu32 APB1ENR; vu32 BDCR; vu32 CSR; }
RCC_TypeDef;
RCC库函数
1 函数RCC_DeInit
功能描述:将外设RCC寄存器重设为缺省值 例:
RCC_DeInit();
1. 该函数不改动寄存器RCC_CR的HSITRIM[4:0]位。 2. 该函数不重置寄存器RCC_BDCR和寄存器RCC_CSR。
2 函数RCC_HSEConfig
功能描述:设置外部高速晶振(HSE) 例:
RCC_HSEConfig(RCC_HSE_ON);
RCC_HSE
该参数设置了HSE的状态
RCC_HSE_OFF:HSE晶振OFF RCC_HSE_ON:HSE晶振ON
RCC_HSE_Bypass:HSE晶振被外部时钟旁路
3 函数RCC_WaitForHSEStartUp
功能描述:等待HSE起振,该函数将等待直到HSE就绪,或者在超时的情况下退出 例:
ErrorStatus HSEStartUpStatus;
RCC_HSEConfig(RCC_HSE_ON); /* Enable HSE */
HSEStartUpStatus = RCC_WaitForHSEStartUp();/* Wait till HSE is ready and if Time out is reached exit */ if(HSEStartUpStatus == SUCCESS) {
/* Add here PLL ans system clock config */ } else {
/* Add here some code to deal with this error */ }
4 函数RCC_AdjustHSICalibrationValue
47
功能描述:调整内部高速晶振(HSI)校准值 例:
RCC_AdjustHSICalibrationValue(0x1F);
5 函数RCC_HSICmd
功能描述:使能或者失能内部高速晶振(HSI) 例:
RCC_HSICmd(ENABLE);
6 函数RCC_PLLConfig
功能描述:设置PLL时钟源及倍频系数 例:
RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);
警告:必须正确设置软件,使PLL输出时钟频率不超过72 MHz
RCC_PLLSource
RCC_PLLSource用以设置PLL的输入时钟源。
RCC_PLLSource_HSI_Div2:PLL的输入时钟 = HSI时钟频率除以2 RCC_PLLSource_HSE_Div1:PLL的输入时钟 = HSE时钟频率
RCC_PLLSource_HSE_Div2:PLL的输入时钟 = HSE 时钟频率除以2
RCC_PLLMul
该参数用以设置PLL的倍频系数。
RCC_PLLMul_a:PLL输入时钟 x a;(2--16)
7 函数RCC_PLLCmd
功能描述:使能或者失能PLL 例:
RCC_PLLCmd(ENABLE);
8 函数RCC_SYSCLKConfig
功能描述:设置系统时钟(SYSCLK) 例:
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
RCC_SYSCLKSource
该参数设置了系统时钟
RCC_SYSCLKSource_HSI:选择HSI作为系统时钟 RCC_SYSCLKSource_HSE:选择HSE作为系统时钟
48
RCC_SYSCLKSource_PLLCLK:选择PLL作为系统时钟
9 函数RCC_GetSYSCLKSource
功能描述:返回用作系统时钟的时钟源 例:
if(RCC_GetSYSCLKSource() != 0x04) /* Test if HSE is used as system clock */ { } else { }
返回值
用作系统时钟的时钟源: 0x00:HSI作为系统时钟 0x04:HSE作为系统时钟 0x08:PLL作为系统时钟
10 函数RCC_HCLKConfig
功能描述:设置AHB时钟(HCLK) 例:
/* Configure HCLK such as HCLK = SYSCLK */ RCC_HCLKConfig(RCC_SYSCLK_Div1);
RCC_HCLK
该参数设置了AHB时钟
RCC_SYSCLK_Div1:AHB时钟 = 系统时钟 /1 RCC_SYSCLK_Div2:AHB时钟 = 系统时钟 / 2 RCC_SYSCLK_Div4:AHB时钟 = 系统时钟 / 4 RCC_SYSCLK_Div8:AHB时钟 = 系统时钟 / 8 RCC_SYSCLK_Div16:AHB时钟 = 系统时钟 / 16 RCC_SYSCLK_Div64:AHB时钟 = 系统时钟 / 64 RCC_SYSCLK_Div128:AHB时钟 = 系统时钟 / 128 RCC_SYSCLK_Div256:AHB时钟 = 系统时钟 / 256 RCC_SYSCLK_Div512:AHB时钟 = 系统时钟 / 512
11 函数RCC_PCLK1Config
功能描述:设置低速AHB时钟(PCLK1) 例:
RCC_PCLK1Config(RCC_HCLK_Div2);
RCC_PCLK1
该参数设置了低速AHB时钟(PCLK1)
49
RCC_HCLK_Div1:APB1时钟 = HCLK /1 RCC_HCLK_Div2:APB1时钟 = HCLK / 2 RCC_HCLK_Div4:APB1时钟 = HCLK / 4 RCC_HCLK_Div8:APB1时钟 = HCLK / 8 RCC_HCLK_Div16:APB1时钟 = HCLK / 16
50
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库STM32库函数祥解在线全文阅读。
相关推荐: