| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 984 人关注过本帖, 1 人收藏
标题:vb端接收不到数据,请大神指点,串口助手上可接收到
取消只看楼主 加入收藏
暗流年
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2014-11-7
结帖率:66.67%
收藏(1)
已结贴  问题点数:10 回复次数:4 
vb端接收不到数据,请大神指点,串口助手上可接收到
要求是要显示在text中的值为当前温度值(串口助手中一切显示正常)


代码如下:
Private Sub Command4_Click()
= 3 '...使用Com3口
MSComm1.Settings = "9600,n,8,1" '...设置通讯参数
MSComm1.InBufferSize = 40      '接收缓冲区大小
MSComm1.OutBufferSize = 40     '发送缓冲区大小
MSComm1.RThreshold = 1 '... 接收一个字节就产生oncommm事件
MSComm1.SThreshold = 3  '发送缓冲区中字符小于2时,串口控件设置串口事件为发送,并产生OnComm事件
MSComm1.InputLen = 0   '...一次从接收缓冲区读取字节为1
MSComm1.InputMode = comInputModeText  '接收模式为文本
MSComm1.PortOpen = True '打开通信端口’
End Sub

Private Sub Form_Load() '...初始化
Text1.Text = ""
End Sub
Private Sub MSComm1_OnComm() '...通讯事件发生
Dim indata As Variant
Dim bte(0) As Byte   '定义接收字节
Select Case   '串口事件选择
Case comeEvReceive   '串口事件为接收
indata = MSComm1.Input '...注意!要通过MSComm控件发送或接收二进制数据必须用Variant类型的变量对二进制Byte类型的变量进行转换!
bte(0) = indata
Text1.Text = Text1.Text + "" + Hex(bte(0))
MSComm1.InBufferCount = 0 '...清空输入寄存器
End Select
End Sub
搜索更多相关主题的帖子: 缓冲区 
2015-05-11 19:21
暗流年
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2014-11-7
收藏
得分:0 
回复 3楼 lianyicq
单片机传送数据12,37,99

PC端vb要接收,分别放入text1,text2,text3怎么做???求大神解答,

我自己学着写的,把数据都放入text1中了,咋办?

[ 本帖最后由 暗流年 于 2015-5-13 02:10 编辑 ]
2015-05-13 01:55
暗流年
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2014-11-7
收藏
得分:0 
回复 5楼 lianyicq
我是说怎么分别放入text1,text2,text3,

就是12放入text1,37放入text2,99放入text3,这样的话该怎么做?
2015-05-13 10:46
暗流年
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2014-11-7
收藏
得分:0 
回复 7楼 lianyicq
  谢谢   解决了


但是还有问题啊  

Private Sub Text1_Change()
If Val(Text1.Text) < Val(Text2.Text) And Val(Text1.Text) > Val(Text3.Text) Then
Shape2.BackColor = vbWhite And Shape3.BackColor = vbGreen
Else: Shape2.BackColor = vbRed And Shape3.BackColor = vbWhite
End If
End Sub
shape的颜色一直没变化,但是感觉代码是对的,问题出在哪里了呢???求大神帮助,

还有就是Private Sub Command1_Click()
If MSComm1.PortOpen = False Then
  MSComm1.PortOpen = True
  Command1.Caption = "关闭串口"
  Shape1.BackColor = QBColor(9)
Else
  MSComm1.PortOpen = False
  Command1.Caption = "开启串口"
  Shape1.BackColor = vbWhite
End If
End Sub

这个判断的shape颜色也是不变化

[ 本帖最后由 暗流年 于 2015-5-13 12:40 编辑 ]
2015-05-13 12:38
暗流年
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2014-11-7
收藏
得分:0 
回复 9楼 lianyicq
不是啊  ,是我画了三个圆,判断数值大小,填充那三个元的颜色,将整个元填充颜色,怎么办???就这最后一点了,求大神指点
2015-05-13 16:28
快速回复:vb端接收不到数据,请大神指点,串口助手上可接收到
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.067103 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved