52单片机外部中断遇到难题了

2019-03-24 17:41发布

2.png
就此图,按下右侧开关,外部中断0响应,松开开关外部中断1响应,不按的话则不中断,执行主程序,开关与单片机之间不一定是直接连接的;本意是做一个检测记录其他设备的开关机时间。有没有谁有好的解决方案。
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
maychang
1楼-- · 2019-03-24 22:49
“检测记录其他设备的开关机时间”
要求准确到数us级别么?还要占用两个外部中断?
如果要求准确到10ms级别,占用一条口线,在定时中断里面像扫描小键盘那样检查该口线电平即可。
ning_dan
2楼-- · 2019-03-25 00:43
 精彩回答 2  元偷偷看……
maychang
3楼-- · 2019-03-25 05:38
ning_dan 发表于 2016-4-17 22:26
开机记录一次时间,关机记录一次时间,一次开机到关机最短也得2分钟,最长10个小时吧,就是设备本身的工 ...

“若按你说的,开机时间长的话,端口一直高电平,定时器中断一次记录一次,中断一次记录一次没法搞啊,”
太容易了。假定定时中断每10ms一次,每次定时中断读一次口线。在单片机可位寻址区域设立一个标志,纪录上次读口线结果。读口线后与该标志比较,相同不处理,读口线结果丢弃。不同则转入纪录开关机时间的例程。
若考虑继电器触点抖动,两次读口线改成三次或者四次,三次或者四次皆相同才认为口线状态稳定。
这和读小键盘并且去抖动的方法完全相同。
你那个“定时器中断一次记录一次”的方法,未免有些笨拙。
Li_Lei
4楼-- · 2019-03-25 10:48
都没弄明白你想干嘛,“不连接”??怎么设计啊
不知道你什么设备,如果是电脑的话可以从开关电源那里入手,有条线低电平时候电源开始工作。。。
wzqvip
5楼-- · 2019-03-25 13:39
 精彩回答 2  元偷偷看……
lxa000
6楼-- · 2019-03-25 18:16
做无线的话
可以考虑蓝牙或wifi~~~~~~~~~~~~

一周热门 更多>