enhanced for tx and heart-beat manage

This commit is contained in:
Yunhorn 2024-01-04 14:06:21 +08:00
parent f83e63a31a
commit 4b7e0d51a5
5 changed files with 39 additions and 21 deletions

View File

@ -626,8 +626,9 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
#ifdef YUNHORN_STS_O5_ENABLED
UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSEventP1), CFG_SEQ_Prio_0);
#endif
UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0);
#else
#ifdef SOAP_LEVEL
uint8_t pinstate = HAL_GPIO_ReadPin(BUT1_GPIO_Port,BUT1_Pin);
APP_LOG(TS_OFF, VLEVEL_M, "## BUTTON-1 DETECTED: %2d \r\n", pinstate);
@ -637,11 +638,11 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0);
} else
{
#ifdef LED_ONBOARD
#ifdef LED_ONBOARD
LED_ON;
HAL_Delay(20);
LED_OFF;
#endif
#endif
}
#endif
@ -654,9 +655,9 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
break;
case BUT3_Pin:
#if defined(STM32WL55xx)
UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaStoreContextEvent), CFG_SEQ_Prio_0);
#endif
break;
#if (defined(STS_USE_TOF_VL53L1X) ||defined(STS_USE_TOF_VL53L0X))
case TOF_INT_EXTI_PIN:
@ -797,12 +798,12 @@ static void SendTxData(void)
#endif
#if defined(YUNHORN_STS_M1A_ENABLED)
// UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSEventP9), CFG_SEQ_Prio_0);
//UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSEventP9), CFG_SEQ_Prio_0);
STS_M1A_SENSOR_Read(&m1a_data);
m1a_data.battery_Pct = (uint8_t)(99*batteryLevel/254);
// STS_R0_SENSOR_Read(&r0_data);
#endif
@ -817,7 +818,6 @@ static void SendTxData(void)
//r0_data.battery_Pct = batteryLevel; //(uint8_t)(99*batteryLevel/254);
// EnvSensors_Read(&sensor_data);
// APP_LOG(TS_ON, VLEVEL_M, "\r\nVDDA: %d\r\n", batteryLevel);
// APP_LOG(TS_ON, VLEVEL_M, "\r\ntemp: %d\r\n", (int16_t)(sensor_data.temperature));

View File

@ -32,6 +32,11 @@
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>Doc/decoder.js</name>
<type>1</type>
<locationURI>copy_PARENT/decoder.js</locationURI>
</link>
<link>
<name>Doc/readme.txt</name>
<type>1</type>

View File

@ -5,7 +5,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-269652060479141546" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1435577628396038727" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
@ -16,7 +16,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-269652060479141546" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1435577628396038727" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>

View File

@ -98,14 +98,24 @@ function Decode(fPort, data, variables) {
}
// 0x59,0x44 report configed heart-beat interval
if (bytes[0] === 0x59) {
if (bytes[1] === 0x44) {
if (bytes[1] === 0x53) {
return [
{
Type: "Heart Beat Interval",
HB_interval: (bytes[2] - 0x30) * 10 + (bytes[3] - 0x30),
HB_interval_unit: String.fromCharCode(bytes[4]),
}
];
}
else if (bytes[1] === 0x44) {
return [
{
Type: "Periodic Upload Interval",
Upload_interval: (bytes[2] - 0x30) * 10 + (bytes[3] - 0x30),
Upload_interval_unit: String.fromCharCode(bytes[4]),
}
];
}
}
}

View File

@ -323,15 +323,15 @@ static void readTempValues(void)
void blackOutFilter(void)
{
float temp1=0.0, temph1=0.0, tempv1=0.0;
/*
if (maxTemp < normalPeopleTemp)
if (maxTemp > humanTempThreshold)
{
blackOutTag =0;
blackOutTag =1;
} else
{
blackOutTag =1;
blackOutTag =0;
}
*/
// ignore edge of FOV
waterSpillCount =0;
detectCycle = 0;
@ -415,7 +415,7 @@ void STS_M1A_SENSOR_Read(STS_M1A_SensorDataTypeDef *m1a_data)
//memset(order + m1a_data->spot_cnt, 0x0, sizeof(tempBuffer)-m1a_data->spot_cnt); // fill non-spot position to zero
memset(tempBuffer,0,sizeof(tempBuffer));
memset(tempBuffer,0x0,sizeof(tempBuffer));
sprintf(tempBuffer,(char *)"\r\n## Read Sensor Spot CNT=%4d (areas) \r\n## V_cnt=%2d (lane) H_cnt=%2d (lane) \r\n## Spillage Level =%2.2f%% \r\n## averageTempInner=%2.2f C averageTemp=%2.2f C centerTemp=%2.2f C MinTemp=%2.2f C maxTemp=%2.2f C \r\n ######## Gap_Average= %2.2f Gap_Inner = %2.2f \r\n",
m1a_data->waterSpillCount, v_water_cnt, h_water_cnt, (float)(m1a_data->spillage_level), (float)averageTempInner, (float)averageTemp, (float)centerTemp, (float)minTemp, (float)maxTemp, (float)(averageTemp - minTemp),(float)(averageTempInner - minTemp));
@ -425,8 +425,8 @@ void STS_M1A_SENSOR_Read(STS_M1A_SensorDataTypeDef *m1a_data)
if (m1a_data->spot_cnt !=0 )
{
for (uint8_t i=0; i< 4; i++) {
memset(tempBuffer,0,sizeof(tempBuffer));
sprintf(tempBuffer, (char *) " Top {%1d} =order =%2u X=%2u : Y=%2u \r\n", i, order[i],
memset(tempBuffer,0x0,sizeof(tempBuffer));
sprintf(tempBuffer, (char *) " Top {%2u} : order =%2u X=%2u : Y=%2u \r\n", (uint8_t)i, (uint8_t)(order[i]),
(uint8_t)(order[i]%(10)), (uint8_t)(order[i]/10));
APP_LOG(TS_OFF, VLEVEL_H,(char *)tempBuffer);
}
@ -446,7 +446,7 @@ void mlx90640_display_process(void)
blackOutFilter();
drawPicture();
#if 1
#if 0
if (blackOutTag == 0)
{
//BSP_LCD_DisplayOn();
@ -463,7 +463,10 @@ void mlx90640_display_process(void)
//BSP_LCD_DisplayOff();
}
#endif
APP_LOG(TS_OFF, VLEVEL_H, "Water Spill Detected Level = %d of 600 \r\n", waterSpillCount);
if (blackOutTag == 0)
{
APP_LOG(TS_OFF, VLEVEL_H, "Water Spill Detected Level = %u of 600 \r\n", waterSpillCount);
}
}
uint8_t mlx90640_bringup_test(void)