PCF8563驱动问题

  这两日,在写一个RTC时钟的驱动程序,芯片是周立功公司生产的PCF8563,总线是IIC的,在严格按照技术手册上的IIC时序写完之后。在测试程序里不能正确的读取日期中的分钟和秒数据,上网查了好久,也没有查到这方面的资料。最后,解决的办法很诡异在每次读取日历数据前,要先进行一次写数据,不论写什么,只要是合法数据就可以。

     while(1){  
         Write(0x00,0x00);
         sec=Read(0x02); //读取秒数据
         min=Read(0x03);//读取分钟
         hour=Read(0x04);//读取小时
         hour &= 0x3f;//取出小时的有效位
         day=Read(0x05);//读取日期
         day &= 0x3f;//取出有效的日期位
         weeks=Read(0x06);//读取星期寄存器值(其中包含世纪)
         weeks &= 0x07;//取出星期的值
         mon=Read(0x07);//读出月份的值

   printf("     ");

         delay(1);//延时1s

         }

      期待着能尽快解决这个错误。

posted @ 2013-03-30 16:01  醉剑客  阅读(677)  评论(0编辑  收藏  举报