辅助振荡器的问题

[复制链接]
779|12
 楼主| llia 发表于 2020-1-17 22:20 | 显示全部楼层 |阅读模式
PIC24F16KA101的辅助振荡器SOSC作为RTCC的时钟源。
但是一直不振。用内部的LPRC没问题。
happy_10 发表于 2020-1-17 22:24 | 显示全部楼层
然后呢?你是怎么应对这个的呢        
 楼主| llia 发表于 2020-1-17 22:27 | 显示全部楼层
然后将SOSC作为主时钟源,用示波器可以看出来振荡了。
songqian17 发表于 2020-1-17 22:30 | 显示全部楼层
配置看下
 楼主| llia 发表于 2020-1-17 22:33 | 显示全部楼层
#pragma config BWRP = OFF               // Table Write Protect Boot (Boot segment may be written)
#pragma config BSS = OFF                // Boot segment Protect (No boot program Flash segment)

// FGS
#pragma config GWRP = OFF               // General Segment Code Flash Write Protection bit (General segment may be written)
#pragma config GCP = OFF                // General Segment Code Flash Code Protection bit (No protection)

// FOSCSEL
#pragma config FNOSC = FRCDIV           // Oscillator Select (8 MHz FRC oscillator with divide-by-N (FRCDIV))
#pragma config IESO = ON               // Internal External Switch Over bit (Internal External Switchover mode disabled (Two-Speed Start-up disabled))

// FOSC
#pragma config POSCMOD = NONE           // Primary Oscillator Configuration bits (Primary oscillator disabled)
#pragma config OSCIOFNC = ON            // CLKO Enable Configuration bit (CLKO output disabled; pin functions as port I/O)
#pragma config POSCFREQ = HS            // Primary Oscillator Frequency Range Configuration bits (Primary oscillator/external clock input frequency greater than 8 MHz)
#pragma config SOSCSEL = SOSCHP         // SOSC Power Selection Configuration bits (Secondary oscillator configured for high-power operation)
#pragma config FCKSM = CSECMD           // Clock Switching and Monitor Selection (Clock switching is enabled, Fail-Safe Clock Monitor is disabled)

// FWDT
#pragma config WDTPS = PS256            // Watchdog Timer Postscale Select bits (1:256)
#pragma config FWPSA = PR128            // WDT Prescaler (WDT prescaler ratio of 1:128)
#pragma config WINDIS = OFF             // Windowed Watchdog Timer Disable bit (Standard WDT selected; windowed WDT disabled)
#pragma config FWDTEN = OFF              // Watchdog Timer Enable bit (WDT enabled)

// FPOR
#pragma config BOREN = BOR3             // Brown-out Reset Enable bits (Brown-out Reset enabled in hardware; SBOREN bit disabled)
#pragma config PWRTEN = ON              // Power-up Timer Enable bit (PWRT enabled)
#pragma config I2C1SEL = PRI            // Alternate I2C1 Pin Mapping bit (Default location for SCL1/SDA1 pins)
#pragma config BORV = V18               // Brown-out Reset Voltage bits (Brown-out Reset set to lowest voltage (1.8V))
#pragma config MCLRE = ON               // MCLR Pin Enable bit (MCLR pin enabled; RA5 input pin disabled)

// FICD
#pragma config ICS = PGx1               // ICD Pin Placement Select bits (PGC1/PGD1 are used for programming and debugging the device)

// FDS
#pragma config DSWDTPS = DSWDTPS8       // Deep Sleep Watchdog Timer Postscale Select bits (1:131,072 (135 Seconds))
#pragma config DSWDTOSC = SOSC          // DSWDT Reference Clock Select bit (DSWDT uses SOSC as reference clock)
#pragma config RTCOSC = SOSC            // RTCC Reference Clock Select bit (RTCC uses SOSC as reference clock)
#pragma config DSBOREN = ON             // Deep Sleep Zero-Power BOR Enable bit (Deep Sleep BOR enabled in Deep Sleep)
#pragma config DSWDTEN = ON             // Deep Sleep Watchdog Timer Enable bit (DSWDT enabled)

代码就一个地方注意了
OSCCONbits.SOSCEN = 1;
songqian17 发表于 2020-1-17 22:38 | 显示全部楼层
OSCCONbits.SOSCEN = 1;该位需要用解锁序列
chenho 发表于 2020-1-17 22:42 | 显示全部楼层
楼上正解
lium 发表于 2020-1-17 22:44 | 显示全部楼层
有些型号是可以直接使能的
gongche 发表于 2020-1-17 22:49 | 显示全部楼层
这个型号不知道为什么需要解锁
 楼主| llia 发表于 2020-1-17 22:51 | 显示全部楼层

嗯,我再好好缕一缕吧,有了好消息及时通知大家
天灵灵地灵灵 发表于 2020-1-18 22:41 | 显示全部楼层
这个系列有点坑。
CoolSilicon 发表于 2020-1-19 10:35 | 显示全部楼层
主时钟是主时钟, 辅助时钟是辅助时钟,两个不一样的, 你要研究一下, 2个模块的使能方式是不一样的.
wanduzi 发表于 2020-1-23 21:35 | 显示全部楼层
年后再搞。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

961

主题

8893

帖子

4

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