linux核心裡的GPIO操作函式

2021-07-23 15:49:24 字數 617 閱讀 7532

1.gpio_set_value(unsigned gpio, int value)用來設定gpio暫存器的值

2.gpio_direction_output(unsigned gpio, int value)用來設定gpio為輸出功能,同時設定gpio輸出的值。

一般來說,設定乙個gpio口為輸出,先執行一次gpio_direction_output,然後接下來只需執行gpio_set_value就行了。

3.gpio_direction_input(unsigned gpio)用來設定gpio為輸入功能

4.gpio_get_value(unsigned gpio)用來獲取gpio口的輸入的值;

5.在使用gpio口之前,先用gpio_request(unsigned gpio, const char* label)申請gpio口的使用,若申請成功,則說明該gpio口未被使用。

6.在使用完gpio口之後,用gpio_free(unsigned gpio)釋放gpio口。

7.如何獲取gpio口呢,可以檢視核心中對應版型的相關檔案,也可以自己進行計算,比如gpioa1的gpio為1,gpiob2為34。

8.gpio口的通用函式介面定義在gpiolib.c檔案中,宣告則在gpio.h中。

Linux核心 GPIO操作部分API

核心中關於gpio的操作api主要集中在和中,前者主要是gpio直接與裝置樹相關的操作,在linux 裝置樹操作api中已經記錄過,後者主要是針對gpio本身的操作,常用的有下面幾個。linux gpio.h gpio request one request a single gpio with i...

核心GPIO操作庫函式

gpio request int gpio,char name 函式作用 明確 硬體gpio對於核心來說像記憶體一樣,都是一種寶貴的資源,所以如果軟體要訪問,首先應該向核心去申請硬體gpio資源 明確 每乙個硬體gpio由廠家定義好了乙個名稱,例如gpc0 3,但是在核心中,核心會重新給這個硬體gp...

Linux核心驅動GPIO的使用

linux核心中gpio 是最簡單 最常用的資源 和 interrupt dma,timer一樣 驅動程式,應用程式都能夠通過相應的介面使用gpio,gpio使用0 max int之間的整數標識,不能使用負數,gpio與 硬體體系密切相關的 不過linux 有乙個框架 處理gpio 能夠使用統一的介...