中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用sys方式控制GPIO

發布時間:2022-01-12 15:27:40 來源:億速云 閱讀:197 作者:iii 欄目:互聯網科技

本篇內容介紹了“如何用sys方式控制GPIO”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

本文檔主要講解,iMX6 開發板,通過 sys 文件的方式來控制 GPIO。
要通過 sys 控制 GPIO,需要做以下幾步操作:
1 開啟內核中的“GPIO_SYSFS”驅動配置;
2 確保 IO 被配置為 GPIO,并且沒有驅動調用;
3 計算 GPIO 編號,通過命令或者腳本操作 GPIO。
1 GPIO_SYSFS 配置
如下圖所示,可以看到內核中 GPIO_SYSFS 是默認配置的,這個驅動所有原廠 BSP 基本都會包含,一般情況下是默認配置的。
如何用sys方式控制GPIO
2 確保 IO 被配置為 GPIO,并且沒有驅動調用
這里以 LED 的 GPIO 為例, 將 LED 的驅動去掉,確保沒有驅動調用。
Device Drivers --->
Character devices --->
Enable LEDS config ---去掉,并重新編譯內核燒寫到開發板中。
如下圖所示配置 menuconfig。
如何用sys方式控制GPIO
燒寫到開發板中,確保沒有 led 的設備節點,默認的內核中是有 led 設備節點的,如下圖所示。
如何用sys方式控制GPIO
GPIO 的配置這里就不再重復介紹,在“iTOP-iMX6-設備樹內核-IO 配置分析文檔_V1.0”中有介紹。
3 計算 GPIO 編號并測試
LED 的網絡標號為:KEY_ROW6
LED 對應 GPIO 的 PIN 腳名稱為:GPIO_2
GPIO_2 對應的宏定義為:#define MX6QDL_PAD_GPIO_2__GPIO1_IO02
那么 GPIO_2 對應的 GPIO 的 bank[n]為 GPIO1_IO02,也就是 bank 1 的 02 號 GPIO。
GPIO 的編號計算方法為:nr=(P -1)* 32 + N;
nr 為編號,P 為 bank 號,N 為具體 bank 中的編號。
那么 P=1,N=2,通過計算得出 nr=2。
測試命令為:
echo nr > /sys/class/gpio/export
echo out > /sys/class/gpio/gpionr/direction
echo 1 > /sys/class/gpio/gpionr/value ---> 寫高電平,小燈亮
echo 0 > /sys/class/gpio/gpionr/value ---> 寫低電平,小燈滅
以上 nr 替換成 GPIO 的編號,則命令為:
echo 2 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio2/direction
echo 1 > /sys/class/gpio/gpio2/value --->寫高電平,小燈亮
echo 0 > /sys/class/gpio/gpio2/value ---> 寫低電平,小燈滅
如下圖所示,執行三條命令之后小燈亮。
如何用sys方式控制GPIO
接著執行 echo 0 > /sys/class/gpio/gpio2/value 小燈滅。

“如何用sys方式控制GPIO”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

杭州市| 景谷| 永昌县| 永胜县| 莎车县| 曲麻莱县| 浮山县| 玉环县| 丹寨县| 郴州市| 株洲市| 师宗县| 万宁市| 安丘市| 苏州市| 芜湖市| 德保县| 新晃| 聊城市| 布尔津县| 咸丰县| 徐闻县| 南川市| 云南省| 开阳县| 临潭县| 南昌市| 密山市| 九江县| 慈溪市| 江源县| 江阴市| 来安县| 五河县| 金秀| 县级市| 枝江市| 瑞金市| 伽师县| 吴江市| 荆门市|