From d9659fd92b11e3efa3c24eebdc14a701c0892b8c Mon Sep 17 00:00:00 2001 From: YunHorn Technology Date: Fri, 25 Jul 2025 18:56:22 +0800 Subject: [PATCH] wip improved --- Core/Inc/main.h | 2 +- Core/Src/sts_lamp_bar.c | 52 ++++++++++++++++++-------------- LoRaWAN/App/lora_app.c | 2 +- STM32CubeIDE/Release/STS_O7.bin | Bin 255620 -> 255748 bytes 4 files changed, 32 insertions(+), 24 deletions(-) diff --git a/Core/Inc/main.h b/Core/Inc/main.h index 2ce8c2d..6835a52 100644 --- a/Core/Inc/main.h +++ b/Core/Inc/main.h @@ -141,7 +141,7 @@ void Error_Handler(void); /* * STM32WL55, STM32WLE5 Clock=48Mhz 48,000,000/800khz = 60 */ -#define STS_LAMP_BAR_PWM_TIM_PERIOD (240 - 1) +#define STS_LAMP_BAR_PWM_TIM_PERIOD (120 - 1) #define STS_LAMP_BAR_HTIM htim1 #define STS_LAMP_BAR_LED_NUM (60) //60 for 46CM length LED strip #define LED_COUNT 18 // for 30 cm lamp bar diff --git a/Core/Src/sts_lamp_bar.c b/Core/Src/sts_lamp_bar.c index 35b99bf..041eacf 100644 --- a/Core/Src/sts_lamp_bar.c +++ b/Core/Src/sts_lamp_bar.c @@ -33,7 +33,7 @@ #define LED_DATA_LEN 24 #define WS2812B_DATA_LEN (LED_DATA_LEN * (STS_LAMP_BAR_LED_NUM)) -#define RESET_PULSE (24) //(80) TO FIX DARK_COLOR AND SM2 +#define RESET_PULSE (150) //(80) TO FIX DARK_COLOR AND SM2 typedef struct ws2812b_e { @@ -132,9 +132,10 @@ void STS_Lamp_Bar_Scoller(uint8_t color, uint8_t lum_level) { STS_Lamp_Bar_Set_Dark(); - for(uint8_t i = 0; i= start_position) { // the most far tail end, the darker, the most head/first, the brighter - uint8_t rev = idx - fade_len ; + uint8_t rev = idx - fade_len+1; uint8_t lin = (rev * 0xFF / fade_len); uint8_t bri = (lin * lin) >> 8; @@ -364,24 +364,30 @@ void STS_Lamp_Bar_Self_Test_Fade(void) for (color=STS_GREEN; color < STS_COLOR_MAX; color++) { - lum_level = 10; - do { + lum_level = 250; + //do { + APP_LOG(TS_OFF, VLEVEL_M, "\rFade Out %04d\r", lum_level); STS_Lamp_Bar_Set_STS_RGB_Color_FadeOut(color, lum_level, LED_COUNT/2); - HAL_Delay(100); - lum_level += 10; - } while (lum_level < 99); - STS_Lamp_Bar_Set_Dark(); + + HAL_Delay(2000); + //lum_level += 5; + //} while (lum_level < 200); + //STS_Lamp_Bar_Set_Dark(); + STS_Lamp_Bar_Refresh(); } APP_LOG(TS_OFF, VLEVEL_M, "\r\n [#1] RGB Space Fade In Testing Start\r\n"); for (color=STS_GREEN; color < STS_COLOR_MAX; color++) { - lum_level = 10; - do { + lum_level = 250; + // do { + APP_LOG(TS_OFF, VLEVEL_M, "\rFade In %04d\r", lum_level); STS_Lamp_Bar_Set_STS_RGB_Color_FadeIn(color, lum_level, LED_COUNT/2); - HAL_Delay(100); - lum_level += 10; - } while (lum_level < 99); - STS_Lamp_Bar_Set_Dark(); + + HAL_Delay(2000); + //lum_level += 5; + //} while (lum_level < 200); + //STS_Lamp_Bar_Set_Dark(); + STS_Lamp_Bar_Refresh(); } APP_LOG(TS_OFF, VLEVEL_M, "\r\n [#1] RGB Space Fade Out Fade In Testing Finished\r\n"); @@ -393,16 +399,18 @@ void STS_Lamp_Bar_Self_Test(void) uint8_t color=0, lum_level=DEFAULT_LUMINANCE_LEVEL; APP_LOG(TS_OFF, VLEVEL_H, "\r\n YunHorn STS Indicative Lamp Self Test\r\n"); -/* + STS_Lamp_Bar_Self_Test_Simple(); APP_LOG(TS_OFF, VLEVEL_H, "\r\n [#2] Scoller Testing\r\n"); - lum_level=50; for (color = STS_GREEN; color < STS_COLOR_MAX; color++) { - STS_Lamp_Bar_Scoller(color, lum_level); + //for (lum_level=1; lum_level<250; lum_level+=50) + { + STS_Lamp_Bar_Scoller(color, lum_level); + } } -*/ + STS_Lamp_Bar_Self_Test_Fade(); APP_LOG(TS_OFF, VLEVEL_H, "\r\n [##] YunHorn STS Indicative Lamp Self Test Finished\r\n"); @@ -424,7 +432,7 @@ void sts_rgb_unit_test(void) STS_Lamp_Bar_Set_Dark(); - STS_Lamp_Bar_Full_Color_Gradient(); + //STS_Lamp_Bar_Full_Color_Gradient(); STS_Lamp_Bar_Self_Test(); diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index d65bf64..b4494ca 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -129,7 +129,7 @@ volatile sts_cfg_nvm_t sts_cfg_nvm = { 0x6E, //P[18] RSS_CFG_BG_MOTION_NOISE 2025-04-14 0x8C, //P[19] RSS SLIDING WINDOW CFG: 0x08 AS threshold, 0x0C as window size }, // above 20 bytes -#ifdef ATAL +#if defined(ATAL) 0x20, // 0x20 occupy(red:2) | color vacant (dark:0) for ATAL-HK 20241230 #elif defined(FADEOUT) 0x27, // 0x20 occupy(red:2) | color vacant (white:7) for SWIRE INDIGO1 BEIJING diff --git a/STM32CubeIDE/Release/STS_O7.bin b/STM32CubeIDE/Release/STS_O7.bin index 71725591c91fca5dade8a1be187c74353b523b84..68695936ab6ebbb7f2053c5d88c845e08fe930a9 100644 GIT binary patch delta 36053 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