关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于微控制器的倒计时算法与实现

基于微控制器的倒计时算法与实现

作者:时间:2011-02-15来源:网络收藏

  下面对图3的代码逐条分析。

  图3- 1 就是按时间规则进行时间借位。其实质是小时单位向天数单位借1天, 增加24小时; 分钟单位向小时单位借1小时, 增加60分钟; 秒单位向分钟单位借1分钟, 增加60秒。

  图3- 2是时间差相减。注意, 因为天数差被借走一天, 所以要减1。

  图3- 3 是根据计算结果进行进位补偿。因为经过借位, 相减的结果有可能超过时间单位的上限,此时就要按时间规则进位。

  请注意, 图3代码是以天数为最高时间单位的借位计算, 可以根据实际需要把最大的时间单位设为小时或分钟。

  在实际的时间差相减计算中, 为了避免负值的出现, 应先从天数开始对两个时间差的时间单位比较数值大小, 其结果按三种情况处理。

  ( 1)若当前时间点的时间单位超过目标时间点的时间单位, 表明结束。

  ( 2)若两个时间单位相同, 当时间单位为秒时,表明结束, 否则进入次一级时间单位的判断。

  ( 3)若当前时间点的时间单位小于目标时间点的时间单位, 则视此时间单位为最高时间单位, 进行借位相减计算。

  由此, 即可计算出两个时间点的精确时间差。



图3 时间差借位相减参考代码。

  4 结束语

  在上面的介绍中, 先讨论了的两种,再择优对其中一种进行了详细的阐述。该已在实际项目中获得应用, 其计时准确, 工作稳定。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭