📄 packetcrc.java
字号:
package com.mars.tools;
import com.mars.net.MotePacket;
public class PacketCRC {
public static int calcByte(int crc,int b){
crc=crc^(int)b<<8;
for(int i=0;i<8;i++){
if ((crc&0x8000)==0x8000)
crc=crc<<1^0x1021;
else
crc=crc<<1;
}
return crc&0xffff;
}
public static int calc(MotePacket packet,int index,int count){
int crc=0;
while(count>0){
crc=calcByte(crc,packet.getPacketElement(index++));
count--;
}
return crc;
}
/*public static void main(String[] args){
LinkedList<Integer> list=new LinkedList<Integer>();
list.add(new Integer(0x7E));
list.add(new Integer(0x42));
list.add(new Integer(0x7D));
list.add(new Integer(0x5E));
list.add(new Integer(0x00));
list.add(new Integer(0xFD));
list.add(new Integer(0x7D));
list.add(new Integer(0x5D));
list.add(new Integer(0x02));
list.add(new Integer(0x01));
list.add(new Integer(0x00));
list.add(new Integer(0x11));
list.add(new Integer(0xF7));
list.add(new Integer(0x7E));
MotePacket packet=new MotePacket(list);
packet.showPacket();
packet.verify();
// System.out.print(calc(packet,0,8));
}*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -