协议命令组包方法

2016-09-24  本文已影响59人  陈水寒
- (void)msrRead{
    unsigned int pkLen=0x04; //协议命令长度,根据具体协议命令定义
    unsigned int sum=0;  //校验和,取校验和的后2个字节
    unsigned char cmd[30]; // 存放数据
    cmd[0]=0xef;
    cmd[1]=0x01;
    cmd[2]=0x01;
    sum+=cmd[2];
    cmd[3]=(unsigned char)(pkLen>>8); sum+=cmd[3];
    cmd[4]=(unsigned char)(pkLen&0x00ff); sum+=cmd[4];
    cmd[5]=0x01;
    sum+=cmd[5];
    cmd[6]=0x03;
    sum+=cmd[6];
    cmd[7]=(unsigned char)(sum>>8);  //取校验和的前1个字节
    cmd[8]=(unsigned char)(sum&0x00ff); //取校验和的后1个字节,
    
    NSData *data = [[NSData alloc] initWithBytes:&cmd length:9]; //将命令转换成data类型,以便数据发送
    NSLog(@"%@",data);
}
上一篇 下一篇

猜你喜欢

热点阅读