From 606ce17d9a0b8b8ec6a9d712765cdb7902d30069 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Thu, 8 Aug 2024 23:42:56 +0800 Subject: [PATCH] update --- usrc/board/share/h2o2_sensor_driver.cpp | 41 ++++++++++++---------- .../large_space_dm_power_ctrl_board_pp.cpp | 3 +- .../share/h2o2_sensor_pp.cpp | 1 + zsdk | 2 +- 4 files changed, 27 insertions(+), 20 deletions(-) diff --git a/usrc/board/share/h2o2_sensor_driver.cpp b/usrc/board/share/h2o2_sensor_driver.cpp index 0ffed30..dd71390 100644 --- a/usrc/board/share/h2o2_sensor_driver.cpp +++ b/usrc/board/share/h2o2_sensor_driver.cpp @@ -20,14 +20,16 @@ void H2O2SensorDriver::initialize(UART_HandleTypeDef* huart, ADC_HandleTypeDef* m_H2O2Adc.initialize("H2O2Adc", hadc, adcChannel); m_HMP110.init(&m_ModbusBlockHost); + m_detectId = 240; if (m_HMP110.ping(1)) { + ZLOGI(TAG, "H2O2 HMP110 Sensor detect id: 1"); m_detectId = 1; } if (m_HMP110.ping(240)) { m_detectId = 240; } m_HMP110.setid(m_detectId); - ZLOGI(TAG, "H2O2 HMP110 Sensor detect id: %d", m_detectId); + // ZLOGI(TAG, "H2O2 HMP110 Sensor detect id: %d", m_detectId); osThreadDef(H2O2CaptureThread, c_onH2O2CaptureThread, osPriorityNormal, 0, 1024); H2O2CaptureThreadId = osThreadCreate(osThread(H2O2CaptureThread), this); @@ -62,19 +64,24 @@ int32_t H2O2SensorDriver::h2o2_sensor_data(report_h2o2_data_t* readdata) { h2o2adcData = m_H2O2Adc.getCacheVal(); m_HMP110.read_cache_sensor_data(&sensordata); - readdata->sensor_error = m_HMP110.read_cache_errorcode() != 0; - readdata->h2o2 = h2o2adcToPPM(h2o2adcData); - readdata->humid = sensordata.rh; - readdata->temp = sensordata.temp; - readdata->saturation = 0; - ZLOGI(TAG, "ppm:%d, rh:%d, temp:%d, df_ptemp:%d, ah:%d, mr:%d, wbt:%d, eh:%d", // - readdata->h2o2, // - sensordata.rh, // - sensordata.temp, // - sensordata.df_ptemp, // - sensordata.ah, // - sensordata.mr, // - sensordata.wet_bulb_temp, // + if (m_detectId > 0) { + readdata->sensor_error = m_HMP110.read_cache_errorcode() != 0; + } else { + readdata->sensor_error = 1; + } + readdata->h2o2 = h2o2adcToPPM(h2o2adcData); + readdata->humid = sensordata.rh; + readdata->temp = sensordata.temp; + readdata->saturation = 0; + ZLOGI(TAG, "ppm:%d(adc:%d), rh:%d, temp:%d, df_ptemp:%d, ah:%d, mr:%d, wbt:%d, eh:%d", // + readdata->h2o2, // + h2o2adcData, // + sensordata.rh, // + sensordata.temp, // + sensordata.df_ptemp, // + sensordata.ah, // + sensordata.mr, // + sensordata.wet_bulb_temp, // sensordata.enthalpy); return 0; } @@ -82,9 +89,7 @@ int32_t H2O2SensorDriver::h2o2_sensor_data(report_h2o2_data_t* readdata) { void H2O2SensorDriver::onH2O2CaptureThread() { while (1) { osDelay(1000); - if (m_detectId > 0) { - m_H2O2Adc.updateAdcValToCache(); - m_HMP110.updateSensorDataAndErrorcode(); - } + m_H2O2Adc.updateAdcValToCache(); + m_HMP110.updateSensorDataAndErrorcode(); } } \ No newline at end of file diff --git a/usrc/protocol_processer_impl/large_space_dm_power_ctrl_board_pp.cpp b/usrc/protocol_processer_impl/large_space_dm_power_ctrl_board_pp.cpp index ac99a7d..f2ea3fe 100644 --- a/usrc/protocol_processer_impl/large_space_dm_power_ctrl_board_pp.cpp +++ b/usrc/protocol_processer_impl/large_space_dm_power_ctrl_board_pp.cpp @@ -28,7 +28,7 @@ void LargeSpaceDmPowerCtrlBoardPP::initialize() { BIND_FN(H2O2SensorPP, h2o2_sensor_read_sub_ic_errorcode); BIND_FN(H2O2SensorPP, h2o2_sensor_read_sub_ic_reg); - // H2O2SensorPP::ins()->initialize(&DEVICE->m_h2o2Sensor); + H2O2SensorPP::ins()->initialize(&DEVICE->m_h2o2Sensor); } /*********************************************************************************************************************** @@ -45,6 +45,7 @@ void LargeSpaceDmPowerCtrlBoardPP::heater_ctrl_safe_valve(ProcessContext* cxt) { } void LargeSpaceDmPowerCtrlBoardPP::heater_read_electric_current(ProcessContext* cxt) { // auto val = DEVICE->heater_read_electric_current(); + // ZLOGI(TAG, "heater_read_electric_current: %d", val); zcanbus_send_ack(cxt->packet, (uint8_t*)val, sizeof(val)); } void LargeSpaceDmPowerCtrlBoardPP::heater_read_temperature_data(ProcessContext* cxt) { // diff --git a/usrc/protocol_processer_impl/share/h2o2_sensor_pp.cpp b/usrc/protocol_processer_impl/share/h2o2_sensor_pp.cpp index bcf5e37..7501a48 100644 --- a/usrc/protocol_processer_impl/share/h2o2_sensor_pp.cpp +++ b/usrc/protocol_processer_impl/share/h2o2_sensor_pp.cpp @@ -21,6 +21,7 @@ static void onPacketReportTimer(void const* argument) { void H2O2SensorPP::initialize(H2O2SensorDriver* h2o2sd) { m_h2o2sd = h2o2sd; + ZASSERT(m_h2o2sd != NULL); osTimerDef(PacketReportTimer, onPacketReportTimer); PacketReportTimerId = osTimerCreate(osTimer(PacketReportTimer), osTimerPeriodic, NULL); osTimerStart(PacketReportTimerId, 5000); diff --git a/zsdk b/zsdk index 9f85aa3..0513111 160000 --- a/zsdk +++ b/zsdk @@ -1 +1 @@ -Subproject commit 9f85aa311eb817787e4064d29f57d7bb724d45e7 +Subproject commit 0513111d9c06df9f12db67e96b54fd22cfcf4fe5