关于解决DS1302显示85、45卡死和闪现问题
扫描二维码
随时随地手机看文章
最近帮同学做毕设,调了几块带有时钟芯片DS1302芯片的板子。一直以为这芯片很简单,但用了之后老是发现各种问题,比如莫名其妙的显示85、45后就卡死,要么就是闪现,特别郁闷,在网上搜了一下,发现很多类似问题,解决方法各种不一,但经过我调试发现,最有效的解决方法只有一个,问题不是出在硬件上,也不是驱动程序上,而是时序上!就是1302的读操作!
uchar R1302(uchar ucAddr)
{
uchar ucData;
T_RST = 0;
T_CLK = 0;
T_RST = 1;
RTInputByte(ucAddr);
ucData = RTOutputByte();
T_CLK = 1;
T_RST = 0;
T_IO = 0; //字节读操作完后,将ds1302的IO端口置零就可以消除85、45和闪现等问题
return(ucData);
}