我目前正在使用wiringpi 来控制我的Raspberry Pi 的mcp23017 扩展板的GPIO 端口。其中一个 GPIO 应用作输入并等待 INT_EDGE_FALLING 事件。Wiringpi 本身支持中断模式,但无论出于何种原因,仅支持 63 号引脚 - 我的是 70 号引脚。
所以我坚持这样的事情:
wiringpi.pinMode(70,0)
wiringpi.pullUpDnControl(70,2)
while wiringpi.digitalRead(70) == 1:
print "not pressed"
这个循环导致大约 6% 的 CPU 使用率 - 有什么办法可以减少这种情况吗?在 while 循环中使用的 cpu 强度最低的命令是哪个?