# 概述

AIC-3568JT有两个LED灯，使用GPIO控制


| GPIO0 PD4 | GPIO0 PB0 |
| --------- | --------- |
| u-led     | s-led     |

开发板上的LED的默认状态为：

u-led: Kernel内核稳定时绿灯常亮

s-led：开发板通电黄灯常亮

# DTS驱动配置

板级使能led,配置位置：arch/arm64/boot/dts/rockchip/aukun-utx-rk3568-base.dtsi

```bash
user_led: u-led  {
    lable = "aukun-user-led";
    gpios = ;
    linux,default-trigger = "heartbeat";
    default-state = "on";
};
 
system_led: s-led {
    lable = "aukun-system-led";
    gpios = ;
    linux,default-trigger = "heartbeat";
    default-state = "on";
};
```

# 实验调用

## 手动方式控制LED

1、进入设备文件系统可以查看预留的LED灯。其用户可自定义控制

```bash
cd /sys/class/led
ls led
```

![](/upload/public/wiki/markdown/5407097a94a74ebaac21491552be7ad1/1792993756117_image.png)

2、通过shell脚本实现对LED灯的控制

```bash
while true
do
echo 1 > s-led/brightness   #1表示点亮LED，0熄灭
sleep .5s
echo 0 > s-led/brightness
sleep .5s
done

```

可以观察到s-led以呼吸灯的形式闪烁

## 触发方式控制LED

在具体的LED目录下又包含brightness、max\_brightness、trigger等文件，这些文件包含了LED设备的属性和控制接口。重点介绍trigger，

trigger文件：

表示LED灯的触发方式，查看该文件的内容时，该文件会 列出它的所有可用触方式，而当前使用的触发方式会以“\[\]”符号括起。其中Timer为定时器、heartbeat为系统心跳。

进入到 /sys/class/leds/s-led目录下查看

```bash
cat trigger
```

![](/upload/public/wiki/markdown/c5fa641d1cf044fe919a534f451e92e9/1792993776784_image.png)

此时可以观察LED以系统心跳的方式闪烁。
