文章 2023-12-04 来自:开发者社区

嵌入式Linux中的 gpio、gpiod基本分析

GPIO 应该是每个嵌入式设备都避免不了的。最近在做项目的时候,也遇到这方面的问题,所以简单总结一下。现在内核里面多了 gpiod 的来控制 gpio 口,相对于原来的形式,使用 gpiod 的好处是我们申请后不进行 free 也没有什么问题。但是你要是使用原来的方式后,一定要记得释放。不释放的话可能会有问题。#旧的 GPIO 使用实例DTS 文件det-gpios = <&gpi....

嵌入式Linux中的 gpio、gpiod基本分析
文章 2023-12-04 来自:开发者社区

嵌入式Linux中pinctrl 子系统和 gpio 子系统分析

本文讲解 pinctrl 子系统和 gpio 子系统的 API,以及使用示例。传统的配置 pin 的方式就是直接操作相应的寄存器,但是这种配置方式比较繁琐、而且容易出问题(比如 pin 功能冲突)。pinctrl 子系统就是为了解决这个问题而引入的,pinctrl 子系统主要工作内容如下:①、获取设备树中 pin 信息。②、根据获取到的 pin 信息来设置 pin 的复用功能③、根据获取到的 p....

嵌入式Linux中pinctrl 子系统和 gpio 子系统分析
文章 2022-12-13 来自:开发者社区

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十六)GPIO和Pinctrl子系统的使用(下)

1.2.4 sysfs中的访问方法在sysfs中访问GPIO,实际上用的就是引脚号,老的方法。a. 先确定某个GPIO Controller的基准引脚号(base number),再计算出某个引脚的号码。方法如下:① 先在开发板的/sys/class/gpio目录下,找到各个gpiochipXXX目录:② 然后进入某个gpiochip目录,查看文件label的内容③ 根据label的内容对比设备....

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十六)GPIO和Pinctrl子系统的使用(下)
文章 2022-12-13 来自:开发者社区

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十六)GPIO和Pinctrl子系统的使用(上)

1.GPIO和Pinctrl子系统的使用参考文档:a. 内核 Documentation\devicetree\bindings\Pinctrl\ 目录下:Pinctrl-bindings.txtb. 内核 Documentation\gpio 目录下: Pinctrl-bindings.txtc. 内核 Documentation\devicetree\bindings\gpio 目录下: g....

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十六)GPIO和Pinctrl子系统的使用(上)
文章 2022-12-13 来自:开发者社区

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(二十四)具体单板的GPIO操作方法

这部分的工作比较复杂,其实写gpio,就是要学会看芯片手册。打印芯片手册,然后研读是学习的必要。最好英文版。1.具体单板的GPIO操作方法1.1 IMX6ULL的GPIO操作方法CCM: Clock Controller Module (时钟控制模块)IOMUXC : IOMUX Controller,IO复用控制器GPIO: General-purpose input/output,通用的输入....

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(二十四)具体单板的GPIO操作方法
文章 2022-12-13 来自:开发者社区

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(二十三)普适的GPIO引脚操作方法

1.普适的GPIO引脚操作方法GPIO: General-purpose input/output,通用的输入输出口1.1 GPIO模块一般结构a. 有多组GPIO,每组有多个GPIOb. 使能:电源/时钟 c. 模式(Mode):引脚可用于GPIO或其他功能d. 方向:引脚Mode设置为GPIO时,可以继续设置它是输出引脚,还是输入引脚e. 数值:对于输出引脚,可以设置寄存器让它输出高、低电平....

嵌入式linux/鸿蒙开发板(IMX6ULL)开发(二十三)普适的GPIO引脚操作方法

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

Linux宝库