|
@ -63,7 +63,7 @@ shared_ptr<ZCanReceiverCMD> ZCanReceiverHost::sendcmdblock(shared_ptr<ZCanReceiv |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void ZCanReceiverHost::sendcmd(uint16_t packetindex, uint16_t cmdid, uint8_t subcmdid, uint8_t *data, size_t len) { |
|
|
void ZCanReceiverHost::sendcmd(uint16_t packetindex, uint16_t cmdid, uint8_t subcmdid, uint8_t *data, size_t len) { |
|
|
Cmdheader_t *header = (Cmdheader_t *)m_sendbuf; |
|
|
|
|
|
|
|
|
transmit_disinfection_protocol_header_t *header = (transmit_disinfection_protocol_header_t *)m_sendbuf; |
|
|
header->packetindex = packetindex; |
|
|
header->packetindex = packetindex; |
|
|
header->cmdid = cmdid; |
|
|
header->cmdid = cmdid; |
|
|
header->subcmdid = subcmdid; |
|
|
header->subcmdid = subcmdid; |
|
@ -73,7 +73,7 @@ void ZCanReceiverHost::sendcmd(uint16_t packetindex, uint16_t cmdid, uint8_t sub |
|
|
// for (size_t i = 0; i < len; i++) {
|
|
|
// for (size_t i = 0; i < len; i++) {
|
|
|
// printf("%02x ", data[i]);
|
|
|
// printf("%02x ", data[i]);
|
|
|
// }
|
|
|
// }
|
|
|
sendPacket(m_sendbuf, sizeof(Cmdheader_t) + len); |
|
|
|
|
|
|
|
|
sendPacket(m_sendbuf, sizeof(transmit_disinfection_protocol_header_t) + len); |
|
|
} |
|
|
} |
|
|
void ZCanReceiverHost::sendPacket(uint8_t *packet, size_t len) { |
|
|
void ZCanReceiverHost::sendPacket(uint8_t *packet, size_t len) { |
|
|
/**
|
|
|
/**
|
|
@ -114,7 +114,7 @@ bool ZCanReceiverHost::sendPacketSub(int npacket, int packetIndex, uint8_t *pack |
|
|
|
|
|
|
|
|
void ZCanReceiverHost::processOnePacket(CanPacketRxBuffer *rxbuf, uint8_t *packet, size_t len) { //
|
|
|
void ZCanReceiverHost::processOnePacket(CanPacketRxBuffer *rxbuf, uint8_t *packet, size_t len) { //
|
|
|
|
|
|
|
|
|
Cmdheader_t *header = (Cmdheader_t *)packet; |
|
|
|
|
|
|
|
|
transmit_disinfection_protocol_header_t *header = (transmit_disinfection_protocol_header_t *)packet; |
|
|
// uint8_t from = rxbuf->id;
|
|
|
// uint8_t from = rxbuf->id;
|
|
|
|
|
|
|
|
|
shared_ptr<ZCanReceiverCMD> rx = make_shared<ZCanReceiverCMD>(); |
|
|
shared_ptr<ZCanReceiverCMD> rx = make_shared<ZCanReceiverCMD>(); |
|
@ -122,7 +122,7 @@ void ZCanReceiverHost::processOnePacket(CanPacketRxBuffer *rxbuf, uint8_t *packe |
|
|
rx->cmdid = header->cmdid; |
|
|
rx->cmdid = header->cmdid; |
|
|
rx->subcmdid = header->subcmdid; |
|
|
rx->subcmdid = header->subcmdid; |
|
|
rx->packetType = header->packetType; |
|
|
rx->packetType = header->packetType; |
|
|
rx->len = len - sizeof(Cmdheader_t); |
|
|
|
|
|
|
|
|
rx->len = len - sizeof(transmit_disinfection_protocol_header_t); |
|
|
memcpy(rx->data, header->data, rx->len); |
|
|
memcpy(rx->data, header->data, rx->len); |
|
|
|
|
|
|
|
|
/**
|
|
|
/**
|
|
@ -138,6 +138,12 @@ void ZCanReceiverHost::processOnePacket(CanPacketRxBuffer *rxbuf, uint8_t *packe |
|
|
m_txContext.isReady = true; |
|
|
m_txContext.isReady = true; |
|
|
} |
|
|
} |
|
|
return; |
|
|
return; |
|
|
|
|
|
} else if (header->packetType == kpt_status_report) { |
|
|
|
|
|
if (header->cmdid == kreport_h2o2_sensor_data) { |
|
|
|
|
|
report_h2o2_data_t *h2o2data = (report_h2o2_data_t *)rx->data; |
|
|
|
|
|
logger->info("[h2o2 sensor] id:{} e:{} h2o2:{} temp:{} humid:{} saturation:{}", //
|
|
|
|
|
|
h2o2data->sensorid, h2o2data->sensor_error, h2o2data->h2o2, h2o2data->temp, h2o2data->humid, h2o2data->saturation); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
/**
|
|
|
/**
|
|
|
* @brief 处理其他类型的消息 |
|
|
* @brief 处理其他类型的消息 |
|
|