[其它应用] 怎么切近CLKCON没有反应呢?

[复制链接]
1330|13
 楼主| tian111 发表于 2023-1-8 21:53 | 显示全部楼层 |阅读模式
我现在要用到内部128K和外部4M的陶瓷谐振器相互切换。
外部振荡器接到P50,P51口,怎么切近CLKCON没有反应呢?
llljh 发表于 2023-1-8 21:57 | 显示全部楼层
没有反应是什么意思
 楼主| tian111 发表于 2023-1-8 21:59 | 显示全部楼层
给CLKCON赋值赋不了
heweibig 发表于 2023-1-8 22:01 | 显示全部楼层
代码看看
 楼主| tian111 发表于 2023-1-8 22:03 | 显示全部楼层

Enter_Bank0;
         if(SwitchValue == HFOSC)
                 {
                                 IR_Interrupt_First = 1;
                                 #if SystemClk==1        
                                                 CLKCON = 0x84;
                                                 while((CLKCON&0x10) != 0)
                                                         ;
                                                 CLKCON |= 0x02;
                                 #endif               
                                #if SystemClk==2
                                                 CLKCON = 0xa4;
                                                 while((CLKCON&0x10) != 0)
                                                         ;
                                                 CLKCON |= 0x02;               
                                #endif               
                                #if SystemClk==4
                                                 CLKCON = 0xc0;        
                                                 while((CLKCON&0x10) != 0)
                                                         ;
                                                 CLKCON |= 0x02;                        
                                 #endif
                 }
         else
                 {
                         CLKCON &= ~0x02;                                                                        //FS = 0 Selection Low System Clock
                         NOP();
                         CLKCON &= ~0x04;                                                                        //Off HFCLK
                         IR_Interrupt_First = 0;
                 }
wyjie 发表于 2023-1-8 22:05 | 显示全部楼层
按照spec上面的描述操作
CLKCON = 0x08;//0x28,0x48,0x68都可以
delay10ms;
CLKCON = 0x0c;//0x2c,0x4c,0x6c都可以
llljh 发表于 2023-1-8 22:06 | 显示全部楼层
CLKCON寄存器的定义位搞错了吧
tpgf 发表于 2023-2-4 09:23 | 显示全部楼层
是不是需要一定时间的延时才会生效呢
nawu 发表于 2023-2-4 09:36 | 显示全部楼层
是不是可以考虑停止运行后在进行赋值呢
coshi 发表于 2023-2-4 09:42 | 显示全部楼层
参照一下寄存器的详细说明 是不是位搞错了
qcliu 发表于 2023-2-4 09:58 | 显示全部楼层
如果重新配置时钟 是不是应该先停止运行时钟啊
wiba 发表于 2023-2-4 10:14 | 显示全部楼层
切换时钟为什么要用switch语句进行切换呢
tfqi 发表于 2023-2-4 10:22 | 显示全部楼层
切换前最好加一个语句就是让时钟disable一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

797

主题

8878

帖子

7

粉丝
快速回复 在线客服 返回列表 返回顶部