找回密码
 注册
关于网站域名变更的通知
查看: 282|回复: 3
打印 上一主题 下一主题

调整DS1302的时间

[复制链接]
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2023-1-30 15:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    为什么我调整DS1302的时间不立即更新,要断电重启才显示更新的值。- p4 q' O+ X% Y: L  A" e

    4 Z% g8 S' {. c5 ?
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2023-1-30 16:53 | 只看该作者
    这和你的程序有关。

    该用户从未签到

    3#
    发表于 2023-1-30 16:58 | 只看该作者
    以下是我的写入和更新代码,能写入就没问题,如果没写入,检查看是否释放了写保护,我这代码是十进制直接转16进制后写入分钟增1和秒钟清零的。
    8 ]# [: I9 t; g! p& U

    ) G! f" M; B# v$ `( V8 u0 {

    该用户从未签到

    4#
    发表于 2023-1-30 17:03 | 只看该作者
    这是我的代码,你参考 一下:
    ' ]$ f) a& A' R5 \2 A( `   if(!key1)           //时加量键
    2 f  S  U0 y4 D4 n0 o$ m        {/ i% V8 G0 p! z
              Delay20ms();) _; ~2 C& [4 P/ ]  P% g2 X
              if(!key1)6 S' [; J# x) V; X' c" Y, s
              {
    / B% H& ~2 e$ t$ H           while(!key1);
    6 q2 w3 a" G0 Y9 J- @" o: y           beep_on(200);
    + S* e5 `( I! D  x4 ?; p           hour=RTC_read_ram(0x85); //读小时值5 c2 C1 p. K( G7 f( L
               hour=hour/16*10+hour%16;        //BCD转10进制' ~2 i* O0 d- o) g, O. S
               if(++hour>23)hour=0;           //增量溢出则置0! ?6 f) Y9 O0 F2 K8 J
               t_bcd=hour/10<<4|hour%10        ;  //10进制转BCD
    . |1 `% t+ |/ {; C6 u           RTC_write_data(0x8e,0x00);  //1302写使能
    & F2 @& j7 G0 ]- l           RTC_write_data(0x84,t_bcd); //写入新小时值
    % j7 A) f8 V; ]           RTC_write_data(0x8e,0x80);  //1302写失能0 }) \7 N3 d0 s: ], j
               key_time_out=5;) {" |1 Z1 b5 e7 P2 q- j
              }
    % Z' {6 v5 L0 J+ ?% Y        }
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-21 11:04 , Processed in 0.125000 second(s), 27 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表