教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

M2M平台与终端接口规范(9)

来源:网络收集 时间:2026-06-08
导读: QB-D-109-2007 附录F CCITT CRC16算法伪代码 public static short Caculate(byte[] msg) { short crc = (short) 0xFFFF; int i = 0; while (i > 15 boolean bit = ((msg[i] >> (7 - j) crc #define u8_t unsigned c

QB-D-109-2007

附录F CCITT CRC16算法伪代码

public static short Caculate(byte[] msg) { short crc = (short) 0xFFFF; int i = 0; while (i < msg.length) { for (int j = 0; j < 8; j++) { boolean c15 = ((crc >> 15 & 1) == 1); boolean bit = ((msg[i] >> (7 - j) & 1) == 1); crc <<= 1; if (c15 ^ bit) crc ^= 0x1021; } i++; } return crc; } 附录G CCITT CRC32算法伪代码

#define u8_t unsigned char #define u16_t unsigned short #define u32_t unsigned long #define BOOL bit typedef union{ u8_t m_ch[2]; u16_t m_data; } U16_INT;

static u32_t crc_32_tab[] = { /* CRC polynomial 0xedb88320 */

0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172,

37

QB-D-109-2007

0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d };

u32_t CreateCRC32(u8_t *databuf,u32_t len) {

u32_t oldcrc32,crc32,oldcrc; u16_t charcnt;

38

QB-D-109-2007

u8_t c; u32_t t;

oldcrc32 = 0x00000000; charcnt = 0;

while(len --){ t = (oldcrc32>> 24)&0xFF;

oldcrc = crc_32_tab[t]; c = databuf[charcnt];

oldcrc32 = (oldcrc32 << 8)|c; oldcrc32 = oldcrc32 ^ oldcrc; charcnt ++; }

crc32 = oldcrc32; return crc32; }

u8_t byAddCRC32(u8_t *databuf,u32_t len) { U32_INT dwCrc32; dwCrc32.m_data=CreateCRC32(databuf,len); databuf[len]=dwCrc32.m_ch[0]; databuf[len++]=dwCrc32.m_ch[1]; databuf[len++]=dwCrc32.m_ch[2]; databuf[len++]=dwCrc32.m_ch[3]; return 0; }

u8_t byChkCRC32(u8_t *databuf,u32_t len) { u8_t retval; U32_INT dwCrc32,dwOldCrc32; dwCrc32.m_data=CreateCRC32(databuf,len-4);

39

QB-D-109-2007

}

dwOldCrc32.m_ch[0]=databuf[len-3]; dwOldCrc32.m_ch[1]=databuf[len-2]; dwOldCrc32.m_ch[2]=databuf[len-1]; dwOldCrc32.m_ch[3]=databuf[len]; if(dwCrc32.m_data==dwCrc32.m_data){ retval=0; } else{ retval=0x55; } return retval;

附录H PDU短信格式说明 SMSC Address TPDU Octet 1 bit 7 6 5 4 3 2 1 0 TPDU Octet 2 TPDU Octet 3 Value 07 91 53 48 50 02 02 00 Value (hex 51) 0 1 0 1 0 0 0 1 Value 00 Value 0C Description Address length Type of address Short message service centre address Description TP-Reply-Path TP-User-Data-Header-Indicator TP-Status-Report-Request TP-Validity-Period-Format TP-Validity-Period-Format TP-Reject-Dublicates TP-Message-Type-Indicator TP-Message-Type-Indicator Description TP-Message-Reference Description Address length in semi-octets 40

QB-D-109-2007

TPDU Octet 4 TPDU Octets 5-10 TPDU Octet 11 Value 91 Value 53 48 70 04 63 32 Value Description TP-Protocol-Identifier, consists ofone octet. For details, see the GSM03.40 specification, version 7.2.0,page 53. TPDU Octet 12 bits 00 Value (hex F5) Description TP-Destination-Address Description Type of address Description …… 此处隐藏:4197字,全部文档内容请下载后查看。喜欢就下载吧 ……

M2M平台与终端接口规范(9).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/454196.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)