• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

ds1302初始化问题

电子WWW 2019-03-05 浏览量:1370
用ds1302写时钟的过程中,发现每一次上电后,时间都被赋了初值,每次上电ds1302都被被初始化,通过百度知道需要判断秒的第8位是否为1,来使得ds1302只初始化一次,从而实现掉电保持的功能,但是不成功,我不知道是不是代码的问题,还有没有其他的方法可以解决?
QQ截图20190305191346.png
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 读秒寄存器操作没错,是0x81指令;但是看操作手册应该是读出来&0x80==0x80才进行初始化,因为秒寄存器的最高位置1是时钟停振,置0是时钟工作。

    所以逻辑错了。

    • 发布于 2019-03-05
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:4
电子WWW 回复了 yhj416606438 :我改成0x80后时钟直接不走了 回复
电子WWW 回复了 yhj416606438 :我改成0x80后时钟直接不走了 回复

  • 圈出来的地方应该是-==0x80,最高为代表的是RTC是否工作
    • 发布于2019-03-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 先看看你的写入函数中的配置是怎么样的,写入的数据要是正确的才可以工作的
    • 发布于2019-03-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 时钟改成0X80以后,你再看看周边参数是怎么设置的,看看是不是数据设置错了
    • 发布于2019-03-26
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

ds1302初始化问题