打印
[ARM入门]

明远智睿IMX6ULL配置GPIO管脚和测试

[复制链接]
958|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Anxyuuu|  楼主 | 2019-6-26 10:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
IMX6ULL配置GPIO管脚和测试


简介
MY-IMX6-CB140P-6Y2D-256M-4G,如下图:(6Y2D是IMX6ULL,256M是内存,4G是EMMC)
对于的设备树文件为arch/arm/boot/dts/myimx6ek140p-6y-256m-emmc.dts
文件内容:
/dts-v1/;

#include “myimx6y-pinfunc.h”
#include “myimx6y.dtsi”

#include “myimx6ek140p-iomuxc.dtsi”
#include “myimx6ek140p-6y-snvs.dtsi”
#include “myimx6cb140-nand4emmc.dtsi” /* myimx6cb140-nand4nand.dtsi /
#include “myimx6a7-lcd4wvga.dtsi” / myimx6a7-lcd4wqvga.dtsi /
#include “myimx6a7-enet4enet.dtsi” / myimx6a7-enet4uart.dtsi */
#include “myimx6ek140p.dtsi”

/ {
model = “MYIMX6EK140P-6Y-256M-eMMC Evaluation Kit”;
compatible = “myzr,myimx6cb140”, “myzr,myimx6ek140p”, “fsl,imx6ull”;
};
介绍说明:
myimx6y-pinfunc.h        是        imx6ull 全部预定义管脚都在这里(可以在这边复制管脚)
myimx6y.dtsi        是        imx6ull 核心注册设备信息
myimx6ek140p-iomuxc.dtsi 是 imx6ull 定义管脚功能(管脚修改,需要改到这个文件)
myimx6ek140p-6y-snvs.dtsi 是 imx6ull 定义管脚功能(管脚修改,需要改到这个文件)
myimx6a7-lcd4wvga.dtsi         RGB屏相关管脚和分辨率参数
myimx6a7-enet4uart.dtsi 是 配置一个以太网,配置uart6,7,8
myimx6a7-enet4enet.dtsi 是 配置两个以太网
myimx6ek140p.dtsi        是        imx6ull 注册设备信息 (增加驱动,需要改到这个文件)


配置GPIO管脚
这里讲解P21的34和36管脚,如下图
vim arch/arm/boot/dts/myimx6ek140p.dtsi
增加
&iomuxc {
pinctrl-names = “default”;
pinctrl-0 = <&pinctrl_nand_gpio &pinctrl_gpio_gpio &pinctrl_snvs_4g_rst &pinctrl_snvs_gpio>;
};
里面&pinctrl_gpio_gpio表示GPIO注册时,会注册&pinctrl_gpio_gpio里面的管脚。

arch/arm/boot/dts/myimx6ek140p-iomuxc.dtsi
定义了两个管脚
pinctrl_gpio_gpio: gpio_gpio_grp {
fsl,pins = <
MX6UL_PAD_GPIO1_IO03__GPIO1_IO03 0x80000000 /* P21:36 /
MX6UL_PAD_GPIO1_IO04__GPIO1_IO04 0x80000000 / P21:35 */
>;
};
MX6UL_PAD_GPIO1_IO03__GPIO1_IO03分为两段,前面那段GPIO1_IO03是CPU管脚名,如下图
后面GPIO1_IO03代表功能,其实我们在myimx6y-pinfunc.h可以看到很多预定义的功能:
这里我们选择GPIO功能:MX6UL_PAD_GPIO1_IO03__GPIO1_IO03


测试
IMX6ULL代表每个BANK是32个管脚, io端口号= (((bank) - 1) * 32 + (nr))
GPIO1_IO03代表第1组gpio中的第3个gpio口,其中每组32个gpio口
io端口号为IMX_GPIO_NR(1,11)=32×(1-1)+3=3

root@myimx6ek140p:~# echo 3 > /sys/class/gpio/export
root@myimx6ek140p:~# echo out > /sys/class/gpio/gpio3/direction
root@myimx6ek140p:~# echo 1 > /sys/class/gpio/gpio3/value
root@myimx6ek140p:~# echo 0 > /sys/class/gpio/gpio3/value

使用特权

评论回复

相关帖子

沙发
airwill| | 2019-6-26 21:17 | 只看该作者
不知道怎么会是这样的引脚排列?  看样子着芯片功能也蛮强的

使用特权

评论回复
板凳
airwill| | 2019-6-26 21:17 | 只看该作者
不知道怎么会是这样的引脚排列?  看样子着芯片功能也蛮强的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

162

主题

188

帖子

0

粉丝