大佬教程收集整理的这篇文章主要介绍了如何处理嵌入式C中的包装计数器,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个函数返回(时间戳移位时间),我有另一个函数将返回1或0,这取决于时间是否已经过去,但是我的计数器可能会包装如何处理这个?
谢谢
非常感谢所有的回应者们.我将在这个编辑中给出更多的细节.
我正在使用STM32 Cortex-M3.我想使用RTC计数器将其用作我的应用程序的刻度来计划需要在特定间隔发生的任务. RTC可以产生溢出中断,因此检测中断不是问题.我有(或至少我认为是一个问题)的主要问题是某些任务获得(时间戳移位)即是.
int main( void ) { FlashLedtimestamp = ReturnCounter( 20 ); // currentcounter value + a shift of 20 StatusLedtimestamp = ReturnCounter( 3 ); // currentcounter value + a shift of 3 //then later on .... while(1) { /* other tasks Could go here */ if( HasTimeElapsed( FlashLedtimestamp ); { /* do something and get another timestamp value */ FlashLedtimestamp = ReturnCounter( 20 ); // currentcounter value + a shift of 20 } if( HasTimeElapsed( StatusLedtimestamp ); { /* do something and get another timestamp value */ FlashLedtimestamp = StatusLedtimestamp( 3 ); // currentcounter value + a shift of 3 } } }
假设我的RTC计数器只有8位长,使数学变得容易.
如果我的当前计数器是250,当我收到我的时间戳,这意味着FlashLedtimestamp = 14和StatusLedtimestamp = 253我将如何检查看到FlashLedtimestamp已过期?
请记住,我不一定要检查所有的时间,看看当前的计数器是什么,以及某些时间戳是否已经过期.我希望这清楚地说明了我所遇到的问题是感谢所有的进步.
以上是大佬教程为你收集整理的如何处理嵌入式C中的包装计数器全部内容,希望文章能够帮你解决如何处理嵌入式C中的包装计数器所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。