RTC设置完日期,再读取日期出错

2019-07-20 12:00发布

本帖最后由 老妖未成怪 于 2017-9-8 16:03 编辑

新手上路  上了UcosIII,调试用探索板RTC的时候,我用串口设置RTC的日期和时间,设置完时间和日期后 ,再读出来 想看看是不是和我设置的一样,发现 日期的年份出错,我写入17年   读出来的是11年。如图这是我串口接收的时间和日期数据file:///C:UsersCoderAppDataRoamingTencentUsers1376985375QQWinTempRichOleGMHMSW_5_1AYW0)YF(_77]C.png GMHMSW_5_1AYW0)YF(_77]C.png
这是我读取的时间日期 %OT%C}TS$AK]`])(WY_R9(N.png

发现设置的17年 读出来变成11年,单步运行的时候 发现是在读时间的时候 BCD转二进制出现问题 ,不仅是年份 只要是 设置的时间里 有 17,49...几个数字都会出现这种情况,实在不懂。
还请各位大牛不吝赐教。@原子哥


另外 在用探索者开发板之前 我还用了探索板的核心板试了你们的例程,两块核心板的RTC都有问题,读出来的时间日期都是00,设置时间的时候 一直超时报错。不知道是不是电路的问题。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
老妖未成怪
1楼-- · 2019-07-20 13:48
第一次发帖 有点乱  见谅
lzq12
2楼-- · 2019-07-20 14:43
 精彩回答 2  元偷偷看……
K.O.Carnivist
3楼-- · 2019-07-20 19:42
不仅是年份 只要是 设置的时间里 有 17,49...几个数字都会出现这种情况

意思是说同样的操作下,设置17、49有问题,但设置其他的比如16就没问题吗?
K.O.Carnivist
4楼-- · 2019-07-20 23:57
lzq12 发表于 2017-9-11 15:46
你试试写了日期之后,读2次日期,我就碰到要读2次日期,才能读到争取的数据,目前也不知道原因

你遇到的情况应该是写入之后没有等影子寄存器更新吧
就是库函数里面RTC_WaitForSynchro()做的事
lzq12
5楼-- · 2019-07-21 05:41
 精彩回答 2  元偷偷看……

一周热门 更多>