关于DS1302 CH位操作
void OSC_1302_Enable (void)
{
write_1302_byte(0x80); //command_sec
write_1302_byte(0x00); //ch=0
ds1302_RESET_L();
}
上面的时钟使能函数把秒信号给清掉了,这样如果上电次数频繁就有很大的时钟误差,改成下面的
void OSC_1302_Enable (void)
{
unsigned char sec_temp;
sec_temp=read_1302_SEC();
write_1302_SEC(sec_temp&0x7f); //ch=0
}
先读回秒寄存器,然后就单一的操作BIT7(CH)位
不知各位有何高见?
|