mcu是430f2418
主时钟是外部8M ,低速时钟外部32.768 。 32.768用来做485通信的波特率。
程序运行初始化时钟部分如下。
出现不运行的时候使用示波器观察8M起振,32k没起振 。试过外部12pf ,内部6pf 。 外部不焊 内部12.5pf 。都不行
ps:晶振是kds的 12.5pf 圆柱状音叉型晶振。
- static void Init_clock(void)
- {
- DCOCTL=0x60;
- BCSCTL1=0x07;
- BCSCTL2=0x8a;//0x8a SMCLK=/2,0X88 SMCLK=/1
- // BCSCTL3=0x84; //6pF
- BCSCTL3=0x8C; //12.5pF
- //P5SEL=0X70;
- volatile unsigned int i;
- do
- {
- RED_LED_ON();
- GREEN_LED_ON();
- POWER_ON();
- IFG1 &= ~OFIFG; // Clear OSCFault flag
- for (i = 0xffff; i > 0; i--); // Time for flag to set
- }
- while ((IFG1 & OFIFG));
- }
复制代码
看了你的帖子,很有感触。
那么想问一下 ,圆柱状的晶振 不管是kds官网还是 爱普生官网上 ,温度范围都是-10 ~ +60度
而贴片的都能做到-40 ~85的工业级标准。这是为什么?
另外 是否贴片的32k晶体就不存在你的注意事项里的大部分情况? 是否可以确保振荡器本身震荡正常。
一周热门 更多>