[电池电源管理] LED 闪烁故障

[复制链接]
2243|10
 楼主| 桃乐丝 发表于 2025-7-11 18:18 | 显示全部楼层 |阅读模式
  在一款产品中对 SH79F6441 芯片的 LED 驱动功能进行程序调试,LED 闪烁频率异常。首先检查程序中对定时器的配置,发现定时器的初值设置错误,导致定时器的计数周期与预期不符,从而使 LED 闪烁频率异常。
修改定时器初值后,LED 闪烁频率有所改变,但仍不准确。
和硬件工程师通过示波器测量定时器的输出波形,发现定时器的时钟源选择错误,原本应使用内部高速时钟,实际使用了内部低速时钟。
修改时钟源选择后,LED 闪烁频率接近预期值,但仍存在一定偏差。
进一步检查发现,在 LED 驱动程序中,对 GPIO 引脚的翻转操作存在多余的代码,导致每次翻转 GPIO 引脚时都会产生额外的延时。删除多余代码后,LED 闪烁频率恢复正常。

xiaoqizi 发表于 2025-8-2 18:32 | 显示全部楼层
若定时器的初始计数值未按预期设定,会导致实际产生的中断周期与理论计算不符
木木guainv 发表于 2025-8-2 20:50 | 显示全部楼层
不同的时钟源会影响定时器的运行节奏
Jiangxiaopi 发表于 2025-8-2 23:01 | 显示全部楼层
当选用较低频的时钟时,即使相同的分频比和预装载值,也会导致最终输出波形周期变大、频率降低
荣陶陶 发表于 2025-8-3 09:55 | 显示全部楼层
在控制LED状态切换的过程中,如果存在不必要的语句或者复杂的逻辑判断,可能会消耗额外的CPU周期,从而影响整体的时序精度
Zhiniaocun 发表于 2025-8-3 12:31 | 显示全部楼层
某些情况下,由于线路上的寄生电容或其他因素,使得引脚电平转换不是瞬时的,而是有一个逐渐上升或下降的过程,这同样会改变有效的高低电平持续时间,进而影响到视觉上的闪烁效果
Zuocidian 发表于 2025-8-3 14:43 | 显示全部楼层
用于实现延迟功能的for循环次数过多或过少,直接决定了每次状态变化之间的间隔长短
Puchou 发表于 2025-8-3 17:19 | 显示全部楼层
当嵌套多层循环时,内层循环的次数将对总耗时产生显著影响
Xiashiqi 发表于 2025-8-3 19:37 | 显示全部楼层
如果有其他中断请求正在处理,并且这些处理过程比较耗时,那么它们将占用原本属于LED控制的CPU资源,导致实际亮灭的时间比例偏离预期
小海师 发表于 2025-8-3 21:57 | 显示全部楼层
根据实际测量结果适当增减for循环中的迭代次数,直至达到理想的延迟效果
Haizangwang 发表于 2025-8-4 08:19 | 显示全部楼层
评估现有中断服务的优先级安排是否合理,优先保障关键任务的及时响应
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

208

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部