From 827d08456c9ba0ae748d621dd1df70731e520231 Mon Sep 17 00:00:00 2001 From: dgjames <1943357252@qq.com> Date: Fri, 17 Jan 2025 19:52:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E9=97=AA=E7=83=81=E5=87=BD?= =?UTF-8?q?=E6=95=B0=EF=BC=88=E7=BA=BF=E7=A8=8B=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- board/ports/led_matrix/drv_matrix_led.c | 58 +++++++++++++++++-------- board/ports/led_matrix/drv_matrix_led.h | 8 +++- 2 files changed, 48 insertions(+), 18 deletions(-) diff --git a/board/ports/led_matrix/drv_matrix_led.c b/board/ports/led_matrix/drv_matrix_led.c index e9b99ae..b059803 100644 --- a/board/ports/led_matrix/drv_matrix_led.c +++ b/board/ports/led_matrix/drv_matrix_led.c @@ -59,7 +59,9 @@ const RGBColor_TypeDef LED_OFF = {0, 0, 0}; const RGBColor_TypeDef LED_ON = {255, 255, 255}; //灯处于特定颜色还是闪烁状态 -uint8_t LED_staue[LED_NUM]={0}; +uint8_t LED_Blink_Staue[LED_NUM]={0}; +// 灯闪烁颜色缓存 +RGBColor_TypeDef LED_Blink_Color[LED_NUM] = {0}; // 灯颜色缓存 RGBColor_TypeDef RGB_Data[LED_NUM] = {0}; @@ -171,26 +173,48 @@ void LED_Set(uint16_t LedId, RGBColor_TypeDef Color) RGB_Data[LedId].B = Color.B; RGB_Reflash(); } -void LED_Toggle(uint16_t LedId, RGBColor_TypeDef Color) +void LED_Blink(uint16_t LedId, RGBColor_TypeDef Color) { - while(1) - { - LED_Set(LedId,Color); - rt_thread_mdelay(500); - LED_Set(LedId,LED_OFF); - rt_thread_mdelay(500); - } + LED_Blink_Staue[LedId]=1; + LED_Blink_Color[LedId]=Color; + // while(1) + // { + // LED_Set(LedId,Color); + // rt_thread_mdelay(500); + // LED_Set(LedId,LED_OFF); + // rt_thread_mdelay(500); + // } } void LED_LITTLE_TEST(void) { - LED_Set(1,LED_RED); - rt_thread_mdelay(4000); - LED_Toggle(1,LED_RED); - rt_thread_mdelay(4000); - LED_Set(1,LED_RED); - rt_thread_mdelay(4000); - LED_Toggle(1,LED_RED); - rt_thread_mdelay(4000); + uint8_t LED_Blink_ON=1; + while(1) + { + for(int LedId=0;LedId