原创 STM8(用库)实例赏析---CLK

2013-10-5 21:13 3434 6 6 分类: MCU/ 嵌入式

实例一:内部高速时钟切换

并可在CCO引脚上检测切换后的时钟信号。(红色部分)

 

#include "stm8s.h"

//*************************************************
//    MAIN
//*************************************************
void main(void)
{
   //1。系统时钟切换配置
   //                       自动切换             内部高速时钟   关闭切换中断
   CLK_ClockSwitchConfig (CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSI, DISABLE,
切换后关闭当前的时钟状态
CLK_CURRENTCLOCKSTATE_DISABLE);

   //2。配置内部高速时钟
   //                          一分频                       
   CLK_HSIPrescalerConfig( CLK_PRESCALER_HSIDIV1);

   //3。配置系统时钟分频器
   //                      内部高速振荡器 1 分频
   CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1);

   //4。配置时钟输出脚(CCO)的时钟源
   //            CPU时钟 1 分频
   CLK_CCOConfig(CLK_OUTPUT_CPU);

   //5。启用时钟输出
   CLK_CCOCmd(ENABLE);

   //6。设置PD0为高速推挽输出高电平

    GPIO_Init(GPIOD, 0b00000001, GPIO_MODE_OUT_PP_HIGH_FAST);

   //7。输出0到PD口

    GPIO_Write(GPIOD, 0);
 
 while(1)   // Main loop
 {
   //PD0取反
  GPIO_WriteReverse(GPIOD, GPIO_PIN_0);
 }
}

#ifdef USE_FULL_ASSERT
void assert_failed(u8* file, u32 line)
{
  while (1)   { }
}
#endif
 

 

 

 


 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条