fix:修复调光时间BUG

解决调光时间一样的情况下,调光亮与调光灭的实际调光时间不一致问题
This commit is contained in:
caocong
2025-12-15 20:48:52 +08:00
commit 2dd675869a
41 changed files with 15313 additions and 0 deletions

57
Readme.md Normal file
View File

@@ -0,0 +1,57 @@
### 项目名称RCU_C12_Dimming
### 协议文档:..\RCU-Cx\Document\BLV-BUS-485协议文档
### 共享路径:..\RCU-Cx\Reference\BLV_C12_CH12_Source_Code
# 版本说明
#### 2025-12-15 修改人:曹聪 类型解决BUG
问题描述:调光时间一样的情况下,调光亮与调光灭的实际调光时间不一致
```c
/* 问题点在于pwm_control.c文件中的deal_command1函数处理上
s_pwm.doublecurrpwm[i] = s_pwm.currpwm[i];
s_pwm.doublecurrpwm[i] += s_pwm.every_change_10ms[i];
s_pwm.currpwm[i] = (u16)s_pwm.doublecurrpwm[i];
其中:
currpwm 是当前PWM对应的寄存器值(整数)
doublecurrpwm 是用于计算PWM步进后的值(浮点数)
此逻辑导致用于计算PWM步进后的浮点数直接丢失小数部分然后用于下一次运算导致PWM增加的步进值与降低的步进值不同从而导致实际调光时间不一致
*/
```
#### V18之前版本说明如下
- V18 2024-09-27
修改内容:解决全局亮度设置时变量溢出导致亮度不能调节问题。
- V17 杨鸿锋
修改内容:全局亮度设置增加渐变
- V16 2024-05-06 曹聪
修改内容:修改调光频率导致循环调光时间过短问题 - 调整后与之前循环调光渐变时间差不多(最慢的时候 10S左右)
- V15
修改了pwm调光的频率调成16khz解决了低频主机啸叫的问题
- V14
修改串口接收,最终发布版本
- 以下版本说明全是开发临时记录