OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10477|回复: 13

rtc怎么实现更改时间

[复制链接]

2

主题

6

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2016-5-31
在线时间
5 小时
发表于 2016-6-10 05:38:47 | 显示全部楼层 |阅读模式
1金钱
怎么在正点原子rtc实时时钟源码上更改

最佳答案

查看完整内容[请看2#楼]

http://www.openedv.com/thread-13912-1-1.html
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165537
金钱
165537
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-6-10 05:38:48 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11549
金钱
11549
注册时间
2014-4-1
在线时间
1316 小时
发表于 2016-6-10 09:50:03 | 显示全部楼层

不知道源码是什么样。
反正道理就是把新的时间写入对应的寄存器。
写之前应当先关闭,写入后再启动走时。

回复

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2016-5-31
在线时间
5 小时
 楼主| 发表于 2016-6-10 11:11:52 | 显示全部楼层
xuande 发表于 2016-6-10 09:50
不知道源码是什么样。
反正道理就是把新的时间写入对应的寄存器。
写之前应当先关闭,写入后再启动走时 ...

我想通过按键0来实现选择是改变年月日时分秒的其中一个(就像电子表那样),然后按键1没按一下让该选择的位加1。我试着用中断来写了,但按下按键时间就定在了按下的那一刻的时间,不知道是什么原因,是因为按键中断和rtc.c中的秒中断冲突吗?
回复

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2016-5-31
在线时间
5 小时
 楼主| 发表于 2016-6-10 11:15:21 | 显示全部楼层
xuande 发表于 2016-6-10 09:50
不知道源码是什么样。
反正道理就是把新的时间写入对应的寄存器。
写之前应当先关闭,写入后再启动走时 ...

          while(1){
        delay_ms(10);   
        if(WK_UP==1)
        {        n=n+1;
    if(n>6)
      n=0;                       
    switch(n)
    {
                        case 1:
                          m=calendar.w_year;
                        break;
                case 2:
                          m=calendar.w_month;       
                        break;
                        case 3:
                          m=calendar.w_date;
                        break;
                        case 4:
                          m=calendar.hour;       
                        break;
                        case 5:
                          m=calendar.min;       
                        break;
                case 6:
                          m=calendar.sec;       
                        break;
                       
                }
        l=n;
                if(KEY0==0)        {
                        m=m+1;
                switch(l){
                        case 1:
                          RTC_Set(m,calendar.w_month,calendar.w_date,calendar.hour,calendar.min,calendar.sec);                  
                        break;
                        case 2:
                          RTC_Set(calendar.w_year,m,calendar.w_date,calendar.hour,calendar.min,calendar.sec);
                        break;
                        case 3:
                          RTC_Set(calendar.w_year,calendar.w_month,m,calendar.hour,calendar.min,calendar.sec);
                        break;
                        case 4:
                        RTC_Set(calendar.w_year,calendar.w_month,calendar.w_date,m,calendar.min,calendar.sec);                                                  
                                                                                                  
                       
                        break;
                        case 5:
                        RTC_Set(calendar.w_year,calendar.w_month,calendar.w_date,calendar.hour,m,calendar.sec);
                        break;
                        case 6:
                        RTC_Set(calendar.w_year,calendar.w_month,calendar.w_date,calendar.hour,calendar.min,m);       
                        break;               
                }       
                        这样可以吗
回复

使用道具 举报

3

主题

548

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1383
金钱
1383
注册时间
2015-2-3
在线时间
197 小时
发表于 2016-6-10 11:43:40 来自手机 | 显示全部楼层
设置完了之后需要启动rtc
回复

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2016-5-31
在线时间
5 小时
 楼主| 发表于 2016-6-10 12:14:15 | 显示全部楼层
yyx112358 发表于 2016-6-10 11:43
设置完了之后需要启动rtc

启动rtc?rtc-_init()吗?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165537
金钱
165537
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-6-11 20:00:57 | 显示全部楼层
最新版本的,我们的usmart例程就可以直接修改时间啊。   
回复

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2016-5-31
在线时间
5 小时
 楼主| 发表于 2016-6-11 23:45:01 | 显示全部楼层
正点原子 发表于 2016-6-11 20:00
最新版本的,我们的usmart例程就可以直接修改时间啊。

我想试着用按键改,但没成功
回复

使用道具 举报

3

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2016-8-22
在线时间
11 小时
发表于 2016-9-28 19:53:54 | 显示全部楼层
正点原子 发表于 2016-6-11 20:00
最新版本的,我们的usmart例程就可以直接修改时间啊。

哪里?
回复

使用道具 举报

1

主题

9

帖子

0

精华

高级会员

Rank: 4

积分
648
金钱
648
注册时间
2017-7-14
在线时间
82 小时
发表于 2017-8-8 10:04:31 | 显示全部楼层
下载好RTC例程,然后这样C:\Users\Administrator\Desktop\1111.png
1111.png
回复

使用道具 举报

18

主题

99

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
465
金钱
465
注册时间
2016-1-20
在线时间
89 小时
发表于 2017-8-8 10:19:56 | 显示全部楼层
RTC_ITConfig(RTC_IT_SEC,ENABLE);//使能RTC秒中断  
回复

使用道具 举报

11

主题

55

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2017-9-10
在线时间
80 小时
发表于 2017-11-8 10:19:49 | 显示全部楼层
mangguonaiti 发表于 2017-8-8 10:04
下载好RTC例程,然后这样

你选择错了,是在多条发送里面发送的。
回复

使用道具 举报

4

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2020-2-22
在线时间
37 小时
发表于 2020-9-2 21:46:08 | 显示全部楼层
AnthonyMH 发表于 2017-11-8 10:19
你选择错了,是在多条发送里面发送的。

真正应该怎么发?能附加图片吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-14 12:10

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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