求助:怎么计算任意时刻往前1秒内,高电平持续了多长...

2019-12-10 18:14发布

本帖最后由 ma_xiang 于 2019-10-6 14:58 编辑

怎么实时计算当前时刻往前推1秒内,高电平持续了多长时间?可以不用很精确,10毫秒级就可以,各位兄台有没有巧妙的算法
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
26条回答
hackboymzw
2019-12-12 12:52
设计一个FIFO环形缓存A[100],一共100个成员,初始化为FF。
一个Timer定时器,10ms一次中断,中断里读取IO口状态,写入FIFO内,高写1,低写0
接下来事情就简单了,任何时刻你只要遍历一下这个数组,是0就继续往前读,读到1,就开始计数,直到又读到0,计数完毕,然后把计数X10ms,就是高电平时间。
按照你的要求,精度10ms

一周热门 更多>