|
@@ -561,6 +561,8 @@ void TerminalSlave485_Send_Data(uint8_t *buf,uint16_t len)
|
|
|
TerminalSlave485_TX_Set(1); //设置为发送模式
|
|
|
//HAL_UART_Transmit(&huart1,buf,len,1000);//串口1发送数据
|
|
|
// TerminalSlave485_TX_Set(0); //设置为接收模式
|
|
|
+
|
|
|
+ // 如果来自41串口的报文回应,需要粘合原样5字节头部,其中将长度内容适配下即可
|
|
|
if(Pass41SensorScanParam.rx_buf[0] > 0){
|
|
|
memcpy(terminal_buf,Pass41SensorScanParam.rx_buf,5);
|
|
|
terminal_buf[2] = len;
|
|
@@ -1395,7 +1397,11 @@ void Data_analysis(void)
|
|
|
usart_timesec=0;
|
|
|
f3_flag=0;
|
|
|
|
|
|
- // xy,匹配到0x0139的头,表示是41串口透传下行的数据
|
|
|
+ // xy,匹配到0x0139为首的5字节的头,表示是41串口透传下行的数据
|
|
|
+ // 5字节的头定义为:
|
|
|
+ // [0][1] -- 01 39
|
|
|
+ // [2] -- 透传有效数据长度
|
|
|
+ // [3][4] -- 流水号
|
|
|
if( (USART1_RX_BUF[0]==0x01) && (USART1_RX_BUF[1]==0x39)){
|
|
|
memcpy(Pass41SensorScanParam.rx_buf,USART1_RX_BUF,5);
|
|
|
memcpy(USART1_RX_BUF,USART1_RX_BUF+5,rx1_len-5);
|