打印

请教怎样实现这个功能?

[复制链接]
1795|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Waldner|  楼主 | 2007-1-22 09:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
SH6613芯片,32.768 KHz晶震, 做一个秒表,怎么样分频才好呢?我要精确到秒的后两位,还要考虑LCD的延迟问题?
频率本来很低,程序还有其他的乘除运算和很多中断处理,我觉得很难做得流畅。。。
沙发
tft_eric| | 2007-1-23 09:56 | 只看该作者

程序运行时切到高频

如果要求准的话,用7.8125ms中断,不要求很准的话,用31.25ms中断。

使用特权

评论回复
板凳
第五生産隊| | 2007-1-23 10:18 | 只看该作者

可以考慮

  首先是要考慮您說的準確到小數點後面的二位數,也就是10ms,這個最後一位要求是準確的呢還是一個估計值?就好像我們在測量的是時候最後一位都是估計值一樣。

  建議您採用二個定時器來處理。一個定時器記錄長時間的,在中斷中處理多一點事,而再用一個定時器(Timer0)來記錄短時間的。(記錄的内容在Timer0的計數器中。)在timer0的中斷服務程序中可以什麽都不做,最多也只要對一個變量加一即可。
  可以試試效果如何。

使用特权

评论回复
地板
Waldner|  楼主 | 2007-1-23 15:34 | 只看该作者

哦,

如果采用高低频切换,不知道切换时会不会影响到时间的准确性,按照手册上的说明,应该可以做到不影响时间。
3楼的方法,意思是说用timer0做记录秒表的时间,然后在另一定时器中断服务程序中(而不在主程序中)做秒表的进位和显示处理吗?
我想,我的问题是有太多的事件和运算处理,而且在低频下非常耗时间,这个秒表的功能是上级后来要求加上的,又不能不做。我需要换芯片吗??

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

4

帖子

0

粉丝