Java串口通信发送十六进制的问题

您好!您在2013年回答过一个知友的关于Java串口通信发送十六进制的问题,请问我现在想要发送16进制数0x41,是不是写out.write(HexString2Byte... 您好!您在2013年回答过一个知友的关于Java串口通信发送十六进制的问题,请问我现在想要发送16进制数0x41,是不是写out.write(HexString2Bytes("0x41"))还是out.write(HexString2Bytes("41")),第一个写法报错了额,而且运行之后总是一直在运行。新手求包容呢。。
现在下位机的代码已经写好了,只能接受十六进制数。所以我必须要发送一个 十六进制数,一个就行,但必须十六进制。
我是别人合作的,下位机的单片机已经烧制好了,所以下位机程序不能改了。
展开
 我来答
fuhaiwei
2014-08-03 · TA获得超过3409个赞
知道大有可为答主
回答量:974
采纳率:75%
帮助的人:1385万
展开全部
对于输入输出来说,就只有二进制,没有十六进制的说法。
你还是说说,这个程序到底是要几个二进制位。
---------------
你看看这样行不行。
试试下面这两种方法。
1.输出4个字节
int value = Integer.parseInt("41", 16);
out.write(value);

2.输出一个字节
byte value = Byte.parseByte("41", 16);
out.write(value);
追问
这样不就相当于out.write(65)和out.write((byte) 65)吗,可是没用啊。裸奔都没用,后来我还试了发送out.write("B".getBytes("utf-8")),还是没用。另外想问下,用rxtx在java中做串口通信,设置了params之后发送数据就不需要发起始位了吗?在下位机上有设置起始位,那么在上位机直接发送数据就可以吗
就你一个人回答我,唉。。调了将近一天了
追答
串口通信这种东西没接触过,不过下位机程序没有说明文档吗?还是得去问问对方到底是要接受什么样的数据。

一般Java程序员不太接触这种底层的东西,建议去知乎或者C板块去问问吧。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式