嵌入式爱好者

查看: 18967|回复: 1

[硬件咨询] imx6q的can接口如何作为通用IO使用

[复制链接]

21

主题

49

帖子

128

积分

i.MX6UL通行证i.MX6Q通行证

扫一扫,手机访问本帖
发表于 2017-6-19 15:55:15 | 显示全部楼层 |阅读模式
因为GPIO_8和GPIO_7在底板上复用为CAN_RX和CAN_TX,我不需要CAN接口。
如果想把GPIO_8和GPIO_7作为通用IO,是不是只要不把can驱动编译进内核,就可以将两个io口作为通用io使用了?还需要其他操作吗?
回复

使用道具 举报

0

主题

905

帖子

742

积分

i.MX6Q通行证i.MX6UL通行证TCU通行证AM335x通行证

发表于 2017-6-19 17:31:47 | 显示全部楼层
您好,下面是一个修改GPIO复用的方法,请参照这种方法运行:
修改imx6q EIM_DA13 为控制led灯的亮灭。

1.        在iomux-mx6q.h文件中找到MX6Q_PAD_EIM_DA13__GPIO_3_13 将其复制到board-mx6q_sabresd.h文件中的mx6q_sabresd_pad[]数组中,并注释掉数组中关于MX6Q_PAD_EIM_DA13__GPIO_3_13的其他定义。
2.         在board-mx6q_sabresd.c中 添加
#define SABRESD_GPIO_CTRL          IMX_GPIO_NR(3, 13)

static struct gpio_led imx6q_gpio_leds[] =
{
   GPIO_LED(SABRESD_CHARGE_NOW, "chg_now_led", 0, 1,"charger-charging"),
   GPIO_LED(SABRESD_GPIO_CTRL, "gpio_**", 0, 1,"**"),
};
3.         重新编译内核,烧写,只写0或1到/
echo 0/1 > sys/class/leds/gpio_**/brightness 这个节点就能控制高低了。
4. 如果无法控制,软件上一般脚的是配置问题,可以在mx6q_sabresd_pads找PAD_EIM_D3,看在MX6Q_PAD_EIM_D13__GPIO_3_13的后面有没有被其它脚给重新初始化成了别的功能。
技术支持电话:0312-3119192
技术支持邮箱:wince@forlinx.com
点评回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-6-2 18:18

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表