zoukankan      html  css  js  c++  java
  • imx6q GPIO功能的用法


    假如我们要使用扩展口的第11脚EIM_D18。
    先在arch/arm/plat-mxc/include/mach/iomux-mx6q.h中找有EIM_18。
    能够找到MX6Q_PAD_EIM_D18__xxx。由于要作为gpio。所以使用MX6Q_PAD_EIM_D18__GPIO_3_18这个配置。
    将它增加board-mx6q_sabresd.h中。
    static iomux_v3_cfg_t mx6q_sabresd_pads[] = {
    ....
    MX6Q_PAD_EIM_D18__GPIO_3_18
    ....
    }
    然后在board-mx6q_sabresd.c中加入
    #define SABRESD_GPIO_CTRL          IMX_GPIO_NR(3, 18)
    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_xxx", 0, 1,"xxx"),
    };
    又一次编译内核,烧写。仅仅写0或1到/
    echo 0/1 > sys/class/leds/gpio_xxx/brightness
    这个节点就能控制高低了

    假设无法控制。软件上一般脚的是配置问题。能够在mx6q_sabresd_pads找PAD_EIM_D18。看在MX6Q_PAD_EIM_D18__GPIO_3_18的后面有没有被其他脚给又一次初始化成了别的功能。
  • 相关阅读:
    LeetCode 169
    LeetCode 152
    LeetCode 238
    LeetCode 42
    LeetCode 11
    GDB基本调试
    小咪买东西(最大化平均值)
    codeforces 903D
    hdu 5883
    hdu 5874
  • 原文地址:https://www.cnblogs.com/brucemengbm/p/7146869.html
Copyright © 2011-2022 走看看