许昌市建设投资有限公司 网站网站设计论文范文大全集

张小明 2025/12/28 3:35:32
许昌市建设投资有限公司 网站,网站设计论文范文大全集,wordpress 支付宝插件,上海建设工程 U盘登录哪个网站目录 目录 前言 DTS配置参考 LEDS_GPIO的DTS配置参考 LEDS_PWM的DTS配置参考 LEDS_GPADC的DTS配置参考 内核配置参考 LEDS_GPIO的内核配置参考 LEDS_PWM的内核配置参考 LEDS_GPADC的内核配置参考 验证测试参考 常见问题 配置了LED的Devicetree和Menuconfig是正确的但…目录目录前言DTS配置参考LEDS_GPIO的DTS配置参考LEDS_PWM的DTS配置参考LEDS_GPADC的DTS配置参考内核配置参考LEDS_GPIO的内核配置参考LEDS_PWM的内核配置参考LEDS_GPADC的内核配置参考验证测试参考常见问题配置了LED的Devicetree和Menuconfig是正确的但是LED控制打开后始终不亮配置了LED的Devicetree和Menuconfig后发现LED控制打开后LED灯反而是灭的总结前言LED指示灯即发光二极管指示灯是一种以发光二极管为核心光源的电子元件主要用于显示设备或电路的工作状态。‌其核心作用是通过不同颜色和闪烁模式的灯光直观反映设备的运行情况例如电源供应、连接状态或信号传输等从而便于用户快速判断设备是否正常工作或诊断故障。‌Linux LED驱动开发主要涉及两种方式一是编写自定义的字符设备驱动直接操作硬件寄存器二是利用内核内置的LED子系统通过设备树配置。Linux内核原生已经支持LED驱动其中内核文档路径为linux-x.xx/Documentation/devicetree/bindings/leds其描述了相应的设备树节点如何编写。这里推荐使用‌Linux内核内置LED驱动减少重复的工作。Linux内核提供基于platform框架的GPIO LED驱动文件路径为drivers/leds/leds-gpio.c。DTS配置参考LEDS_GPIO的DTS配置参考leds { compatible gpio-leds; timer_led { gpios gpioc 0 GPIO_ACTIVE_LOW; label timer_led; linux,default-trigger timer; default-status on; status okay; }; };LEDS_PWM的DTS配置参考pwm-leds { compatible pwm-leds; pinctrl-names default; pinctrl-0 pinctrl_pwm1; pwm-led1 { label pwmled; pwms pwm 1 50000 1; max-brightness 255; linux,default-trigger heartbeat; }; }; pinctrl: pinctrlxxxxxxxx { pinctrl_pwm1: pwm1-grp { test,pins gpioc-1; test,pin-function 6; test,pin-pud ENABLE_PULL_UP; test,pin-drv DRV_LEVEL3; }; };LEDS_GPADC的DTS配置参考leds_gpadc { compatible gpadc-leds; ir_led { label ir_led; gpadc_channel 1; linux,default-trigger timer; default-state on; status okay; }; };内核配置参考LEDS_GPIO的内核配置参考CONFIG_NEW_LEDSy CONFIG_LEDS_CLASSy CONFIG_LEDS_GPIOy CONFIG_LEDS_TRIGGERSy 触发器功能根据实际情况来打开 CONFIG_LEDS_TRIGGER_TIMERy CONFIG_LEDS_TRIGGER_ONESHOTy CONFIG_LEDS_TRIGGER_MTDy CONFIG_LEDS_TRIGGER_HEARTBEATy CONFIG_LEDS_TRIGGER_BACKLIGHTy CONFIG_LEDS_TRIGGER_CPUy CONFIG_LEDS_TRIGGER_ACTIVITYy CONFIG_LEDS_TRIGGER_GPIOy CONFIG_LEDS_TRIGGER_DEFAULT_ONy CONFIG_LEDS_TRIGGER_TRANSIENTy CONFIG_LEDS_TRIGGER_CAMERAy CONFIG_LEDS_TRIGGER_PANICy CONFIG_LEDS_TRIGGER_NETDEVyLEDS_PWM的内核配置参考CONFIG_NEW_LEDSy CONFIG_LEDS_CLASSy CONFIG_LEDS_PWMy CONFIG_LEDS_TRIGGERSy 触发器功能根据实际情况来打开 CONFIG_LEDS_TRIGGER_TIMERy CONFIG_LEDS_TRIGGER_ONESHOTy CONFIG_LEDS_TRIGGER_MTDy CONFIG_LEDS_TRIGGER_HEARTBEATy CONFIG_LEDS_TRIGGER_BACKLIGHTy CONFIG_LEDS_TRIGGER_CPUy CONFIG_LEDS_TRIGGER_ACTIVITYy CONFIG_LEDS_TRIGGER_GPIOy CONFIG_LEDS_TRIGGER_DEFAULT_ONy CONFIG_LEDS_TRIGGER_TRANSIENTy CONFIG_LEDS_TRIGGER_CAMERAy CONFIG_LEDS_TRIGGER_PANICy CONFIG_LEDS_TRIGGER_NETDEVyLEDS_GPADC的内核配置参考CONFIG_NEW_LEDSy CONFIG_LEDS_CLASSy CONFIG_LEDS_GPADCy CONFIG_LEDS_TRIGGERSy触发器功能根据实际情况来打开 CONFIG_LEDS_TRIGGER_TIMERy CONFIG_LEDS_TRIGGER_ONESHOTy CONFIG_LEDS_TRIGGER_MTDy CONFIG_LEDS_TRIGGER_HEARTBEATy CONFIG_LEDS_TRIGGER_BACKLIGHTy CONFIG_LEDS_TRIGGER_CPUy CONFIG_LEDS_TRIGGER_ACTIVITYy CONFIG_LEDS_TRIGGER_GPIOy CONFIG_LEDS_TRIGGER_DEFAULT_ONy CONFIG_LEDS_TRIGGER_TRANSIENTy CONFIG_LEDS_TRIGGER_CAMERAy CONFIG_LEDS_TRIGGER_PANICy CONFIG_LEDS_TRIGGER_NETDEVy验证测试参考1. 配置好LED相关的DTS和内核配置后编译并烧录固件主控板正常启动。2. 验证LEDS_GPIO输入操作命令并观察对应的LED的亮灭情况例如# cat /sys/class/leds/timer_led/trigger 查看当前的触发器类型。 none [timer] oneshot mtd nand-disk heartbeat backlight gpio cpu cpu0 activity default-on transient flash torch panic netdev mmc0 mmc1 # echo heartbeat /sys/class/leds/timer_led/trigger改变触发器类型为心跳触发类型。 # cat /sys/class/leds/timer_led/trigger 查看当前的触发器类型。 none timer oneshot mtd nand-disk [heartbeat] backlight gpio cpu cpu0 activity default-on transient flash torch panic netdev mmc0 mmc1 # echo timer /sys/class/leds/timer_led/trigger改变触发器类型为定时器触发类型。 # cat /sys/class/leds/timer_led/trigger查看当前的触发器类型。 none [timer] oneshot mtd nand-disk heartbeat backlight gpio cpu cpu0 activity default-on transient flash torch panic netdev mmc0 mmc1 # cat /sys/class/leds/timer_led/delay_on 查看当前定时器触发的亮灯延时时间。 500 # cat /sys/class/leds/timer_led/delay_off 查看当前定时器触发的灭灯延时时间。 500 # echo 3000 /sys/class/leds/timer_led/delay_on改变定时器触发的亮灯延时时间为3000ms。 # cat /sys/class/leds/timer_led/delay_on查看当前定时器触发的亮灯延时时间。 3000 # echo 3000 /sys/class/leds/timer_led/delay_off改变定时器触发的灭灯延时时间为3000ms。 # cat /sys/class/leds/timer_led/delay_off查看当前定时器触发的灭灯延时时间。 30003. 验证LEDS_PWM输入操作命令并观察对应的LED的亮灭情况例如# echo 2 /sys/class/leds/pwmled/brightness # echo 4 /sys/class/leds/pwmled/brightness # echo 12 /sys/class/leds/pwmled/brightness # echo 16 /sys/class/leds/pwmled/brightness # echo 20 /sys/class/leds/pwmled/brightness # echo 24 /sys/class/leds/pwmled/brightness # echo 28 /sys/class/leds/pwmled/brightness4. 验证LEDS_GPADC输入操作命令并观察对应的LED的亮灭情况例如# cat /sys/class/leds/ir_led/trigger none [timer] oneshot mtd nand-disk heartbeat backlight gpio cpu cpu0 activity default-on transient flash torch panic netdev mmc0 mmc1 # cat /sys/class/leds/ir_led/delay_on 500 # cat /sys/class/leds/ir_led/delay_off 500 # echo 3000 /sys/class/leds/ir_led/delay_off # cat /sys/class/leds/ir_led/delay_off 3000 # echo 3000 /sys/class/leds/ir_led/delay_off # cat /sys/class/leds/ir_led/delay_off 3000常见问题配置了LED的Devicetree和Menuconfig是正确的但是LED控制打开后始终不亮【问题现象】调试的PCB板子或整机正常上电后配置了LED的Devicetree和Menuconfig是正确的但是LED软件控制打开后始终不亮。【解决方法】下面以某个LED-红绿双色灯的电路原理图为例。1. 可以先检查LED部分的电路是否正常。比如LED-R软件控制打开后始终不亮可以先检查D11是否贴反或虚贴然后再检查R778是否漏贴或虚贴最后LED-R直接飞线接地查看D11的R灯是否可以正常亮。2. LED部分的电路检查正常后可以跑软件进行控制下LED比如LED-R。配置了LED的Devicetree和Menuconfig后发现LED控制打开后LED灯反而是灭的【问题现象】配置了LED的Devicetree和Menuconfig后发现LED控制打开后LED指示灯反而是灭的。【解决方法】1. 可以先检查DTS的LED部分配置是否正确。比如下面的LED节点配置中“gpios gpioc 18 1”配置的led2实际上打开时GPIOC18置为低电平了因为此时的GPIO_ACTIVE_LOW的值实际上就是1而不是0GPIO_ACTIVE_HIGH的值实际上就是0而不是1建议使“GPIO_ACTIVE_LOW”或“GPIO_ACTIVE_HIGH”来表示。leds { compatible gpio-leds; led0 { label led0; gpios gpioc 14 GPIO_ACTIVE_LOW; default-state on; ; led1 { label led1; gpios gpioc 15 GPIO_ACTIVE_LOW; default-state on; }; led2 { label led2; gpios gpioc 18 1; default-state on; }; };2. 检查并正确修改DTS的LED部分配置后跑软件进行控制LED比如led2,观察LED指示灯的亮灭情况。总结像 LED 这样非常基础的设备驱动 Linux内核已经集成了。 Linux内核的LED驱动采用platform框架因此我们只需按要求在设备树DTS文件中添加相应的 LED 节点配置即可。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站建设公司的市场营销方案模板下载做网站项目实例

BetterNCM安装器使用指南:轻松为网易云音乐添加插件功能 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer 想要让你的网易云音乐拥有更多个性化功能吗?BetterNCM安…

张小明 2025/12/23 2:49:36 网站建设

以个人名义可以做网站吗网站制作的文章

Gitleaks环境变量配置深度解析与实战应用 【免费下载链接】gitleaks Protect and discover secrets using Gitleaks 🔑 项目地址: https://gitcode.com/GitHub_Trending/gi/gitleaks Gitleaks作为业界领先的密钥检测工具,其环境变量配置机制为开发…

张小明 2025/12/23 2:48:33 网站建设

潍坊免费网站制作wordpress 域名绑定

DNS 优化全攻略 1. 创建子域 在 DNS 管理中,创建子域是常见操作。以下是创建子域的具体步骤: 1. 打开 DNS 管理器控制台,展开要操作的服务器的“正向查找区域”文件夹。 2. 长按或右键单击父域条目,然后点击“新建域”。 3. 输入新域的名称,然后点击“确定”。例如,…

张小明 2025/12/26 20:35:50 网站建设

网站开发策略都有啥荔枝fm入口

深入探索侧边栏小工具API及.NET交互开发 1. 侧边栏小工具API探索 在开发侧边栏小工具时,我们可以利用许多有用的API来实现丰富的功能。 1.1 驱动器信息获取 可以通过相关代码获取驱动器的详细信息,以下是示例代码: result.innerHTML += “Drive type: “ +drive.drive…

张小明 2025/12/23 2:46:28 网站建设

怎么修改网站标题注册一个电商平台需要多少钱

掌握Pyecharts与Spark DataFrame的深度集成:从原理到实战完整指南 【免费下载链接】pyecharts 🎨 Python Echarts Plotting Library 项目地址: https://gitcode.com/gh_mirrors/py/pyecharts 在大数据时代,高效的数据可视化已成为数据…

张小明 2025/12/26 10:25:09 网站建设

成都优创智汇网站建设广州手机模板建站

📈 算法与建模 | 专注PLC、单片机毕业设计 ✨ 擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导,毕业论文、期刊论文经验交流。✅ 专业定制毕业设计✅ 具体问题可以私信或查看文章底部二维码在智能门锁控制系统的核心架构与微控制器选…

张小明 2025/12/23 2:44:22 网站建设