当前位置:首页 >> 信息与通信 >>

stm8固件库(时钟部分)


一 时钟管理
1 恢复相关的时钟寄存器到默认值 void CLK_DeInit()

2 启用或关闭外部高速振荡器(HSE) void CLK_HSECmd(FunctionState NewState)

启用 CLK_HSECmd(ENABLE) 关闭 CLK_HSECmd(DISABLE) 3 启用或关闭内部高速振荡器(HS

I) void CLK_HSICmd(FunctionState NewState)

启用 CLK_HSICmd(ENABLE) 关闭 CLK_HSICmd(DISABLE) 4 启用或关闭内部低速振荡器(LSI) void CLK_LSICmd(FunctionState NewState)

关闭 CLK_LSICmd(DISABLE); 启用 CLK_LSICmd(ENABLE); 5 启用或关闭时钟输出功能 void CLK_CCOCmd(FunctionState NewState)

关闭 CLK_CCOCmd(DISABLE); 启用 CLK_CCOCmd(ENABLE); 6 启用或关闭时钟切换 void CLK_ClockSwitchCmd(FunctionState NewState)

关闭 CLK_ClockSwitchCmd(DISABLE); 启用 CLK_ClockSwitchCmd(ENABLE); 7 启用或关闭快速唤醒 void CLK_FastHaltWakeUpCmd(FunctionState NewState)

关闭 CLK_FastHaltWakeUpCmd(DISABLE); 启用 CLK_FastHaltWakeUpCmd(ENABLE); 8 启用或关闭活跃停机模式下的电压调节器 CLK_SlowActiveHaltWakeUpCmd(FunctionState NewState)

关闭 CLK_SlowActiveHaltWakeUpCmd(DISABLE); 启用 CLK_SlowActiveHaltWakeUpCmd(ENABLE); 9 启用或关闭指定的时钟中断 CLK_PeripheralClockConfig(CLK_IT_TypeDef CLK_IT, FunctionState NewState)

参数 1:I2C 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_I2C, ENABLE); 参数 1:SPI 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_SPI, ENABLE); 参数 1:UART1 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_UART1, ENABLE); 参数 1:UART2 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_UART2, ENABLE); 参数 1:UART3 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_UART3, ENABLE); 参数 1:TIMER1 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER1, ENABLE); 参数 1:TIMER2 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER2, ENABLE); 参数 1:TIMER3 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER3, ENABLE); 参数 1:TIMER4 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER4, ENABLE); 参数 1:TIMER5 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER5, ENABLE); 参数 1:TIMER6 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER6, ENABLE);

参数 1:AWU 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_AWU, ENABLE); 参数 1:ADC 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_ADC, ENABLE); 参数 1:CAN 参数 2:ENABLE CLK_PeripheralClockConfig(CLK_PERIPHERAL_CAN, ENABLE); 10 系统时钟切换配置 CLK_ClockSwitchConfig(CLK_SwitchMode_TypeDef CLK_Source_TypeDef CLK_NewClock,FunctionState CLK_CurrentClockState_TypeDef CLK_CurrentClockState)

CLK_SwitchMode, ITState,

参数 1:手动切换 参数 2:内部高速振荡器 参数 3:关闭 参数 4:继续启用 ErrorStatus clk_return_status; clk_return_status = CLK_ClockSwitchConfig(CLK_SWITCHMODE_MANUAL, CLK_SOURCE_HSI, ENABLE, CLK_CURRENTCLOCKSTATE_ENABLE); 参数 1:自动切换 参数 2:内部低速振荡器 参数 3:关闭 参数 4:关闭 ErrorStatus clk_return_status; clk_return_status = CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_LSI, DISABLE, CLK_CURRENTCLOCKSTATE_DISABLE); 参数 1:自动切换 参数 2:外部高速振荡器 参数 3:关闭 参数 4:关闭 ErrorStatus clk_return_status; clk_return_status = CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSE, DISABLE, CLK_CURRENTCLOCKSTATE_DISABLE); 11 配置内部高速振荡器(HSI)的分频器 void CLK_HSIPrescalerConfig(CLK_Prescaler_TypeDef HSIPrescaler)

1 分频 2 分频 4 分频 8 分频

CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV2); CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV4); CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV8);

12 配置时钟输出脚(CCO)的时钟源 Void CLK_CCOConfig(CLK_Output_TypeDef CLK_CCO)

参数 1:内部高速振荡器/分频值 CLK_CCOConfig(CLK_OUTPUT_HSI); 参数 1:内部低速振荡器 CLK_CCOConfig(CLK_OUTPUT_LSI); 参数 1:外部高速振荡器 CLK_CCOConfig(CLK_OUTPUT_HSE); 参数 1:CPU 时钟 1 分频 CLK_CCOConfig(CLK_OUTPUT_CPU); 参数 1:CPU 时钟 2 分频 CLK_CCOConfig(CLK_OUTPUT_CPUDIV2); 参数 1:CPU 时钟 4 分频 CLK_CCOConfig(CLK_OUTPUT_CPUDIV4); 参数 1:CPU 时钟 8 分频 CLK_CCOConfig(CLK_OUTPUT_CPUDIV8); 参数 1:CPU 时钟 16 分频 CLK_CCOConfig(CLK_OUTPUT_CPUDIV16); 参数 1:CPU 时钟 32 分频 CLK_CCOConfig(CLK_OUTPUT_CPUDIV32); 参数 1:CPU 时钟 64 分频 CLK_CCOConfig(CLK_OUTPUT_CPUDIV64); 参数 1:fHSI CLK_CCOConfig(CLK_OUTPUT_HSIRC); 参数 1:fMASTER CLK_CCOConfig(CLK_OUTPUT_MASTER); 参数 1:其它/fCPU CLK_CCOConfig(CLK_OUTPUT_OTHERS); 13 启用或关闭指定的外设时钟 Void CLK_PeripheralClockConfig(CLK_Peripheral_TypeDef NewState)

CLK_Peripheral,FunctionalState

参数 1:时钟安全系统检测标志 参数 2:启用 CLK_ITConfig(CLK_IT_CSSD, ENABLE); 参数 1:时钟切换中断标志 参数 2:关闭 CLK_ITConfig(CLK_IT_SWIF, DISABLE); 14 配置系统时钟分频器 Void CLK_SYSCLKConfig(CLK_Prescaler_TypeDef CLK_Prescale)

参数 1:内部高速振荡器 1 分频 参数 1:内部高速振荡器 2 分频 参数 1:内部高速振荡器 4 分频 参数 1:内部高速振荡器 8 分频 参数 1:CPU 时钟 1 分频 参数 1:CPU 时钟 2 分频 参数 1:CPU 时钟 4 分频 参数 1:CPU 时钟 8 分频 参数 1:CPU 时钟 16 分频 参数 1:CPU 时钟 32 分频 参数 1:CPU 时钟 64 分频 参数 1: CPU 时钟 128 分频

CLK_SYSCLKConfig(CLK_PRESCALER_HSIDIV1); CLK_SYSCLKConfig(CLK_PRESCALER_HSIDIV2); CLK_SYSCLKConfig(CLK_PRESCALER_HSIDIV4); CLK_SYSCLKConfig(CLK_PRESCALER_HSIDIV8); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV2); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV4); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV8); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV16); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV32); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV64); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV128);

15 配置 SWIM 时钟分频器 void CLK_SWIMConfig(CLK_SWIMDivider_TypeDef CLK_SWIMDivider)

参数 1:2 分频 参数 1:不分频

CLK_SWIMConfig(CLK_SWIMDIVIDER_2); CLK_SWIMConfig(CLK_SWIMDIVIDER_OTHER);

16 配置 CAN 时钟频率 Void CLK_CANConfig((CLK_CANDivider_TypeDef CLK_CANDivider)

参数 1:时钟频率=HSE/1 参数 1:时钟频率=HSE/2 参数 1:时钟频率=HSE/3 参数 1:时钟频率=HSE/4 参数 1:时钟频率=HSE/5 参数 1:时钟频率=HSE/6 参数 1:时钟频率=HSE/7 参数 1:时钟频率=HSE/8

CLK_CANConfig(CLK_CANDIVIDER_1); CLK_CANConfig(CLK_CANDIVIDER_2); CLK_CANConfig(CLK_CANDIVIDER_3); CLK_CANConfig(CLK_CANDIVIDER_4); CLK_CANConfig(CLK_CANDIVIDER_5); CLK_CANConfig(CLK_CANDIVIDER_6); CLK_CANConfig(CLK_CANDIVIDER_7); CLK_CANConfig(CLK_CANDIVIDER_8);

17 启用时钟安全系统 Void CLK_ClockSercuritySystemEnable(void)

18 清除时钟切换忙标志 Void CLK_SYSCLKEmergencyClear(void)

19 修正内部高速振荡器频率 Void CLK_AdjustHSICalibrationValue(CLK_HSITrimValue_TypeDef CLK_HSITrimValue)

参数 1:校准值为 0 参数 1:校准值为 1 参数 1:校准值为 2 参数 1:校准值为 3 参数 1:校准值为 4 参数 1:校准值为 5 参数 1:校准值为 6 参数 1:校准值为 7

CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_0); CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_1); CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_2); CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_3); CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_4); CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_5); CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_6); CLK_AdjustHSICalibrationValue(CLK_HSITRIMVALUE_7);

20 获得系统时钟频率 u32 CLK_GetClockFreq()

21 获得系统时钟源 CLK_GetSYSCLKSource(void)

22 获得时钟标志状态 CLK_GetFlagStatus(CLK_FLAG_TypeDef CLK_FLAG)

参数 1:内部低速振荡器就绪标志位 参数 1:内部高速振荡器就绪标志位 参数 1:外部高速振荡器就绪标志位 参数 1:时钟切换中断标志位 参数 1:时钟切换忙标志位 参数 1:时钟安全系统检测标志位 参数 1:辅助振荡器开关状态位 参数 1:时钟输出忙标志位 参数 1:时钟输出就绪标志位

CLK_GetFlagStatus(CLK_FLAG_LSIRDY); CLK_GetFlagStatus(CLK_FLAG_HSIRDY); CLK_GetFlagStatus(CLK_FLAG_HSERDY); CLK_GetFlagStatus(CLK_FLAG_SWIF); CCLK_GetFlagStatus(CLK_FLAG_SWBSY); CLK_GetFlagStatus(CLK_FLAG_CSSD); CLK_GetFlagStatus(CLK_FLAG_AUX); CLK_GetFlagStatus(CLK_FLAG_CCOBSY); CLK_GetFlagStatus(CLK_FLAG_CCORDY);

23 获得时钟中断标志状态 CLK_GetITStatus(CLK_IT_TypeDef CLK_IT)

参数 1:时钟安全系统监测标志 参数 1:时钟切换中断标志

CLK_GetITStatus(CLK_IT_CSSD); CLK_GetITStatus(CLK_IT_SWIF);

24 清除中断标志状态 Void CLK_ClearITPendingBit(CLK_IT_ TypeDef CLK_IT);

参数 1:时钟安全系统检测标志 CLK_ClearITPendingBit(CLK_IT_CSSD); 参数 1:时钟切换终端标志 CLK_ClearITPendingBit(CLK_IT_SWIF);


相关文章:
stm8固件库(时钟部分)
stm8固件库(时钟部分)_信息与通信_工程科技_专业资料。stm8固件库(时钟部分)亲手精心编制编制,不可错过,后续更新中……一 时钟管理 1 恢复相关的时钟寄存器到默...
STM8S固件库下载说明
2.5 STM8S 固件库下载说明 使用 STM8 固件库进行系统开发,可以省去对寄存器直接操作的麻烦,大大减 少 STM8 单片机的开发难度和开发时间,提高系统开发速度。 2.5...
STM8时钟树解析
STM8 库函数学习笔记之时钟树解析 库函数学习笔记之时钟树解析 STM8 库函数...stm8固件库(时钟部分) 10页 1下载券 时钟树综合 47页 免费 ...
STM8教程-第八章 STM8S207时钟编程及其实例
STM8教程-第八章 STM8S207时钟编程及其实例_计算机硬件及网络_IT/计算机_专业资料。第八章 STM8S207 时钟编程及其实例本章介绍 STM8S207 的时钟编程。STM8S...
STM8L15x官方固件函数库与使用手册下载说明
进入 ST 的官网:http://www.st.com,在搜索内输入 STSW-STM8016 进行检索。 2. 检索完成出现如下界面,可以看到描述中说明为 STM8L15x 固件 库。 3. 点击...
stm32v3.5固件库时钟系统配置流程
stm32v3.5固件库时钟系统配置流程_计算机软件及应用_IT/计算机_专业资料。详细讲解如何使用v3.5固件库配置stm32时钟系统core_cm3.c/ core_cm3.c:内核访问层源文...
STM8教程-第十六章 CCO 时钟输出
STM8教程-第十六章 CCO 时钟输出_计算机硬件及网络_IT/计算机_专业资料。第十六章 CCO 时钟输出作为 STM8S207 的一个特别功能, 时钟输出功能 CCO 是可配置的...
stm8s修改时钟源汇编
修改时钟源 ;描述 : 修改 stm8时钟源为外部时钟 ,观察 LD1 灯的变化情况 ;*** ;***接线*** ;硬件:1、STM8s-discovery LED1 .FORM 72 lab equ 2...
STM8的C语言编程(11)- 切换时钟源
STM8 的 C 语言编程(11)-- 切换时钟源 语言编程( )-- STM8 单片机的时钟源非常丰富,芯片内部既有 16MHZ 的高速 RC 振荡器,也有 128KHZ 的低速 RC 振荡...
Stm8使用固件库占用程序空间过多解决方法
Stm8使用固件库占用程序空间过多解决方法_计算机软件及应用_IT/计算机_专业资料。stm8使用库函数开发占用过多程序空间,优化方法 Stm8 使用固件库占用程序空间过多...
更多相关标签:
stm8 外部时钟 库函数 | stm8s固件库官方下载 | stm8固件库中文手册 | stm8固件库下载 | stm8s固件库使用手册 | stm8固件库 | stm8 官方固件库 下载 | stm8s固件库下载 |