python - RPi.GPIO中wait_for_edge和event_detected有什么区别?
问题描述
比如说我要监听一个下降沿触发的中断请求,并且执行一段函数,究竟该怎么写代码,网上各种文档都是互相抄袭国外的机翻文档,完全无法正常阅读,请各位高手帮忙解答一下,谢谢!!!
问题解答
回答1:The wait_for_edge() function is designed to block execution of your program until an edge is detected.
翻译过来就是wait_for_edge会阻塞程序,直到有一个边沿事件被触发
The event_detected() function is designed to be used in a loop with other things, but unlike polling it is not going to miss the change in state of an input while the CPU is busy working on other things.
event_detected就是事件触发
具体到你这里,要中断请求,那只能是用事件方式触发了。
那第一步是让接口电阻上拉
GPIO.setup(channel, GPIO.IN, pull_up_down=GPIO.PUD_UP)
然后
GPIO.add_event_detect(channel, GPIO.FALLING)GPIO.add_event_callback(channel, callback_func)
相关文章:
1. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!2. docker-machine添加一个已有的docker主机问题3. 关于docker下的nginx压力测试4. docker - 如何修改运行中容器的配置5. docker安装后出现Cannot connect to the Docker daemon.6. nignx - docker内nginx 80端口被占用7. Docker for Mac 创建的dnsmasq容器连不上/不工作的问题8. javascript - 微信小程序 wx.downloadFile下载文件大小有限制吗9. css3动画效果疑问10. HTML5中怎么判断用户是否正在浏览页面?
