求助VB问题,做老师的上位机监控
这是串口通信中的一段
If MSComm1.CommEvent = comEvReceive Then '接收事件- -- - -- --
'Sleep (80) '可能的最大的长度是64+6=70,波特率为9600 延时至少 需要59ms
MSComm1.InputLen = 4 '一次从input读取4个字节数据
If MSComm1.InBufferCount >= 4 Then '如果当前缓冲区数据超过4个字节
ReDim bytInput2(0 To 3) As Byte
bytInput2 = MSComm1.Input '读数据
'ReDim Preserve bytInput2(0 To 4) As Byte '扩容
If bytInput2(0) = &HAA And bytInput2(1) = &H10 Then '判断块头 aa 十进制为170 且次数据为 读的意思
'If bytInput2(0) = 97 Then '判断块头 小写a
DataValid = True
DataLen = bytInput2(3) '数据长度??????????????????????????
DataLen怎么能这样赋值 那不直接等于1了么?
这是串口通信中的一段
If MSComm1.CommEvent = comEvReceive Then '接收事件- -- - -- --
'Sleep (80) '可能的最大的长度是64+6=70,波特率为9600 延时至少 需要59ms
MSComm1.InputLen = 4 '一次从input读取4个字节数据
If MSComm1.InBufferCount >= 4 Then '如果当前缓冲区数据超过4个字节
ReDim bytInput2(0 To 3) As Byte
bytInput2 = MSComm1.Input '读数据
'ReDim Preserve bytInput2(0 To 4) As Byte '扩容
If bytInput2(0) = &HAA And bytInput2(1) = &H10 Then '判断块头 aa 十进制为170 且次数据为 读的意思
'If bytInput2(0) = 97 Then '判断块头 小写a
DataValid = True
DataLen = bytInput2(3) '数据长度??????????????????????????
DataLen怎么能这样赋值 那不直接等于1了么?
解决方案 »
- 请教, FOCUS在一个文本框内(mytxtbox)的时候,敲击窗体上的某个按钮,在文本框的exit函数里是否可以检出是敲击了哪个按钮而使这个exit函数被调用
- select 查询问题,谢谢
- 怎样控制connection连接超时?
- 串口通信
- 有关VB脚本的当前文件夹的问题?
- 我正在制作一个考试系统,请问如何随机读出在题库中的题目(access表)???
- 在ActiveX dll中窗体和class进行交互的问题?
- 小问题---高分求答
- 我用vb2005调用系统的记事本,运行后停留在状态栏上,怎能点击后显示到窗体中
- 没什么分 但是有个高难度的问题 提出大家一起看看
- VB Refresh的方法IAdodc失败
- VB有时候真的让人很无语
bytInput2的第4个字节表示长度,怎么一定是1??
'If bytInput2(0) = 97 Then '判断块头 小写a
DataValid = True
DataLen = bytInput2(3) '数据长度??????????????????????????
从这里看可能第一字节为帧头0xaa,第二字节为“R/W”,第四字节为数据长度。你在问问清楚。
前面不是通过
bytInput2 = MSComm1.Input
给bytInput2(3)赋过值了吗