难题,写程序实现,51单片机检测脉冲信号停止了?

2020-02-03 10:13发布

各位,51单片机如何检查输入的脉冲信号停止了。51单片机只要超过2秒钟接受不到脉冲,就算停止,触发一个led灯亮。
脉冲信号可能停在高电平,也可能停在低电平。

我的思路是,用 int1 外中断检测正脉冲以及负脉冲的宽度,当此宽度超过2秒钟就触发一个led灯亮。
程序怎么写呢。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
sunoracle
1楼-- · 2020-02-04 10:43
高手看看 有何不妥
gaoyichuan000
2楼-- · 2020-02-04 15:40
yurinacn 发表于 2012-10-6 17:40
还以为楼主没思路呢
还可以每1s检测一次电平,如果连续两次检测的结果相同,则点亮LED ...

1S可不行 间隔最少要小于最小脉冲周期 要不在两次检测中间有一个脉冲怎么办?
gaoyichuan000
3楼-- · 2020-02-04 20:53
sunoracle 发表于 2012-10-6 17:57
高手看看 有何不妥

仿真一下试试吧
yurinacn
4楼-- · 2020-02-04 23:57
 精彩回答 2  元偷偷看……
maimaige
5楼-- · 2020-02-05 04:56
你那个脉冲的周期是多少啊,可以当来一个上跳沿或者下跳沿的时候,启动一个定时器,然后来下一个同样的跳沿的时候reset 启动定时器,
gaoyichuan000
6楼-- · 2020-02-05 07:52
yurinacn 发表于 2012-10-6 19:04
哦,对,考虑错了,那么这个办法不论延时多长时间都是不可行的

延时小一点可以了
但是这样 MCU就不用作别的事情了
用中断的办法应该可行

一周热门 更多>