我目前正在嘗試只用shell腳本來輪詢gpio值。gpio值更改時通知
我基本上developped與測試文件中的腳本使用/ SYS /班/ GPIO/gpioxx /值
之前,這是我找到了解決方法:這是工作有一個基本的文件
#!/bin/bash
SCRIPT_DIR=$(dirname $(readlink -f $0))
FILE_NAME=$SCRIPT_DIR"/fileTest"
while true
do
inotifywait -qq -e modify $FILE_NAME
read val < $FILE_NAME
echo $val
### do something here ###
done
但是這個解決方案有兩個問題。
1 - 保存文件時會觸發「修改」事件,而不是文件內容發生變化時觸發。因此,如果我在文件中寫入相同的值,則會觸發事件,但不應該。
2 - 我重新說過,這個解決方案不適用於gpios,如果我使用的是簡單的ascii文件,但是當我在/ sys/class/gpio/gpioxx/value中使用inotifywait時,它依賴於它。
如果我使用echo值>/sys/class/gpio/gpioxx/value檢測到事件,但是如果將該引腳配置爲輸入並將其連接到3v3或0V,則不會觸發任何事件。
有人知道我如何才能使用腳本觸發此更改嗎?
Downvoters,請提供反饋或推理。 –