回答

收藏

【创龙TL335x-EVM高性能开发板】 测评之三;LED驱动

创龙科技 创龙科技 1769 人阅读 | 0 人回复 | 2020-11-15

  创龙TL335x-EVM高性能开发板LED0 为电源指示灯,系统上电默认点亮。评估底板 LED1、 LED2 和 LED3 为用户可编程指示灯,通过 GPIO 控制,默认电平点亮。  电路原理图如下:




LED驱动可以通过echo指令实现。
  1. echo 0 > /sys/class/leds/user-led0/brightness
  2. echo 0 > /sys/class/leds/user-led1/brightness
  3. echo 0 > /sys/class/leds/user-led2/brightness

  4. DELAY_TIME=1

  5. #led loop
  6. while true; do
  7.     echo 1 > /sys/class/leds/user-led0/brightness
  8.     sleep $DELAY_TIME
  9.     echo 0 > /sys/class/leds/user-led0/brightness
  10.     echo 1 > /sys/class/leds/user-led1/brightness
  11.     sleep $DELAY_TIME
  12.     echo 0 > /sys/class/leds/user-led1/brightness
  13.     echo 1 > /sys/class/leds/user-led2/brightness
  14.     sleep $DELAY_TIME
  15.     echo 0 > /sys/class/leds/user-led2/brightness
  16. done
复制代码
   
    设备树文件已配置好这个IO,  可以通过echo指令写入一定值到 brightness去控制LED的高低电平。  brightness也是一个驱动节点,驱动会检测这个节点的内容作出不同的处理。





echo命令: 用于字符串的输出

1.显示普通字符串:
  1. echo "It is a test"


  2. 这里的双引号完全可以省略,以下命令与上面实例效果一致:

  3. echo It is a test
复制代码


2.显示转义字符:
  1. echo ""It is a test""
  2. 结果将是:
  3. "It is a test"
  4. 同样,双引号也可以省略
复制代码


3.显示变量:
  1. read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量

  2. #!/bin/sh
  3. read name
  4. echo "$name It is a test"

  5. 以上代码保存为 test.sh,name 接收标准输入的变量,结果将是:

  6. [root@www ~]# sh test.sh
  7. OK                     #标准输入
  8. OK It is a test        #输出
复制代码
4.显示换行:

  1. echo -e "OK! \n" # -e 开启转义
  2. echo "It it a test"

  3. 输出结果:

  4. OK!

  5. It it a test
复制代码



5.显示不换行:
  1. #!/bin/sh
  2. echo -e "OK! \c" # -e 开启转义 \c 不换行
  3. echo "It is a test"
  4. 输出结果:OK! It is a test
  5. 转义

  6.     \a 发出警告声;
  7.     \b 删除前一个字符;
  8.     \c 最后不加上换行符号;
  9.     \f 换行但光标仍旧停留在原来的位置;
  10.     \n 换行且光标移至行首;
  11.     \r 光标移至行首,但不换行;
  12.     \t 插入tab;
  13.     \v 与\f相同;
  14.     \\ 插入\字符;
  15.     \nnn 插入nnn(八进制)所代表的ASCII字符;
复制代码


6.显示结果定向至文件:
echo "It is a test" > myfile





技术改变世界
分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条