冷镜露点仪ModeBus通信协议(通用)

2017-11-10 21:13:32 wwwcn4 157

通信协议

    支持的功能码:

        0x03  读多路寄存器      0x10  写多路寄存器

    主机帧格式:

        从机地址+0x03+寄存器起始地址(2字节)+寄存器数量(2字节)+CRC低位+CRC高位

        从机地址+0x10+寄存器起始地址(2字节)+寄存器数量(2字节)+发送字节数+数据0+..+数据n +CRC低位+CRC高位

    从机返回格式:

        从机地址+0x03+返回字节数+数据0+..+数据n+CRC低位+CRC高位

        从机地址+0x10+寄存器起始地址(2字节)+寄存器数量(2字节)+CRC低位+CRC高位

    错误码:

        0x81 非法的功能码(不支持的功能码)

0x82 读取非法的地址

0x83 写非法的数据(写到不可写的寄存器地址)

 

CRC算法

unsigned int CRC16(unsigned char *ptr, unsigned char len)

{

   unsigned int crc=0xffff;

   unsigned char i;

   while(len--)

   {

       crc ^=*ptr++;

       for(i=0;i<8;i++)

            {

                if(crc & 0x1)

                      {

                         crc>>=1;

                              crc^=0xa001;

                      }

                      else

                      {

                         crc>>=1;

                      }

            }

   }

   return crc;

}


QQ客服