本帖最后由 pauljoe 于 2012-8-15 17:24 编辑
void RtcInit(void)
{
struct struRtcTime t;
PCONP |= 1 << 9;
CISS = 0x00;
AMR = 0;
CIIR = 0x01; // 秒增量中断
CCR = 0x10; // 外部32k时钟
/*
CCR = 0x00; // 内部时钟
PREINT = (BSP_CPU_PclkFreq(PCLK_RTC) / 32768) - 1;
PREFRAC = PCLK_RTC - ((PREINT + 1) * 32768);
*/
IrqInit(VIC_RTC, (void *)RtcHandler, HIGHEST_PRIORITY);
CCR |= 0x01;
。。。。
当电池没电时
1、如果开了秒增量中断,则会不停的进入中断,ILR却恒为0
2、关掉CIIR中断后,则时间寄存器值恒为0
以上现象,可以短路电池座正负重现
不安装电池,只是断电不保存时间而已,不影响其他
有谁知道解决方法么 |