系统时钟CCO输出的步骤(算法):
1、启用某个时钟(该时钟要作为CCO输出的时钟源)。
2、切换时钟(开机默认的时钟是HSI,即内部高速时钟),等待系统时钟切换完成。
3、等待切换后的时钟就绪后,设置当前时钟分频。
4、设置CCO输出时钟的分频。
代码如下:
#include "led.h"
#include "stm8s.h"
#include "stm8s_clk.h"
#include "stm8s_gpio.h"
void main()
{
CLK_LSICmd(ENABLE); //启用内部低速时钟,时钟频率128Khz
while(CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSI,
DISABLE, CLK_CURRENTCLOCKSTATE_DISABLE)==ERROR); //等待时钟切换完成
while(CLK_GetFlagStatus(CLK_FLAG_LSIRDY)==RESET); //等待LSI就绪
CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV128); //CPU时钟128分频,即1Khz
LED_Init(); //led初始化
LED1_Close();//led1关闭
CLK_CCOConfig(CLK_OUTPUT_CPUDIV64); //配置CCO输出为CPU时钟的64分频,输出频率16hz
while(1)
{}
}
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』