Serial Communication between PC
and 89C51 with Visual Basic
Abstract:Serial communication between PC and 89C51 single-chip-computer by MSCOMM control box of Visual Basic is introduced.
Key Words:Visual Basic 89C51 Serial communication A/D D/A
Global comm_time As Integer //定义一些全局变量
Global data(1000)As Integer
Global Receive(1000)As Integer
Private Sub Form_Load()’ //串口初始化
Comml.CommPort=1 //设置串口1
Comml.Settings=“9600,N,8,1” //波特率:9600 奇校验,8位数据,1位停止位
Comml.InputLen=0 //读取接收缓冲区的所有字符
Comml.InBufferSize=256 //设置接收缓冲区为256字节
Comml.OutBufferSize=256 //设置发送缓冲区为256字节
Comml.PortOpen=True //打开串口1
Comml.SThreshold=1 //发送缓冲区空触发发送事件
Comml.RThreshold=1 //每一个字符到接收缓冲区都触发接收事件
End Sub
Public Sub send-data() //发送n个数据
For i=0 To n
Comml.Output=Chr(data(i))
Next i
End Sub
Public Sub Comml_OnComm() //接收数据触发OnComm()事件
Select Case Comml.CommEvent //在CommEvent中接收数据
Case comEvReceive
Receive(comm_time)=Asc(Comml.Input) //将接收数据放在Receive(comm-time)数组中 Comm_time=comm_time+1
End Select
End Sub