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

39 lines
1.4 KiB
C

#include "STC8xxxx.h"
#include "Start_Init.h"
#include "string.h"
#include "UART_Set.h"
#include "timer.h"
#include "pwm_control.h"
void Start_Init(void)
{
u8 i;
memset(&g_Usart,0,sizeof(g_Usart));
memset(&s_recv, 0, sizeof(s_recv));
memset(&g_answer,0,sizeof(g_answer));
g_Usart.lastsn=0xFF;
s_recv.B_min = 0;
s_recv.B_max = 100;
s_recv.global_brightness = 100;
for(i=0;i<12;i++)
{
s_recv.pwm_step[i] = 1;
s_recv.key_status[i] = 1;
s_recv.gradual_time[i] = 300;
}
}
//定时器2的1ms定时
void Timer2_Init_1ms(void)
{
TIM_InitTypeDef TIM_InitStructure; //结构定义
TIM_InitStructure.TIM_Mode = TIM_16BitAutoReload; //指定工作模式, TIM_16BitAutoReload,TIM_16Bit,TIM_8BitAutoReload,TIM_16BitAutoReloadNoMask
TIM_InitStructure.TIM_Priority = Priority_3; //指定中断优先级(低到高) Priority_0,Priority_1,Priority_2,Priority_3
TIM_InitStructure.TIM_Interrupt = ENABLE; //中断是否允许, ENABLE或DISABLE. (注意: Timer2固定为16位自动重装, 中断固定为低优先级)
TIM_InitStructure.TIM_ClkSource = TIM_CLOCK_12T; //指定时钟源, TIM_CLOCK_1T,TIM_CLOCK_12T,TIM_CLOCK_Ext
TIM_InitStructure.TIM_ClkOut = DISABLE; //是否输出高速脉冲, ENABLE或DISABLE
TIM_InitStructure.TIM_Value = 63693UL; //初值,定时为1ms
TIM_InitStructure.TIM_Run = ENABLE; //是否初始化后启动定时器, ENABLE或DISABLE
Timer_Inilize(Timer2,&TIM_InitStructure); //初始化Timer2 Timer0,Timer1,Timer2,Timer3,Timer4
}