vb串口通讯为何不能与单片机通讯?(附源码)请高手指点!

来源:百度知道 编辑:UC知道 时间:2024/05/15 07:57:51
' 初始化程序:主要完成对串口的设置,包括选择串口、设置波特率、设置数据格式、打开串口等。
' 注意:在程序开始之前,必须清空发送和接收缓冲区,以免出错。
Private Sub comfrom_Load()
MSComm1.Setting = "9600,n,8,1" ' 设置波特率和发送字符格式
MSComm1.CommPort = 1 ' 设置通讯串口
MSComm1.InputLen = 0 ' 设置或返回一次从接收缓冲区中读取字节数,0表示一次读取所有数据
MSComm1.InBufferSize = 512 ' 设置接收缓冲区512Byte
MSComm1.InBufferCount = 0
MSComm1.OutBufferSize = 512 ' 设置发送缓冲区512Byte
MSComm1.OutBufferCount = 0
MSComm1.RThreshold = 1 ' 每个字符到接收缓冲区都触发接收事件
'MSComm1.SThreshold = 1
MSComm1.PortOpen = True ' 打开串口
End Sub
'发送数据
'PC机向单片机发送一个"S",表示通信开始,然后紧接着又发送9个字符,
'其中最后一个字符是前面9个字符(包括"S")的校验和。
'单片机正确接收到10个字符后,把10个字符重新又送回来。
Private Sub Cmdsend_C1ick()

Varbuffet = "S"
MSComm1.Ouput = varbuffe
Timer1.Enabled = True
End Sub

Priv

先把串口的发送针脚和接受针脚短接,然后用你的上位机发数据,看看能不能收到。
最佳方法:下个软件AccessPort,它能监测到串口的操作和数据。原因很容易就找到了!!

没有单片机的电路和程序,还不好找出问题。
建议楼主:在两台PC机上,分别运行你的VB发送、接收程序,先确保VB程序无错。

vb串口通讯为何不能与单片机通讯,到“工搜网”资料文库看看,那里有关于单片机的原理,故障分析,及应用资料。自己查查

一台PC机上两个串口互联!