我要发送一个消息帧,由地址码、控制码、数据长度、数据域、校验码组成,其中校验是用CRC16算法。我现在就是不明白,当计算出校验码后,如何把他们组成一帧放松出去。 下面是我写的一函数,不知道正确否 void frame_format() { transmit_command[4] = {0x05,0x80,0x01,0x02}; for(i=1;i<=4;i++) { unsigned int len = 4; unsigned char crc_half_byte crc_half_byte = crc16(transmit_command,len); //crc16(transmit_command,len)是CRC16校验算法 } buffer[ ] = {0xfe,0xfe,0x05,0x80,0x01,0x02,crc_half_byte}; //crc_half_byte 是2个字节,如何把拆分成高低字节 }
谢谢了。 |