打印
[PIC®/AVR®/dsPIC®产品]

dsPIC33EP系列OSCCON解锁序列和时钟切换

[复制链接]
671|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
用MAPLAB X IDE 新建dsPIC33EP64GS505独立工程,然后添加main.c文件,导入p33EP64GS505.h和p33EP64GS505.glb文件到工程目录中,见下图:

在main.c文件中编写时钟配置软件,代码如下:





问题:软件执行后发现OSCCON寄存器高位COSC<2:0>=7,一直不会被改变;调试发现NOSC<2:0>值被修改为1,说明OSCCON寄存器解锁成功,但是时钟始终不能被切换




使用特权

评论回复
沙发
CoolSilicon| | 2020-6-12 14:32 | 只看该作者
用下面的这段看看, 使用FRC, 工作在60MIPS.

        /****************** Clock definitions *********************************/
    // 60 MIPS (59.88Mhz) (i.e 7.37 * (65/4))
    PLLFBD =  63;                             // M = 65    63
   
    CLKDIVbits.PLLPOST = 0;         // N2 = (2 x (PLLPOST + 1)) = 2   0
    CLKDIVbits.PLLPRE = 0;                // N1 = (PLLPRE + 2) = 2        0
   
    __builtin_write_OSCCONH(0x01);
    __builtin_write_OSCCONL(0x01);
   
    while(OSCCONbits.COSC != 0x01);
   
    while(OSCCONbits.LOCK != 1);       

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

8

帖子

0

粉丝