时间:2021-05-20
Android与单片机通信常用数据转换方法
1. 将GB2312转化为中文,如BAFAC2DCB2B7→胡萝卜,两个字节合成一个文字
2.将中文转化为GB2312,并且结果以byte[]形式返回,如胡萝卜→new byte[]{BA FA C2 DC B2 B7},一个字被分为两个字节
3.将十六进制的byte[]原封不动的转化为string,如byte[]{0x7e,0x80,0x11,0x20}→7e801120,可用于log打印
public static String bytesToHexString(byte[] src) { StringBuilder stringBuilder = new StringBuilder(""); if (src == null || src.length <= 0) { return null; } for (int i = 0; i < src.length; i++) { int v = src[i] & 0xFF; String hv = Integer.toHexString(v); if (hv.length() < 2) { stringBuilder.append(0); } stringBuilder.append(hv); } return stringBuilder.toString(); } 4.将十六进制的byte[]原封不动的转化为string,并且每个byte之间用空格分开,如byte[]{0x7e,0x80,0x11,0x20}→7e 80 11 20,,可用于log打印
5.将byte[]数组转化为8、10、16等各种进制,例如byte[0x11,0x20]→4384,约等于1120(16进制)→4384,radix代表进制
6.将String的十六进制原封不动转化为byte的十六进制,例如7e20→new byte[]{0x7e,x20}
public static byte[] HexString2Bytes(String src) { byte[] ret = new byte[src.length() / 2]; byte[] tmp = src.getBytes(); for (int i = 0; i < tmp.length / 2; i++) { ret[i] = uniteBytes(tmp[i * 2], tmp[i * 2 + 1]); } return ret; }以上就是对Android 与单片机通信的资料整理,后续继续补充相关资料谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
单片机与plc的区别体现在性能和使用范围方面。PLC是应用单片机构成的比较成熟的控制系统,是已经调试成熟稳定的单片机应用系统的产品。有较强的通用性。而单片机可以
以MCS-51单片机为例,单片机复位后pc值为0000H,复位是单片机上的复位电路的复位操作,作用是使电路恢复到起始状态。 单片机(Single-ChipMi
单片机应用系统:就是将单片机技术应用在电子、工业控制领域的各种典型产品,如以单片机为核心的智能煤气表、智能热力表、上网微波炉。单片机就是将CPU、存储器、定时计
mcs51单片机是16位的,常用的是先把高8位用P2口输出,然后再从P9口输出低8位。 单片机是典型的嵌入式微控制器(MicrocontrollerUnit)
单片机应用系统是由时钟系统,复位系统,以及各种功能系统组成,单片机应用系统就是将单片机技术应用在电子、工业控制领域的各种典型产品,如以单片机为核心的智能煤气表、