| 
 
中级会员  
 
	积分339金钱339 注册时间2015-10-22在线时间129 小时 | 
 
 发表于 2017-10-21 18:06:11
|
显示全部楼层 
| 请教楼主,要点亮LED(DS1)的指令怎么用?
 
 //Modbus功能码05处理程序   ///////////////////////////////////////////////////////程序已验证OK
 //写单个输出开关量
 void Modbus_05_Solve(void)
 {
 if(startRegAddr<100)//寄存器地址在范围内
 {
 if((RS485_RX_BUFF[4]==0xFF)||(RS485_RX_BUFF[5]==0xFF)) *Modbus_OutputIO[startRegAddr]=0x01;
 else *Modbus_OutputIO[startRegAddr]=0x00;
 
 RS485_TX_BUFF[0]=RS485_RX_BUFF[0];
 RS485_TX_BUFF[1]=RS485_RX_BUFF[1];
 RS485_TX_BUFF[2]=RS485_RX_BUFF[2];
 RS485_TX_BUFF[3]=RS485_RX_BUFF[3];
 RS485_TX_BUFF[4]=RS485_RX_BUFF[4];
 RS485_TX_BUFF[5]=RS485_RX_BUFF[5];
 
 calCRC=CRC_Compute(RS485_TX_BUFF,6);
 RS485_TX_BUFF[6]=(calCRC>>8)&0xFF;
 RS485_TX_BUFF[7]=(calCRC)&0xFF;
 RS485_SendData(RS485_TX_BUFF,8);
 }
 | 
 |