From a6e5c60a9ec30574bf7c3d584046444b15f8680f Mon Sep 17 00:00:00 2001 From: zhyinch <zhyinch@gmail.com> Date: 星期四, 10 二月 2022 16:29:20 +0800 Subject: [PATCH] V1.61 修改成中断模式,测试不丢包。 --- 源码/核心板/Src/application/modbus.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/modbus.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/modbus.c" index 0fd9167..6f05845 100644 --- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/modbus.c" +++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/modbus.c" @@ -26,7 +26,7 @@ void Modbus_RegMap(void) { u16 i; - RS485_Addr=g_com_map[DEV_ID]; +// RS485_Addr=g_com_map[DEV_ID]; for(i=0;i<MODBUS_SIZE;i++) { Modbus_HoldReg[i]=i; @@ -513,7 +513,7 @@ RS485_TX_BUFF[2]=RegNum*2; for(i=0;i<RegNum;i++) { - if(i<100) + if(startRegAddr<100) { RS485_TX_BUFF[3+i*2]=(Modbus_HoldReg[startRegAddr+i]>>8)&0xFF;// /////////先发送高字节--在发送低字节 RS485_TX_BUFF[4+i*2]=(Modbus_HoldReg[startRegAddr+i])&0xFF; // @@ -545,7 +545,7 @@ { if(startRegAddr<600) { - memcpy(&g_com_map[startRegAddr-100],&RS485_RX_BUFF[4],2); + g_com_map[startRegAddr-100]=RS485_RX_BUFF[4]<<8|RS485_RX_BUFF[5]; } }else{ Modbus_HoldReg[startRegAddr]=RS485_RX_BUFF[4]<<8;//高字节在前 ////////修改为高字节在前,低字节在后 -- Gitblit v1.9.3