听你的描述,在市电供电正常的情况下是能正常工作的。分析如下:
1、在掉电由电池供电的情况下,mcu是否能够正常工作(注意mcu的工作电压)。
2、在正常供电的情况下,mcu能正常读取数据,说明DS1302已经开启,而DS1302的工作电压范围很宽(1.8V-5.5V),所以电池供电应该也可以保证其能正常运行。
3、有可能mcu主频过高,因为市电能正常读取,而电池电压比市电供电低,通信速率减弱。
4、系统功耗大,电池馈电电流不够,带负载能力差。
希望能够给分,就这么几种情况。
用得是DS1302做时钟?那么这个芯片就不能掉电的。必须给它单独加个电池供电才行。