|
@@ -561,7 +561,16 @@ void TerminalSlave485_Send_Data(uint8_t *buf,uint16_t len)
|
|
TerminalSlave485_TX_Set(1); //设置为发送模式
|
|
TerminalSlave485_TX_Set(1); //设置为发送模式
|
|
//HAL_UART_Transmit(&huart1,buf,len,1000);//串口1发送数据
|
|
//HAL_UART_Transmit(&huart1,buf,len,1000);//串口1发送数据
|
|
// TerminalSlave485_TX_Set(0); //设置为接收模式
|
|
// TerminalSlave485_TX_Set(0); //设置为接收模式
|
|
- memcpy(terminal_buf,buf,len);
|
|
|
|
|
|
+ if(Pass41SensorScanParam.rx_buf[0] > 0){
|
|
|
|
+ memcpy(terminal_buf,Pass41SensorScanParam.rx_buf,5);
|
|
|
|
+ terminal_buf[2] = len;
|
|
|
|
+ memcpy(terminal_buf+5,buf,len);
|
|
|
|
+ len += 5;
|
|
|
|
+ Pass41SensorScanParam.rx_buf[0] = 0;
|
|
|
|
+ }else{
|
|
|
|
+ memcpy(terminal_buf,buf,len);
|
|
|
|
+ }
|
|
|
|
+
|
|
if(HAL_UART_Transmit_IT(&huart1,terminal_buf,len)!=HAL_OK)
|
|
if(HAL_UART_Transmit_IT(&huart1,terminal_buf,len)!=HAL_OK)
|
|
{
|
|
{
|
|
TerminalSlave485_TX_Set(0); //设置为接收模式
|
|
TerminalSlave485_TX_Set(0); //设置为接收模式
|
|
@@ -1335,9 +1344,9 @@ void DoInternalSensorScanAndPost()
|
|
static int nstep = 0;
|
|
static int nstep = 0;
|
|
static uint32_t flowID = 0;
|
|
static uint32_t flowID = 0;
|
|
|
|
|
|
- if(++step % SensorScanParam.step == 0){
|
|
|
|
- for(int n=0; n<SensorScanParam.cmd_num; n++) {
|
|
|
|
- switch (SensorScanParam.cmd_arr[n]){
|
|
|
|
|
|
+ if(++step % Pass41SensorScanParam.step == 0){
|
|
|
|
+ for(int n=0; n<Pass41SensorScanParam.cmd_num; n++) {
|
|
|
|
+ switch (Pass41SensorScanParam.cmd_arr[n]){
|
|
case 0x40:
|
|
case 0x40:
|
|
xlen = BuildSealTxCmd(pSendBuf, emergy?NULL:&emergy);
|
|
xlen = BuildSealTxCmd(pSendBuf, emergy?NULL:&emergy);
|
|
pSendBuf += xlen;
|
|
pSendBuf += xlen;
|
|
@@ -1364,7 +1373,7 @@ void DoInternalSensorScanAndPost()
|
|
emergy = 0;
|
|
emergy = 0;
|
|
flowID++;
|
|
flowID++;
|
|
} else {
|
|
} else {
|
|
- if(++nstep % SensorScanParam.nstep == 0) {
|
|
|
|
|
|
+ if(++nstep % Pass41SensorScanParam.nstep == 0) {
|
|
TerminalSlave485_Send_Data(USART1_TX_BUF,ylen);
|
|
TerminalSlave485_Send_Data(USART1_TX_BUF,ylen);
|
|
flowID++;
|
|
flowID++;
|
|
}
|
|
}
|
|
@@ -1385,6 +1394,14 @@ void Data_analysis(void)
|
|
usart1_rx_flag=0;
|
|
usart1_rx_flag=0;
|
|
usart_timesec=0;
|
|
usart_timesec=0;
|
|
f3_flag=0;
|
|
f3_flag=0;
|
|
|
|
+
|
|
|
|
+ // xy,匹配到0x0139的头,表示是41串口透传下行的数据
|
|
|
|
+ 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);
|
|
|
|
+ rx1_len -=5;
|
|
|
|
+ }
|
|
|
|
+
|
|
if((USART1_RX_BUF[0]==':') && (USART1_RX_BUF[1]==0xa5) && (USART1_RX_BUF[1]==0xa5))
|
|
if((USART1_RX_BUF[0]==':') && (USART1_RX_BUF[1]==0xa5) && (USART1_RX_BUF[1]==0xa5))
|
|
{
|
|
{
|
|
memcpy(USART1_RX_BUF,USART1_RX_BUF+1,rx1_len-5);
|
|
memcpy(USART1_RX_BUF,USART1_RX_BUF+1,rx1_len-5);
|