linux kernel操作GPIO函數
一、頭文件
#include <asm/gpio.h>
二、註冊 GPIO
int gpio_request(unsigned gpio, const char *label)
功能:申請一個GPIO
參數:gpio:管腳號;label:管腳名,可以為空(NULL)
返回值:成功返回0,失敗返回錯誤碼
三、設置GPIO方向
1、設置輸出
int gpio_direction_output(unsigned gpio, int value)
功能:設置GPIO為輸出
參數:gpio:管腳號;value:初始值,0或1
返回值:成功返回0,失敗返回錯誤碼
2、設置輸入
int gpio_direction_input(unsigned gpio)
功能:設置GPIO為輸入
參數:gpio:管腳號
返回值:成功返回0,失敗返回錯誤碼
四、設置GPIO輸出值
void gpio_set_value(unsigned gpio, int value)
功能:設置GPIO控制值
參數:gpio:管腳號;value:控制值,0或1
五、獲取GPIO輸入值
int gpio_get_value(unsigned gpio)
功能:獲取GPIO輸入值
參數:gpio:管腳號
返回值:0或1
六、釋放GPIO
void gpio_free(unsigned gpio)
功能:釋放註冊的GPIO
參數:gpio:管腳號