vb发送16进制串口信息问题
MSComm1.Output=chr(&HA5)+chr(&H01)+chr(&H01)+chr(&HA7)+chr(&H5A)我想发送这样一串。也就是发送"A50101...
MSComm1.Output = chr(&HA5)+chr(&H01)+chr(&H01)+chr(&HA7)+chr(&H5A)
我想发送这样一串。也就是发送"A5 01 01 a7 5A"
但是一打出来就变成这样
MSComm1.Output = Chr(&HA5) + Chr(&H1) + Chr(&H1) + Chr(&HA7) + Chr(&H5A)
发送的01,1前面不能加0,加上之后又自动去掉了
发送01才能成功,现在是1。发送过后没反应
应该怎么办? 展开
我想发送这样一串。也就是发送"A5 01 01 a7 5A"
但是一打出来就变成这样
MSComm1.Output = Chr(&HA5) + Chr(&H1) + Chr(&H1) + Chr(&HA7) + Chr(&H5A)
发送的01,1前面不能加0,加上之后又自动去掉了
发送01才能成功,现在是1。发送过后没反应
应该怎么办? 展开
2个回答
展开全部
如果是固定是你上面提问中的数据的话,可以这样写
MSComm1.Output = Chr(&HA5) + "0"+Chr(&H1) + "0"+Chr(&H1) + Chr(&HA7) + Chr(&H5A)
如果是任意的数据的话,可以这样写(还是以此例的数据)
MSComm1.Output = Chr(&HA5) + right("0"+Chr(&H1),2) + right("0"+Chr(&H1) ,2)+ Chr(&HA7) + Chr(&H5A)
满意请及时采纳,谢谢
MSComm1.Output = Chr(&HA5) + "0"+Chr(&H1) + "0"+Chr(&H1) + Chr(&HA7) + Chr(&H5A)
如果是任意的数据的话,可以这样写(还是以此例的数据)
MSComm1.Output = Chr(&HA5) + right("0"+Chr(&H1),2) + right("0"+Chr(&H1) ,2)+ Chr(&HA7) + Chr(&H5A)
满意请及时采纳,谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-01-09
展开全部
定义 byte 数组,如 dim dout(5) as byte
dout(0)=&ha5
dout(1)=&h01
dout(2)=&h01
dout(3)=&ha7
dout(4)=&h5a
MSComm1.Output=dout
就可以了
推荐看书
Visual_Basic与_RS-232_串行通信控制
dout(0)=&ha5
dout(1)=&h01
dout(2)=&h01
dout(3)=&ha7
dout(4)=&h5a
MSComm1.Output=dout
就可以了
推荐看书
Visual_Basic与_RS-232_串行通信控制
追问
dout(1)=&h01
dout(2)=&h01
输入这两条的时候,1前面的0又被自动去掉了。。
什么情况
追答
正常
十六进制 &h01=&h1
一回事
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询