openwrt控制GPIO


可以通過在/sys/class/gpio下操作導出GPIO引腳,從而對GPIO進行操作。

export:導出控制的 GPIO 引腳編號。
unexport:取消控制的 GPIO 引腳編號。
gpiochip*/:保存系統中 GPIO 寄存器的信息,包括每個寄存器控制引腳的起始編號 base,寄存器名稱,引腳。  

例如我們要對GPIO10進行操作

可以通過命令echo 10 > export 導出GPIO10,此時gpio目錄下就多了一個GPIO10的目錄

 

 進入gpio10目錄后有一下幾個文件:

(1)active_low:這個按照官方的說法是這個翻轉電平,輸入非零的數即上升沿變為下降沿。
    可以通過echo 1 > active_low去修改里面的值,

(2)direction:定義gpio mode.
    如果想設置為輸入:echo in > direction
    如果想設置為輸出:echo out > direction
(3)edge:控制中斷觸發模式 無: echo none > edge 上升沿觸發:echo rising > edge 下降沿觸發:echo falling > edge 輪詢:echo both > edge
(4)value:通過修改value里面的值來修改gpio的電平高低   

可以通過echo 10 > unexpect去關閉GPIO10,此時gpio下的gpio10目錄就消失了。

 

可以通過腳本或者C語言去改變這幾個文件的內容從而對gpio進行控制。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM