--- fix lamp bar color issue
This commit is contained in:
parent
d6d0b04ab0
commit
676b281450
|
@ -141,9 +141,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
|
||||
|
|
|
@ -52,8 +52,17 @@ enum sts_lamp_color {
|
|||
|
||||
STS_GREEN_DARK=0x10, //0b0001 0000 GREEN DARK
|
||||
STS_RED_DARK=0x20, //0b0010 0000,
|
||||
STS_RED_GREEN=0x21,
|
||||
STS_RED_BLUE=0x23, //0b0010 0011 RED BLUE FLASH
|
||||
STS_BLUE_DARK=0x30 //0b0011 0000 BLUE DARK
|
||||
STS_BLUE_DARK=0x30, //0b0011 0000 BLUE DARK
|
||||
STS_BLUE_GREEN=0x31,
|
||||
|
||||
STS_GREENDARK=0x41, // GREEN FLASH 'A'
|
||||
STS_REDDARK=0x42, // RED FLASH 'B'
|
||||
STS_REDBLUE=0x43, // RED/BLUE FLASH 'C'
|
||||
STS_BLUEDARK=0x44, // BLUE FLASH 'D'
|
||||
STS_REDGREEN=0x45, // RED/GREEN FLASH 'E'
|
||||
STS_BLUEGREEN=0x46 // BLUE/GREEN FLASH 'F'
|
||||
};
|
||||
|
||||
enum sts_oo_work_mode {
|
||||
|
|
|
@ -32,8 +32,8 @@
|
|||
#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 {
|
||||
|
@ -99,7 +99,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);
|
||||
}
|
||||
|
||||
|
@ -126,8 +126,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
|
||||
//UTIL_MEM_set_8((void*)rgb_buf.GRB,ZERO_PULSE,(WS2812B_DATA_LEN+LED_DATA_LEN));
|
||||
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);
|
||||
STS_WS2812B_Refresh();
|
||||
}
|
||||
|
@ -149,7 +148,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,0x00,(WS2812B_DATA_LEN+RESET_PULSE));
|
||||
|
||||
for(i = 0; i < STS_LAMP_BAR_LED_NUM; i++)
|
||||
{
|
||||
|
@ -197,6 +196,28 @@ void STS_Lamp_Bar_Set_STS_RGB_Color(uint8_t sts_lamp_color, uint8_t lum)
|
|||
case STS_WHITE:
|
||||
STS_Lamp_Bar_Set_RGB_Color(lum, lum, lum);
|
||||
break;
|
||||
case STS_COLOR_MAX:
|
||||
sts_lamp_bar_color = STS_RED_BLUE;
|
||||
break;
|
||||
case STS_GREENDARK:
|
||||
sts_lamp_bar_color = STS_GREEN_DARK;
|
||||
break;
|
||||
case STS_REDDARK:
|
||||
sts_lamp_bar_color = STS_RED_DARK;
|
||||
break;
|
||||
case STS_REDBLUE:
|
||||
sts_lamp_bar_color = STS_RED_BLUE;
|
||||
break;
|
||||
case STS_BLUEDARK:
|
||||
sts_lamp_bar_color = STS_BLUE_DARK;
|
||||
break;
|
||||
case STS_REDGREEN:
|
||||
sts_lamp_bar_color = STS_RED_GREEN;
|
||||
break;
|
||||
case STS_BLUEGREEN:
|
||||
sts_lamp_bar_color = STS_BLUE_GREEN;
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -556,15 +556,15 @@ int sts_presence_rss_fall_rise_detection(void)
|
|||
|
||||
//#ifdef LOG_RSS
|
||||
APP_LOG(TS_OFF, VLEVEL_L,"\r\nSensor at Ceiling Height: %u mm\r\n",(uint16_t)sts_sensor_install_height);
|
||||
|
||||
APP_LOG(TS_OFF, VLEVEL_L,"\r\n|Motion Distance Zone| ##### |Height cm|\r\n");
|
||||
for (uint8_t k=0; k<12; k++) {
|
||||
if (motion_in_hs_zone[k][thiscnt]>0) {
|
||||
|
||||
APP_LOG(TS_OFF, VLEVEL_L,"\r\nMotion Distance Zone: %2u %4u Height< %4u cm", k, (uint8_t)motion_in_hs_zone[k][thiscnt], (int)(k+1)*40);
|
||||
APP_LOG(TS_OFF, VLEVEL_L,"\r\n| %2u | %4u | %4u |\r\n", k, (uint8_t)motion_in_hs_zone[k][thiscnt], (int)(k+1)*40);
|
||||
}
|
||||
else
|
||||
{
|
||||
APP_LOG(TS_OFF, VLEVEL_L,"\r\nMotion Distance Zone: %2u %4s", k, " ");
|
||||
APP_LOG(TS_OFF, VLEVEL_L,"\r\n| %2u | | |\r\n", k);
|
||||
}
|
||||
}
|
||||
//#endif
|
||||
|
|
|
@ -1161,7 +1161,7 @@ static void OnYunhornSTSLampBarColorTimerEvent(void *context)
|
|||
//uint8_t lum=DEFAULT_LUMINANCE_LEVEL;
|
||||
//HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin); /* STS GREEN */
|
||||
//if ((sts_work_mode != STS_WIRED_MODE))
|
||||
uint8_t high4=(sts_lamp_bar_color>>4)&0x0f, low4=sts_lamp_bar_color&0x0f;
|
||||
uint8_t high4=(sts_lamp_bar_color>>4)&0x0f, low4=sts_lamp_bar_color&0x07;
|
||||
|
||||
if (high4==0)
|
||||
{
|
||||
|
@ -1416,6 +1416,8 @@ static void OnJoinRequest(LmHandlerJoinParams_t *joinParams)
|
|||
APP_LOG(TS_OFF, VLEVEL_H, "###### U/L FRAME:JOIN | DR:%d | PWR:%d\r\n", joinParams->Datarate, joinParams->TxPower);
|
||||
}
|
||||
|
||||
if (STS_LoRa_WAN_Joined)
|
||||
{
|
||||
heart_beat_timer = 1;
|
||||
//SendTxData();
|
||||
UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0);
|
||||
|
@ -1430,6 +1432,7 @@ static void OnJoinRequest(LmHandlerJoinParams_t *joinParams)
|
|||
STS_SENSOR_Distance_Test_Process();
|
||||
|
||||
APP_LOG(TS_OFF, VLEVEL_H, "\r\nRSS Measured Distance=[%u] mm \r\n", (uint16_t)sts_distance_rss_distance);
|
||||
}
|
||||
|
||||
/* USER CODE END OnJoinRequest_1 */
|
||||
}
|
||||
|
@ -2273,7 +2276,8 @@ void USER_APP_AUTO_RESPONDER_Parse(char *tlv_buf, uint8_t tlv_buf_size)
|
|||
APP_LOG(TS_OFF, VLEVEL_L, "\r\n Cloud Color Set to %u \r\n", sts_cloud_netcolor);
|
||||
}
|
||||
sts_service_mask = STS_SERVICE_MASK_L0;
|
||||
sts_lamp_bar_color = sts_cloud_netcolor;
|
||||
if ((sts_cloud_netcolor >= 11)&&(sts_cloud_netcolor<=36)) // 'A'-'Z'
|
||||
sts_lamp_bar_color = (sts_cloud_netcolor+0x30);
|
||||
sts_cfg_nvm.work_mode = (uint8_t)sts_work_mode;
|
||||
sts_cfg_nvm.sts_service_mask = (uint8_t)sts_service_mask;
|
||||
OnStoreSTSCFGContextRequest();
|
||||
|
|
Loading…
Reference in New Issue