正点原子Linux开发板IMX6ULL上的呼吸灯如何停止?
学习到驱动开发Linux系统自带的LED驱动控制的时候,才知道,原来该呼吸灯经过设备树配置好之后,直接由Linux内核程序配置为呼吸灯(前提是在内核中配置过,可以使用make menuconfig
来去配置内核)。
所以在之前写led灯的驱动的时候,因为这个呼吸灯无法看到实验现象,查询资料才知道,正点原子他们默认配置为了呼吸灯(通过Linux内核自带的驱动)
- 差评一下这个,教程里是错的,路径不对,根本没用,当时困惑好久
正确做法
当希望停止掉这个呼吸灯的时候,通过Linux内核自带的驱动程序来改变触发方式。具体为,可以用MobaXterm进入/sys/devices/platform/dtsleds/
这个路径。其中dtsleds为设备树中自己写的节点名字,正点原子写成了dtsleds(可以在设备树中,查阅绑定文档自己修改)。所以,教程里错的是因为,在/sys/class/leds/下没用sys-led这个,因为这是设备树自己配置的节点名字而已!!!。
在这个路径下,可以看到
其中leds是配置的led集合,进入之后可以见到red(也是设备树自己配置命名的)。
进去之后可以看到有很多项。其实都是Linux自带的驱动程序。brightness可以调节亮度。但是得首先改变trigger触发方式。
通过cat trigger
可以查阅,目前配置方式为heartbeat
。中括号括起来的
所以要先修改触发方式为none,再去修改brightness或者做相关操作。
echo none > trigger // 注意当前的路径实在/red里头