注册 登录
编程论坛 VB6论坛

串口通信中开启串口问题

暗流年 发布于 2015-05-13 17:57, 1050 次点击
我先在做的是串口通信毕业设计,遇到以下问题:

1   打开我的vbp后,我还没有打开串口,但是数据已从单片机传至PC机   

2   单片机端设定了两个初值,    已传至PC端,现在在PC端更改那两个初值,但是发现更改不了,或者说 还没点击发送,已被单片机发过来的数据覆盖

发送代码:(代码没问题,现在发不出去的原因是已被覆盖,来不及发出去,怎么办)
Private Sub Command3_Click()
Dim outbte(1) As Byte
outbte(0) = Val(Text2.Text)
Call delay
outbte(1) = Val(Text3.Text)
MSComm1.OutBufferCount = 0 '...清空输出寄存器
MSComm1.Output = outbte
End Sub

求大神解答,非常感谢!!!

[ 本帖最后由 暗流年 于 2015-5-13 17:59 编辑 ]
5 回复
#2
海无边2015-05-13 23:34
你用的是rs232吗,如果是rs232是全双工的,发和接可以同步的,建议单片机端通过串口中断触发接收数据。
#3
lianyicq2015-05-14 09:10
回复 楼主 暗流年
看代码,想要发送的是两个文本框的数据。
上位机程序还没启动,单片机已经把数据传过来了,也就是说上位机一启动两个文本框就已经有内容了。再用MScomm1.Output就是把这两个文本框的内容回传给单片机?
不知道两个文本框的内容是手工填的还是代码自动填的,如果手工填不存在这个问题,如果代码填就重新计算文本框的值。
如果把接收到的数据和需要编辑传出的数据用不同的控件显示也许就不会出现这个问题
#4
暗流年2015-05-14 10:16
回复 3楼 lianyicq
手工填写,而且往下发的两个数据是text1,text2中的,接收到的两个数据放入text1,text2,现在要更改text1,text2中的值,往下发,但是我发现更改不了
#5
lianyicq2015-05-14 10:23
回复 4楼 暗流年
更改是指的改文本框的内容?LOCKED为FALSE,ENALBE为TRUE,文本框也不能输入?
好象问题不在这儿,单步调试一下Command3_Click,看看问题在哪儿?
#6
chenjl3354022015-05-23 22:37
恩,我最近也在用MSComm的控件,总感觉用的不太好,希望有经验的朋友多分享一下经验....
1