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. 為什么我ping不通我的docker容器呢???2. 關于docker下的nginx壓力測試3. javascript - vue vue-router 報$router重復定義4. java - 根據月份查詢多個表里的內容怎么實現好?5. javascript - webpack熱加載配置不生效6. 關于Java引用傳遞的一個困惑?7. debian - docker依賴的aufs-tools源碼哪里可以找到啊?8. windows2003下的apache響應時間特別長?9. angular.js - angular內容過長展開收起效果10. node.js - node exec 執行沒反應
