4217|5

7172

帖子

195

TA的资源

五彩晶圆(高级)

楼主
 

《原子嵌入式Linux驱动开发详解与实战》第6章 pinctrl和gpio子系统学习结合例程 [复制链接]

Linux内核提供了pinctrl和gpio子系统用于GPIO驱动

 

Pinctrl子系统

Linux驱动讲究驱动分离与分层,linux内核针对pin的配置推出来pinctrl子系统,对于gpio配置推出来GPIO子系统

 

Pinctrl子系统的工作内容

1获取设备书中的pin信息

2根据获取的pin信息来设置pin的复用功能

3根据获取的Pin信息来设置啤n的电气特性:上下拉 速度

 

驱动文件在

 

 

 

 

 

如何添加pinctrl节点模板

1创建对应的节点

Pinctrl_test:testgrp{

//具体的pin信息

 

}

 

2添加fsl,pin属性

Pinctrl_test:testgrp{

         fsl,pins = <

                   //设备使用的pin配置信息

>

 

};

看下gpio_led的代码

 

 

 

GPIO子系统就是用于初始化GPIO并且提供相应的API函数

获取 GPIO 编号函数 of_get_named_gpio

GPIO 申请函数 gpio_request

GPIO 输出设置函数 gpio_direction_output

GPIO 输入设置函数 gpio_direction_input

获取 GPIO 引脚值函数 gpio_get_value

设置 GPIO 输出值 gpio_set_value

 

 

Led驱动程序解析

1获取设备节点gpio_led

gpioled.nd = of_find_node_by_path("/gpioled");

 

2获取设备树的gpio属性得到LED所使用的LED编号

 gpioled.led_gpio = of_get_named_gpio(gpioled.nd, "led-gpio", 0);

 

3设置电平

   gpio_direction_output(gpioled.led_gpio, 1);

 

然后注册设备字符驱动、创建删除设备

 

测试代码

 

最新回复

支持一下楼主,辛苦了,感谢楼主分享的嵌入式Linux驱动开发的技术内容,希望楼主再接再厉   详情 回复 发表于 2024-10-1 12:28
点赞 关注

回复
举报

731

帖子

4

TA的资源

纯净的硅(高级)

沙发
 

支持一下楼主,辛苦了,感谢楼主分享的嵌入式Linux驱动开发的技术内容,希望楼主再接再厉

 
 

回复

6060

帖子

6

TA的资源

版主

板凳
 

感谢楼主分享的嵌入式Linux驱动开发的技术内容  

 
个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 

回复

55

帖子

0

TA的资源

一粒金砂(中级)

4
 

不可多得的好东西,多谢楼主分享,接下来花点时间研究研究

 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

5
 

感谢楼主,分享的嵌入式技术内容,支持一下楼主。  

 
 
 

回复

419

帖子

0

TA的资源

禁止发言

6
 

支持一下楼主,辛苦了,感谢楼主分享的嵌入式Linux驱动开发的技术内容,希望楼主再接再厉

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
推荐帖子
四大品牌无线路由器产品推荐

来源:中关村在线 无线市场上最为人熟知的绝对是TP-Link、D-Link、网件、 Linksys四大品牌。如果您说买东西光看品牌是傻子,我 ...

芯片封装概述

芯片封装 一、DIP双列直插式封装  DIP(DualIn-line Package)是指采用双列直插形式封装的集成电路芯片,绝大多数中小规模 ...

IC设计工程师的高手进阶之路

随着中国IC设计产业渐入佳境,越来越多的工程师加入到这个新兴产业中。从一个初学者成长到主持大型设计的IC设计专家,这是每个IC ...

Helper2416-13——裸机第五弹——YL-boot——裸奔者的福音

YL-boot——裸奔者的福音 参与Helper2416开发板助学计划心得 闭关几天,终于初步完成了这YL-boot了。没有J-TAG不能单步调试还 ...

#8月改装#暴力改装普源DP832电源

本帖最后由 wangjiafu1985 于 2015-8-27 09:04 编辑 暴力改装普源DP832电源  免责声明:本贴发表之前经SOSO姐向普源提出授 ...

2020年1月份版主工作奖励

2020年1月获得版主奖励的名单如下: 用户名 发帖 回帖 加精 评分次数 删除主题/ ...

视频动画:直观的理解电磁波辐射

attach://480168.qlv480168 视频动画:直观的理解电磁波辐射 480168

Teensy 4.1 开发板

480436 Teensy 4.1,相比Teensy 4.0 有了不少改进。 引脚图 连接以太网 反面可以扩展存储器,左边是p ...

FPGA入门必备《Advanced FPGA Design》

国外FPGA设计经典教材《Advanced FPGA Design:Architecture, Implementation, and Optimization》,适合入门初学者学习。 ...

请教一个电源变压器后面电路问题

请教一个电源变压器后面电路问题 二极管和电阻前后调换一下位置,有什么影响? 862533

关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表