第七章 驱动程序开发-LED驱动-7.11.100ASK_IMX6ULL 上机实验

本文档介绍了在iMX6ULL上进行LED驱动开发的过程,包括使用i.MX Pins Tool v6遇到的问题及解决,设备树中pin controller和client device的创建。同时详细解释了GPIO映射的概念,特别是如何在设备树中定义和引用GPIO,以及在驱动中使用gpiod_get()函数的方法。通过理解这些内容,最终实现了LED的开关控制。
摘要由CSDN通过智能技术生成

7.11.1.iMX Pins Tool v6安装

    先确定引脚并生成设备树节点,使用NXP i.MX Pins Tool v6之后加载配置文件时,跳出错误:

    这软件搞不定,郁闷!群里一个哥们说是网速的问题,连续试了几天都不行,周日早上起来又试了下,发现可以了!可能周日早上用网络的少,网速快些!这软件和STM32CubeMX挺像。

    上图中左侧为引脚选择区域,下方对应选择引脚的特性,中间区域为封装示意图,右侧为复用该引脚对应的.dts内容,将生成的代码复制到iomuxc_snvs节点中即可。

7.11.2.创建pin controller

    使用Pins Tool创建出pinctrl然后到设备树100ask_imx6ull-14x14.dts中进行添加。

7.11.3.创建client device

    .dts中应该已经添加了对应pinctrl_leds的节点,搜索一下找到下图内容,现在已经知道了这是板子上的指示灯,需要屏蔽掉先。添加status = “disabled”将该节点屏蔽掉,编译设备树,覆盖板子上原来的设备树文件,重启,发现led不再闪烁,说明已屏蔽掉了。

    参照屏蔽掉的led节点,重新创建一个节点:

 91     leds_my {
 93         compatible = "100ask,leddrv";  //来自leddrv.c的of_device_id ask100_leds[]
 94         pinctrl-names = "default"; //默认
 95         pinctrl-0 = <&pinctrl_leds>;
 96
 97        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值