|
本帖最后由 xychenxy 于 2023-2-13 14:21 编辑
2023-2-3更新
下面示例只适用于padavan linux 3.4.x 内核
新的padavan 4.4.x内核已用新的gpio操作方法sysfs更为简单
Newifi D2 Led 灯:
https://www.right.com.cn/FORUM/f ... wthread&tid=4001718
参照各位大佬写的以及H大的Breed中gpio语法,
https://www.right.com.cn/forum/thread-161906-1-1.html
试着也写了个演示控制 Newifi有3个灯的脚本 (红,黄,蓝)
详见下面全部代码:
- #!/bin/sh
- y=13 #d3
- r=14 #d1
- b=16 #sys
- timer() {
- $(for i in $(seq 1 1000); do i=$i; done)
- }
- blink() {
- led=$1
- times=2
- if [ ! -z "$2" ]; then
- times=$2
- fi
-
- mtk_gpio -w $r 1 && mtk_gpio -w $b 1 && mtk_gpio -w $y 1
- for i in $(seq 1 $times); do
- #echo blink="$i"
- mtk_gpio -w $led 1
- timer
- mtk_gpio -w $led 0
- timer
- done
- }
- blink_yellow() {
- blink $y "$1"
- }
- blink_red() {
- blink $r "$1"
- }
- blink_blue() {
- blink $b "$1"
- }
- case "$1" in
- yellow)
- blink_yellow "$2"
- ;;
- red)
- blink_red "$2"
- ;;
- blue)
- blink_blue "$2"
- ;;
- *)
- echo "Usage: $0 {yellow|red|blue} {times}"
- exit 1
- esac
复制代码
下载解压附件led.sh , 终端运行下面命令修改为可执行:
终端运行下面命令,可测试黄,红,蓝分别闪烁10次
- ./led.sh yellow 10 && ./led.sh red 10 && ./led.sh blue 10
复制代码
注意:源代码中的timer只是模拟毫秒级sleep,会占用cpu资源,仅供参考!
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|