(资料图片仅供参考)
1. 简介
专栏总目录Linux为了广泛通用性及适应性,各种框架都做得非常灵活而又复杂,小小的LED也不例外。支持了不 同的LED硬件设备,例如gpio接口,i2c接口,LED芯片等。为了支持各种点灯效果,使用了Trigger框架,除了系统默认的一些trigger外,用户可以创建自定义trigger。因此,为了点个灯,软件开发人员需要了解Linux中gpio, led, trigger三个模块。led框架核心文件:/kernel/include/linux/leds.h // 重要,led相关结构体,宏定义,trigger等目录 /kernel/driver/leds/ 下led-class.c // 定义led class及相关接口led-core.c // export 了闪烁,设置亮灭等接口led-gpio.c // "leds-gpio" 驱动leds.h // 提供几个接口,如:led_init_core
trigger 框架核心文件:目录 /kernel/driver/leds/ 下 led-triggers.c // export了许多接口,包括:led_trigger_register目录 /kernel/driver/leds/trigger 下 ledtrig-backlight.c ledtrig-camera.c ledtrig-cpu.c ledtrig-default-on.c ledtrig-disk.c ledtrig-gpio.c ledtrig-heartbeat.c // 心跳灯效果 ledtrig-mtd.c ledtrig-oneshot.c ledtrig-panic.c ledtrig-timer.c // 定时器ledtrig-transient.c
以参考上面的trigger例子写自己的trigger,或者改造,需要在make menuconfig里面选上才会编译,如下:
2. LED 调试
2.1 调试总览,调试步骤分析
步骤 一 : dts配置步骤 二 :编译烧写,调试2.2 调试过程
步骤 一 : dts配置① leds节点是在rk3588-evb.dtsi文件中定义
#include "rk3588-evb.dtsi"
② 定义四个led节点: (检查gpio是否被复用)
使用命令:dmesg | grep cannot检查是否有gpio冲突,有冲突的话驱动代码会中断,后面的dts就不会生效。
&leds { status = "okay"; compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = < &work1_led_gpio >, < &work2_led_gpio >,< &work3_led_gpio >,< &work4_led_gpio >; work1_led: work1{ default-state = "off"; gpios = < &gpio4 RK_PD2 GPIO_ACTIVE_HIGH >; }; work2_led: work2{ default-state = "off"; gpios = < &gpio4 RK_PD3 GPIO_ACTIVE_HIGH >; }; work3_led: work3{ default-state = "off"; gpios = < &gpio4 RK_PD4 GPIO_ACTIVE_HIGH >; }; work4_led: work4{ default-state = "off"; gpios = < &gpio4 RK_PD5 GPIO_ACTIVE_HIGH >; };};&pinctrl { leds{ work1_led_gpio: work1-led-gpio{ rockchip,pins = < 4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_down >; }; work2_led_gpio: work2-led-gpio{ rockchip,pins = < 4 RK_PD3 RK_FUNC_GPIO &pcfg_pull_down >; }; work3_led_gpio: work3-led-gpio{ rockchip,pins = < 4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down >; }; work4_led_gpio: work4-led-gpio{ rockchip,pins = < 4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_down >; }; }; }
步骤二:调试,验证:在用户空间操作led
使用了驱动框架后可以不需要编写应用程序就可以测试led是否能正常被点亮与熄灭,这些都可以在sysfs文件系统中完成。在装载驱动后可以在/sys/class/leds/目录下看到对应的led设备目录,如本文中的work1(填充设备时的设备名字段)。
ls /sys/class/leds/work1
brightness power ueventmax_brightness subsystem
点亮led
echo 1 > brightness
熄灭led
echo 0 > brightness
审核编辑:汤梓红
关键词:
推荐内容
- Linux LED子系统详解
- 国铁集团6月10日起在12306网站试行在线选
- 微速讯:什么尾气异味扰民事件,让帮扶人
- 官方售价24.95万元起 新款奔驰长轴距A级
- 告别金色童年,这群14岁少年一起开启青春
- 看热讯:中国武夷(000797):6月9日北向
- 天天热文:计算机速录技能筛选意见(计算
- 朋克族(关于朋克族介绍)_环球播报
- 当前热门:中秋节的风俗有什么? 50字_中
- 良好的心态对工作的重要性 良好的心态
- 燕麦仁的正确吃法_燕麦仁
- 如何摘掉“小眼镜”(养生杂谈)
- 每日消息!大地保险公司和平安保险公司哪
- 聚焦:九江银行精准发力 为乡村振兴注入
- 世界动态:光伏系统远程维护解决方案:实
- 梁凤仪:互换通平均每日交易量大约有30亿
- 天天资讯:阿联酋国家三字代码_阿联酋国
- 单飞雪(单飞) 全球焦点
- 邹城:奋楫笃行践初心 谱写档案事业新篇章
- 今日热搜:南通通州开展二季度道德讲堂活
- 中国新能源高端车扩维竞争
- 天天热消息:土方外运多少钱一方运距7公
- 直播预告 | 心系高考,见证梦想!6月9
- ai软件是什么意思_ai软件是什么 焦点速读
- 新疆:“花经济”激活乡村振兴动能
- 【本地】大河南镇:小网格大力量 多才多
- 万人说新疆丨努尔江:维吾尔医药是国家民
- 世界报道:辽宁有什么一本大学吗师范是
- 灰指甲什么样的图片_灰指甲什么样的|关注
- 23福建债13票面利率为2.7000%
- 券商再迎降薪潮_全球热文
- 全球速看:皖通高速(600012):6月8日北
- 武汉轨道交通赵家条配套综合项目幕墙施工
- 全球百事通!欧洲游哪个旅行社好
- 环球快播:浙商证券:短期汇率贬值或为宽
- 亚威股份:终止向特定对象发行A股股票事
- 葛海蛟:继续从推进商品和要素跨境自由流
- 大连东软信息学院宿舍 大连东软信息学院
- 勇士试训了大四锋线老将,他正是球队急需
- 环球热门:12生肖当中,有头脑有事业的4大
- 淮北市杜集区矿山集街道关心下一代工作委
- 【快播报】针对电信突发网络中断故障,广
- 短讯!救僵清道夫粤语1080P 救僵清道夫粤语
- 意媒:国米有意柏林赫塔前锋卢克巴基奥,
- 游民陪你看夏日游戏节:《真人快打1》《
- 在外打工受伤没劳动合同怎么赔偿 环球动态
- 珍宝岛(603567)发布激励草案,业绩目标彰
- 小伢儿画亚残 ▏杭州市凤凰小学龙嘉玥:
- 国内首款“涵盖10种老年高发重疾的老年长
- 当前消息!东箭科技:接受中泰证券调研
- 环球播报:挑干的唠:百融云AI大模型强在
- 椰子油行业发展趋势及市场现状如何?椰子
- 环球资讯:哈尔滨2023民办初中招生计划
- 新芝生物:公司拟回购不超过380.00万股公
- 广东再发促进生育重磅文件 这一相关技术
- 第四批广东省历史文化街区公布!梅州3个
- 微头条丨视频丨高考第二日落幕,满是鲜花
- “一夜五次”,某顶流“后浪”睡粉的瓜!
- 上交所邱勇:将健全制度体系,构建科技创
- 世界聚焦:栾城区气象台发布高温橙色预警
- 中国新能源高端车扩维竞争
- 天天热消息:土方外运多少钱一方运距7公
- 直播预告 | 心系高考,见证梦想!6月9
- ai软件是什么意思_ai软件是什么 焦点速读
- 新疆:“花经济”激活乡村振兴动能
- 【本地】大河南镇:小网格大力量 多才多
- 万人说新疆丨努尔江:维吾尔医药是国家民
- 世界报道:辽宁有什么一本大学吗师范是
- 灰指甲什么样的图片_灰指甲什么样的|关注
- 23福建债13票面利率为2.7000%
- 券商再迎降薪潮_全球热文
- 全球速看:皖通高速(600012):6月8日北
- 武汉轨道交通赵家条配套综合项目幕墙施工
- 全球百事通!欧洲游哪个旅行社好
- 环球快播:浙商证券:短期汇率贬值或为宽
- 亚威股份:终止向特定对象发行A股股票事
- 葛海蛟:继续从推进商品和要素跨境自由流
- 大连东软信息学院宿舍 大连东软信息学院
- 勇士试训了大四锋线老将,他正是球队急需
- 环球热门:12生肖当中,有头脑有事业的4大
- 淮北市杜集区矿山集街道关心下一代工作委
- 【快播报】针对电信突发网络中断故障,广
- 短讯!救僵清道夫粤语1080P 救僵清道夫粤语
- 意媒:国米有意柏林赫塔前锋卢克巴基奥,
- 游民陪你看夏日游戏节:《真人快打1》《
- 在外打工受伤没劳动合同怎么赔偿 环球动态
- 珍宝岛(603567)发布激励草案,业绩目标彰
- 小伢儿画亚残 ▏杭州市凤凰小学龙嘉玥:
- 国内首款“涵盖10种老年高发重疾的老年长
- 当前消息!东箭科技:接受中泰证券调研
- 环球播报:挑干的唠:百融云AI大模型强在
- 椰子油行业发展趋势及市场现状如何?椰子
- 环球资讯:哈尔滨2023民办初中招生计划
- 新芝生物:公司拟回购不超过380.00万股公
- 广东再发促进生育重磅文件 这一相关技术
- 第四批广东省历史文化街区公布!梅州3个
- 微头条丨视频丨高考第二日落幕,满是鲜花
- “一夜五次”,某顶流“后浪”睡粉的瓜!
- 上交所邱勇:将健全制度体系,构建科技创
- 世界聚焦:栾城区气象台发布高温橙色预警
- 108坊故事|社区里开起“全职妈妈微课堂”
- 焦点快报!五柱香烧香图解大全(一把香烧
- 世界快消息!2场4球,泰山队又一新星出世
- 全球今日报丨市场指导价52.18万元 奥迪S
- 检察院介入是什么情况(检察机关提前介入
- 阿荣旗气象台发布雷电黄色预警【III级/较
- 武汉23年高考成绩公布时间是多少? 焦点
- 当前要闻:【原】穷人,没有主见
- 焦点消息!海岛书声,教书32年的他带着一
- 借子上位!成人女星控诉锡安没让自己怀孕
- 全球视点!变量之间的关系有几种_变量之
- 河北一景区回应玩偶雕塑造型不雅:原意是
- 四川:对光伏发电项目用地实行分类管理|
- 中央气象台:继续发布强对流天气蓝色预警
- 天天快讯:我爱我家:对新房业务总体偏谨
- *ST越博与财务总监徐方伟收警示函 业绩
- “红蕴天平”健康首秀进社区,张文宏66梧
- 海关总署:前5个月我国进出口增长4.7%
- 成都大运会志愿者“小青椒”们接受考验!
- imovie剪辑音乐的操作流程