一个布尔量为真的持续时间问题
有一个布尔量,我想知道它保持“真”的时间是不是大于一个给定值,该线程又不能影响其他的线程,请教这样的功能应该怎样实现? 如图,看是否是你要的
这个程序存在一个问题
如果该布尔量变真以后,在30秒内也没有变成假,岂不是要一直循环,当给定的比较值不是30秒,而是更多比如300秒,那么程序岂不是在这300秒内都要执行这个循环里,不可能再去执行其他的进程了,而在C语言当中,这却不是问题。谢谢,能否再不吝指教 我也想知道怎么测量一个布尔量为真的持续时间如何实现。 近1年的贴子啦,这个你可以将WHILE嵌套入事件结构,
另外也可以做成多个WHILE共同执行, windows 下的处理方法:最小系统时间精确到1ms,但实际情况往往精确不到,这是因为多种原因(百度百度感兴趣的)。为了满足你的要求,你可以采用count 的方法(lgh版主的介绍的方法);系统时间(time stamp).
上下位机结合的方法:单片机的定时器精确定时,基本可以达到us级别。
RTOS处理:可以精确到us。独立开个线程即可。
页:
[1]