可编程晶振的设置很多人其实不知道除了按照说明书上操作,也可以看视频教程尤其是对于可编程晶振设置的方面都是这些细节都是选择,另外也可以咨询专业的FAE工程师进行分解。
可编程晶振的定义外部晶振宏定义。宏定义的写法如下:#定义HSE_VALUE ((uint32_t)24000000)外部晶振想写多少写多少。如果是24M外接晶振,就写成2400000。
如果不需要宏定义,在单片机的头文件里找宏定义部分就可以了。头文件默认宏定义为16M外部晶振,可以修改为实际的晶振值。
配置外部晶振。配置外部晶振时,您需要启用外部时钟,并等到晶振稳定。使用库函数配置的语句如下:void CLK_Init(){CLK_HSECmd(使能);//外部时钟开启while(设定!=CLK _获取标志状态(CLK _标志_ hser dy));//等待外部晶振振动。CLK _时钟开关命令(使能);//切换启用
CLK _时钟开关配置(CLK _开关模式_手动,CLK _源_HSE,禁用,CLK _当前时钟状态_禁用);//切换到外部晶振CLK _ SYSCLKConfig(CLK _预分频器_ CPU div 1);//1分频}
在main()中初始化在main()中初始化CLK_Init()。此时,配置了外部晶振,但程序执行时,发现晶振启动振动失败,程序在CLK _时钟开关配置默认设置是无等待状态,需要修改为1等待状态。实际上,这部分的内容在数据表中有所反映:在高达24 MHz的较高频率下使用高速外部时钟(HSE)时,需要一个等待状态。这种情况下,器件选项字节应编程为插入该等待状态。参见数据手册选项字节部分。设置完成后,下载程序,你会发现晶振已经开始正常振动了。
一般情况下的在设置可编程晶振的时候需要掌握一定的编程技术,因为只有掌握编程技术以后就能够做好的编程了,这些代码的仅供参考的,因为不同的可编程晶振可能编辑的方式是不同的,在这些方面要合理的做出自己判断或者的让厂家直接的进行设置也是可以的。