之前买了个newifi mini的路由器,CPU是mt7620a的,有7个led指示灯。现在想要把控制led灯的gpio引出来,方便其他驱动或应用的开发。

一、硬件部分

1、联想路由

现在想要把USB、5G、LAN、INTERNET这四个指示灯引出,原本是打算把WAN指示灯也引出来的,但是WAN指示灯没有被当作普通的gpio使用,所以没办法引出(引出了也没法当作gpio使用)。

2、将路由器拆开,去掉这四个led灯,以及对应的电容(如果不去掉,会影响i2c通讯),并将四个led灯对应的测试点连接杜邦线引出,认真观察电路板可以看出。另外也多引出一条电源线,也就是led灯的正极。

二、软件部分

1、进入/target/linux/ramips/dts/Y1.dts,修改如下

  1. /dts-v1/;
  2.  
  3. /include/ "Y1.dtsi"
  4.  
  5. / {
  6. compatible = "lenovo,Y1", "ralink,mt7620a-soc";
  7. model = "Lenovo Y1";
  8.  
  9. ethernet@ {
  10. pinctrl-names = "default";
  11. pinctrl- = <&ephy_pins>;
  12. mtd-mac-address = <&factory 0x4>;
  13. ralink,port-map = "llllw";
  14. };
  15.  
  16. gpio-leds {
  17. compatible = "gpio-leds";
  18. power1 {
  19. label = "lenovo:blue:power";
  20. gpios = <&gpio0 >;
  21. };
  22. wlan1 {
  23. label = "lenovo:blue:wifi";
  24. gpios = <&gpio3 >;
  25. };
  26. };
  27. };

2、编译,重新烧写固件。

三、测试

1、四个led灯对应的gpio如下:

USB:gpio52

5G:gpio50

LAN:gpio55

INTERNET:gpio51

2、依次输入如下

  1. root@OpenWrt:/sys/class/gpio# echo > export
  2. root@OpenWrt:/sys/class/gpio# echo > export
  3. root@OpenWrt:/sys/class/gpio# echo > export
  4. root@OpenWrt:/sys/class/gpio# echo > export

3、将引出来的四个gpio外接led灯,依次输入如下,并观察哪盏led灯亮起:

  1. root@OpenWrt:/sys/class/gpio# echo out >gpio50/direction
  2. root@OpenWrt:/sys/class/gpio# echo out >gpio51/direction
  3. root@OpenWrt:/sys/class/gpio# echo out >gpio52/direction
  4. root@OpenWrt:/sys/class/gpio# echo out >gpio55/direction

就可以知道哪个引线对应哪个gpio。

newifi mini将led指示灯引出当gpio使用的更多相关文章

  1. led指示灯电路图大全(八款led指示灯电路设计原理图详解)

    led指示灯电路图大全(八款led指示灯电路设计原理图详解) led指示灯电路图(一) 图1所示电路中只有两个元件,R选用1/6--1/8W碳膜电阻或金属膜电阻,阻值在1--300K之间. Ne为氖泡 ...

  2. C#自定义控件开发(2)—LED指示灯

    下面来开发一个LED指示灯控件,如下: 设计属性包括: 外环宽度,外环间隙,内环间隙,颜色[五种],当前值. 由于该LED指示灯基本是完全独立设计的,并不是在某个控件的基础上进行的开发,因此,这里使 ...

  3. PCB上LED指示灯电流、电压总结

    一般指示灯正常发光的电流在10~20mA,低电流LED灯的工作电流在2mA一下,亮度和普通的一样. 压降                    电流 红色         1.82~1.88V     ...

  4. MM32F0020 GPIO驱动LED灯(MM32F0020 GPIO Toggle)

    目录: 1.MM32F0020简介 2.MM32F0020系统时钟配置 3.MM32F0020的GPIO外设配置及其初始化 4.使用官网的Systick定时器做延时 5.MM32F0020 GPIO驱 ...

  5. MM32F0140 GPIO驱动LED灯(MM32F0140 GPIO)

    目录: 1.MM32F0140简介 2.MM32F0140系统时钟配置 3.MM32F0140的GPIO外设配置及其初始化 4.使用官网的Systick定时器做延时 5.MM32F0140 GPIO驱 ...

  6. 树莓派LED指示灯说明

    原文:http://shumeipai.nxez.com/2014/09/30/raspberry-pi-led-status-detail.html?variant=zh-cn LED亮灯状态 LE ...

  7. 【STM32H7教程】第18章 STM32H7的GPIO应用之跑马灯

    完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第18章       STM32H7的GPIO应用之跑马灯 本 ...

  8. 第11章 GPIO输出—使用固件库点亮LED

    第11章     GPIO输出—使用固件库点亮LED 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku. ...

  9. 第11章 GPIO输出-使用固件库点亮LED—零死角玩转STM32-F429系列

    第11章     GPIO输出—使用固件库点亮LED 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku. ...

随机推荐

  1. Python 实例变量

    class Person: def __init__(self, name, id, gender, birth): self.name = name # 实例变量 对象里的变量 self.id = ...

  2. svg相关

    1.指定点缩放公式 translate(-centerX*(factor-1), -centerY*(factor-1)) scale(factor)

  3. linux 命令使用方法(随时更新)

    1.hexdump 命令简介:hexdump是Linux下的一个二进制文件查看工具,它可以将二进制文件转换为ASCII.八进制.十进制.十六进制格式进行查看. 命令语法:hexdump: [-bcCd ...

  4. Spring Boot 揭秘与实战(二) 数据存储篇 - MyBatis整合

    文章目录 1. 环境依赖 2. 数据源3. 脚本初始化 2.1. 方案一 使用 Spring Boot 默认配置 2.2. 方案二 手动创建 4. MyBatis整合5. 总结 4.1. 方案一 通过 ...

  5. Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC 配置校验器

    Spring4新特性——泛型限定式依赖注入 Spring4新特性——核心容器的其他改进 Spring4新特性——Web开发的增强 Spring4新特性——集成Bean Validation 1.1(J ...

  6. Java中的Arrays类使用详解

    首先先创建一个打印数组的方法,方便后面直接使用 public static void output(int []a) { for(int i=0;i<a.length;i++) { System ...

  7. Codeforces 520B:Two Buttons(思维,好题)

    题目链接:http://codeforces.com/problemset/problem/520/B 题意 给出两个数n和m,n每次只能进行乘2或者减1的操作,问n至少经过多少次变换后能变成m 思路 ...

  8. ubuntu安装mysql遇到的问题

    ERROR 1698 (28000): Access denied for user 'root'@'localhost' ubantu linux下安装新版mysql,登录时必须sudo mysql ...

  9. 【BZOJ2120】数颜色

    看代码学习好,好学好懂好ac 原题: 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会像你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R支画笔中 ...

  10. Mybatis二(高级部分)

    1.输入映射和输出映射 a)        输入参数映射 b)        返回值映射 2.动态sql a)        If标签 b)        Where标签 c)        Sql片 ...