--- fix lamp bar color for 46cm STS_O6_RTM_RM2_46cm_pixel_network_20240806b

This commit is contained in:
Yunhorn 2024-08-06 20:15:51 +08:00
parent 615ec84a49
commit 645147ac2f
3 changed files with 9 additions and 9 deletions

View File

@ -128,9 +128,9 @@ void Error_Handler(void);
/*
* STM32WL55, STM32WLE5 Clock=48Mhz 48,000,000/800khz = 60
*/
#define STS_LAMP_BAR_PWM_TIM_PERIOD (60 - 1)
#define STS_LAMP_BAR_PWM_TIM_PERIOD (240 - 1)
#define STS_LAMP_BAR_HTIM htim1
#define STS_LAMP_BAR_LED_NUM (30) //30 for 46CM length LED strip
#define STS_LAMP_BAR_LED_NUM (60) //60 for 46CM length LED strip
#define WSDATA_PORT_PIN_PA8
//#define WSDATA_PORT_PIN_PA9

View File

@ -32,13 +32,13 @@
#define ZERO_PULSE (20)
#define LED_DATA_LEN 24
#define WS2812B_DATA_LEN (LED_DATA_LEN * (STS_LAMP_BAR_LED_NUM+1))
#define RESET_PULSE (16) //(80) TO FIX DARK_COLOR AND SM2
#define WS2812B_DATA_LEN (LED_DATA_LEN * (STS_LAMP_BAR_LED_NUM))
#define RESET_PULSE (24) //(80) TO FIX DARK_COLOR AND SM2
typedef struct ws2812b_e {
//uint16_t head[3];
uint16_t GRB[WS2812B_DATA_LEN];
uint16_t GRB[WS2812B_DATA_LEN+RESET_PULSE];
uint16_t tail;
} WS2812B_FrameTypeDef;
@ -98,7 +98,7 @@ void STS_Lamp_Bar_Set_Dark(void)
void STS_WS2812B_Refresh(void)
{
HAL_TIM_PWM_Start_DMA(&STS_LAMP_BAR_HTIM, STS_LAMP_BAR_TIM_CHANNEL, (uint32_t *)&rgb_buf, (WS2812B_DATA_LEN+LED_DATA_LEN));
HAL_TIM_PWM_Start_DMA(&STS_LAMP_BAR_HTIM, STS_LAMP_BAR_TIM_CHANNEL, (uint32_t *)&rgb_buf, (WS2812B_DATA_LEN+RESET_PULSE));
//HAL_TIM_PWM_Start_IT(&STS_LAMP_BAR_HTIM, STS_LAMP_BAR_TIM_CHANNEL);
}
@ -125,7 +125,7 @@ void STS_Lamp_Bar_Scoller(uint8_t color, uint8_t lum_level)
for(uint8_t i = 0; i<STS_LAMP_BAR_LED_NUM; i++)
{
HAL_Delay(20); //MAKE THIS LESS THAN 10 NOT TO BLOCK JOIN THE LORAWAN
HAL_Delay(6); //MAKE THIS LESS THAN 10 NOT TO BLOCK JOIN THE LORAWAN
STS_WS2812B_Set_RGB(color_rgb[color][0]*lum_level,color_rgb[color][1]*lum_level, color_rgb[color][2]*lum_level, i);
@ -149,7 +149,7 @@ void STS_WS2812B_Set_RGB(uint8_t red, uint8_t green, uint8_t blue, uint8_t idx)
void STS_Lamp_Bar_Set_RGB_Color(uint8_t red, uint8_t green, uint8_t blue )
{
uint8_t i =0;
UTIL_MEM_set_8((void*)rgb_buf.GRB,0x0,(WS2812B_DATA_LEN+LED_DATA_LEN));
UTIL_MEM_set_8((void*)rgb_buf.GRB,0x0,(WS2812B_DATA_LEN+RESET_PULSE));
for(i = 0; i < STS_LAMP_BAR_LED_NUM; i++)
{
@ -198,7 +198,7 @@ void STS_Lamp_Bar_Set_STS_RGB_Color(uint8_t sts_lamp_color, uint8_t lum)
STS_Lamp_Bar_Set_RGB_Color(lum, lum, lum);
break;
case STS_COLOR_MAX: // RED/BLUE
sts_status_color = STS_RED_BLUE;
sts_lamp_bar_color = STS_RED_BLUE;
break;
}
}

Binary file not shown.