发送05到串口
方法一:
aa(0) = 0
aa(1) = 5
aa(2) = 0
aa(3) = 0
MSComm1.Output = aa()
方法二:
aa(0) = &H0
aa(1) = &H5
aa(2) = &H0
aa(3) = &H0
MSComm1.Output = aa()我测试换了两种方法都错了。如果用网上下载的测试软件发送,我勾选了“十六进制发送”,发送05,仪表能正确接收到,为什么我的不行吗?
方法一:
aa(0) = 0
aa(1) = 5
aa(2) = 0
aa(3) = 0
MSComm1.Output = aa()
方法二:
aa(0) = &H0
aa(1) = &H5
aa(2) = &H0
aa(3) = &H0
MSComm1.Output = aa()我测试换了两种方法都错了。如果用网上下载的测试软件发送,我勾选了“十六进制发送”,发送05,仪表能正确接收到,为什么我的不行吗?
串口发送的数据是AABB0000 四个数据,AA 千位,百位,BB十位,个位 后面跟 0000;预计是设置00050000应该出来5
1是首先定义
dim aa(3) as byte
然后发送
2是如你所说
"用网上下载的测试软件发送,我勾选了“十六进制发送”,发送05正常"
那么你应该测试一下直接发送&H5。
'定义动态数组
ReDim ByteArray(10)
'重定义数组大小
ByteArray(0) = &H0
ByteArray(1) = &H1
ByteArray(2) = &H2
ByteArray(3) = &H3
ByteArray(4) = &H4
ByteArray(5) = &H5
ByteArray(6) = &H6
ByteArray(7) = &H7
ByteArray(8) = &HEE
ByteArray(9) = &H1
MSC1.Output = ByteArray
***********************************************
试试
aa(0) = 0
aa(1) = 5
aa(2) = 0
aa(3) = 0
MSComm1.Output = aa()
方法二:
aa(0) = &H0
aa(1) = &H5
aa(2) = &H0
aa(3) = &H0
MSComm1.Output = aa()楼主,这样你发出的是00000500