caocong 2dd675869a fix:修复调光时间BUG
解决调光时间一样的情况下,调光亮与调光灭的实际调光时间不一致问题
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00
2025-12-15 20:48:52 +08:00

项目名称RCU_C12_Dimming

协议文档:..\RCU-Cx\Document\BLV-BUS-485协议文档

共享路径:..\RCU-Cx\Reference\BLV_C12_CH12_Source_Code

版本说明

2025-12-15 修改人:曹聪 类型解决BUG

问题描述:调光时间一样的情况下,调光亮与调光灭的实际调光时间不一致

/* 问题点在于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

    修改串口接收,最终发布版本

  • 以下版本说明全是开发临时记录

Description
RCU主机调光控制 IC:STC8G2K32S4 开发环境:Keil4
Readme 838 KiB
Languages
C 72.5%
C++ 27%
HTML 0.5%