联系方式
地 址:深圳市龙岗区南湾街道平吉大道1号建昇大厦B栋1605号(李朗软件园对面)
联系人:周工
电 话:0755-88820678
传 真:
信 箱:498187676@qq.com


欢迎新老朋友来电洽谈业务!

PCB抄板 >> PCB抄板 >> 当前位置
有关实时钟读取的偏方(转贴)
 目前多用IIC等串行输出的实时钟而大多MCU无硬件IIC,只能通过IO模拟,如果每秒读一次占用MCU也不算少,即使带硬件IIC(C8051F02X等)采用中断处理因对IIC状态标志的判断散转也要若干时间。在大部分情况下,可以有个省事的处理方式:只在复位后读一次完整时间数据,此后时间更新通过MCU定时器(必须设置为自动重装方式以获得与晶体稳定度一致的精确度),如果对读一次的数据不放心,可以通过判断包含FF等非法数据来重读(按我体会,数据错读的都是FF,而重读基本无必要,因为大多是RTC内部数据已被冲坏了),也可用多次读方式(个人觉得象画蛇添足,我从未这样处理)。当使用MCU的定时器来处理时间,花费比IIC要省的多,如果仪器每天都开关,第二天开机获得的时间是由RTC自己维持运行的数据。如果你要连续工作一个月以上,可能程序上要处理大小月等问题,或是每当MCU计到23时01分重读一次RTC(最好避免在整24时,因可能涉及日、月、年的更新)。附带说:MCU定时器自动重装方式精度与晶体稳定度一致,无累积误差。也可采取每分钟或每小时读一次方式,期间计时仍然由MCU处理。
返回顶部