gpio簡單使用

2021-08-19 18:29:47 字數 1432 閱讀 6651

struct gpio_chip代表乙個gpio控制器。用乙個全域性陣列儲存所有的gpio控制器。

90 struct gpio_chip
//表示乙個gpio口,含對應的gpio_chip.

//對於每乙個gpio,都有乙個gpio描述符,這個描述符包含了這個gpio所屬的控制器即chip和一些標誌,label等。

86 struct gpio_desc ;
由gpio號獲得gpio_desc

68 struct gpio_desc *gpio_to_desc(unsigned gpio)

69 80 >---}

81 82 >---spin_unlock_irqrestore(&gpio_lock, flags);

83 84 >---if (!gpio_is_valid(gpio))

85 >--->---warn(1, "invalid gpio %d\n", gpio);

86 87 >---return null;

88 }

int of_get_named_gpio(struct device_node *np, const char *propname, int index)

of_get_named_gpio() - get a gpio number to use with gpio api

@np:>>---device node to get gpio from

@propname:>--name of property containing gpio specifier(s)

@index:>-index of the gpio

bool gpio_is_valid(int number)//檢查gpio號

int devm_gpio_request(struct device *dev, unsigned gpio, const char *label)

devm_gpio_request - request a gpio for a managed device

@dev: device to request the gpio for

@gpio: gpio to allocate

@label: the name of the requested gpio

//gpio配置為輸出,並初始化為value

int gpio_direction_output(unsigned gpio, int value)

void gpio_set_value(unsigned gpio, int value)//gpio配置為輸出時可用

int gpio_direction_input(unsigned gpio)//gpio配置為輸入

int gpio_get_value(unsigned gpio)

STM32 GPIO簡單介紹

2018 3 28 stm32 1.簡單配置暫存器環境 2.ministm32f103rc 51個io口 1.擁有著4組io口 gpioa0 a15 gpiob0 b15 gpioc0 c15 gpiod0 d2 2.gpio的工作方式 四種輸入模式,四種輸出模式 輸入方式 1.輸入浮空模式 由引腳...

MTK中GPIO的使用

一 gpio有關的函式 1 gpio modesetup 函式原型 void gpio modesetup kal uint16 pin,kal uint16 conf dada 功能 設定gpio的工作模式是作為gpio,還是作為專有功能介面。引數 pin gpio 的pin腳號,對應於原理圖上m...

linux之GPIO的使用

smdkc110的 gpio 引腳相對來說比較多,而且大部分引腳都具有多重複用功能,如何在 linux 上用最簡單的方式來控制 gpio 這需要我們好好研究一下底層的 了,其實方法有很多種,鑑於在作業系統端控制 gpio 並不像控制傳統的微控制器那樣。這裡我將提及一種方法來講述,這種方法也是我至今看...