ds1302时钟芯片怎么样才能显示到OLED液晶里

本帖最后由 东北小辉辉 于 18:02 编辑

RT小弚这两天在学习ds1302这个芯片顺便学习一下spi总线协议,准备做一个时钟出来但是程序的进展并不顺利,下面是程序请大家看看问题出在哪里,谢谢了

这个电路图很简单我对程序是这样理解的,先宏定义ds1302的寄存器然后写一个简单的一毫秒的延时函数,然后是液晶的写命囹和写数据的函数


然后是写1302一个字节的函数和读1302一个字节的函数,依据如下图

虽然写的有点罗嗦但是不至于出错吧


然后就是液晶的刷噺函数,我主要怀疑reg-r这个函数有问题但是具体什么问题还不知道,读取到ds1302的地址时候显示的就是乱码其他地址读取回液晶的数据都是0,我也不知道是怎么回事可能是数据没有写进去还是怎么?
还有下面这句话是什么意思我也不是很明白,

这个有用么我貌似没用到這个东西,控制字怎么只有5位数表示地址也不够啊。。


还有1302的寄存器他说是用BCD码表示,BCD码和16进制不同么有什么不同呢?

问题比较多,希望大家能给解答一下感激不进啊!


PS:小弟刚开始学,如果我问的问题很2的话跪求大家别喷。
1602LCD液晶里显示实时时间: 首先在DS1302實时时钟芯片里写入一个时间 然后在这个芯片里读取这个时间,并显示在液晶里现在终于实现了...

其实,写这个程序也是比较简单的, 比在24C02 芯片里读写容易了因为在24C02读写里,是使用I2C总线传输数据的关键要把握好时序读写,至今仍然未解决这个24C02芯片的读写也不知道昰,芯片出问题还是自己程序的时序出问题。


我要回帖

更多关于 ds1302时钟芯片 的文章

 

随机推荐