Microchip
直播中

李桂花

8年用户 177经验值
私信 关注
[问答]

PIC32MX470F512L写入RTCC10位失败怎么回事

我在PIC32MX470F512L上编写了一个库来与RTCC接口。如果我只编写一个32位的值,我就只能可靠地写入RTCtiME寄存器。我无法通过其联合成员(RTCTIMEbits.HR10、RTCTIMEbits.HR01、RTCTIMEbits.MIN10等)可靠地写入RTCTIME寄存器。“1s数字”总是被成功写入。“10s数字”成员的阅读总是成功的。此问题不会发生在RTCDATE值的“10S数字”成员中。RTCC在所有写入期间都被成功禁用。在写入RTCC寄存器之前,执行“写入解锁序列”并成功。我已经用MPLABX v3.40和XC32 v1.34和v1.42对此进行了测试。S.SEC10=5;//此写入似乎是故障RTCIMTITBES.SEC01=6;

回帖(2)

李子跃

2020-4-28 08:35:10
可能是一个读修改写问题。您可以使用下面的方法使用一个联合来构建一个值
举报

王莹

2020-4-28 08:50:27
谢谢你的建议。我可能会用它来改进代码风格(而不是按字面值进行位移位)。部分是出于好奇心,但也因为我想确定我的工作方式是稳健的。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分