
单片机端需要写串口程序,PC 端需要些上位机软件 VB可以写用MSComm1 控件
通讯例子如下
Dim i As Integer
Dim a As Integer
Dim t() As Byte
Private Sub Command1_Click()
If Command1.Caption = "打开串口" Then
'Shape1.Visible = True
Shape1.FillColor = &HFF&
Shape1.BackColor = &HFF&
Shape1.BorderColor = &HFF&
Command2.Enabled = True
Command3.Enabled = True
Command1.Caption = "关闭串口"
'MSComm1.CommPort = 1 '设定Com1口
MSComm1.CommPort = Combo1.Text '设定Com1口
If MSComm1.PortOpen = False Then
'MSComm1.Settings = "4800,N,8,1" '4800波特率,无校验,8位数据位,1位停止位
MSComm1.Settings = Combo2.Text &"," &Combo3.Text &"," &Combo4.Text &"," &Combo5.Text '4800波特率,无校验,8位数据位,1位停止位
MSComm1.InputLen = 1 '读取接收缓冲区的所有字符
MSComm1.InputLen = 5
MSComm1.InBufferSize = 5 '设置接收缓冲区为1024字节
MSComm1.OutBufferSize = 5 '设置发送缓冲区为512字节
MSComm1.SThreshold = 0 '不触发发送事件
MSComm1.RThreshold = 1 '每一个字符到接收缓冲区都触发接收事件
MSComm1.PortOpen = True '打开串口
End If
MSComm1.OutBufferCount = 0 '清空发送缓冲区
MSComm1.InBufferCount = 0 '清空接收缓冲区
Dim temp() As Byte
Else
'Option2.Value = False
'Option1.Value = False
'Shape1.Visible = False
Shape1.BackColor = &H808080
Shape1.BorderColor = &H808080
Shape1.FillColor = &H808080
Command2.Enabled = False
'Command3.Enabled = False
MSComm1.PortOpen = False
Command1.Caption = "打开串口"
End If
End Sub
Private Sub Command2_Click()
'Command2.Enabled = False
'Option2.Value = False
'Option1.Value = False
'Shape2.Visible = False
MSComm1.OutBufferCount = 0 '清空发送缓冲区
MSComm1.InBufferCount = 0 '清空接收缓冲区
't(0) = "255"
' MSComm1.Output = t
MSComm1.Output = Text2.Text
End Sub
Private Sub Command3_Click()
Text1.Text = ""
End Sub
Private Sub Command5_Click() '退出
End
End Sub
Private Sub Command6_Click()
Text2.Text = ""
End Sub
Private Sub Command7_Click()
If Command7.Value Then
'Command7.Visible = False
Command1.Visible = True
Command2.Visible = True
Command3.Visible = True
Command6.Visible = True
Label1.Visible = True
Label2.Visible = True
Label3.Visible = True
Label4.Visible = True
Label5.Visible = True
Label6.Visible = True
Label7.Visible = True
Combo1.Visible = True
Combo2.Visible = True
Combo3.Visible = True
Combo4.Visible = True
Combo5.Visible = True
Text1.Visible = True
Text2.Visible = True
Frame1.Visible = True
Frame2.Visible = False
'Command3.Visible = False
'Option1.Value = False
Shape1.Visible = True
Else
Label1.Visible = False
Label2.Visible = False
Label3.Visible = False
Label4.Visible = False
Label5.Visible = False
Label6.Visible = False
Label7.Visible = False
Combo1.Visible = False
Combo2.Visible = False
Combo3.Visible = False
Combo4.Visible = False
Combo5.Visible = False
Command1.Visible = False
Command2.Visible = False
Command3.Visible = False
Text1.Visible = False
Text2.Visible = False
Frame1.Visible = False
Frame2.Visible = False
End If
End Sub
Private Sub Form_Load()
MSComm1.InBufferCount = 0 '清除发送缓冲区数据
MSComm1.OutBufferCount = 0 '清除接收缓冲区数据
ReDim t(0)
t(0) = "0"
Combo1.AddItem "1"
Combo1.AddItem "2"
Combo1.AddItem "3"
Combo1.AddItem "4"
'Combo1.Text = "1"
Combo2.AddItem "300"
Combo2.AddItem "600"
Combo2.AddItem "1200"
Combo2.AddItem "2400"
Combo2.AddItem "4800"
Combo2.AddItem "9600"
Combo2.AddItem "19200"
Combo3.AddItem "N"
Combo3.AddItem "O"
Combo3.AddItem "E"
Combo4.AddItem "8"
Combo4.AddItem "7"
Combo4.AddItem "6"
Combo5.AddItem "1"
Combo5.AddItem "2"
Combo5.AddItem "3"
End Sub
Private Sub MSComm1_OnComm()
Dim s1 As String
Dim s2 As String
Select Case MSComm1.CommEvent
Case comEventOverrun '数据丢失
Text_SEND.Text = "" '清空发送缓冲区
Text_RECV.Text = "" '清空接收缓冲区
Text_SEND.SetFocus
Exit Sub
Case comEventRxOver '接收缓冲区溢出
Text_SEND.Text = "" '清空发送缓冲区
Text_RECV.Text = "" '清空接收缓冲区
Text_SEND.SetFocus
Exit Sub
Case comEventTxFull '发送缓冲区已满
Text_SEND.Text = "" '清空发送缓冲区
Text_RECV.Text = "" '清空接收缓冲区
Text_SEND.SetFocus
Exit Sub
Case comEvReceive '接收字符数据
Dim Buffer As Variant
MSComm1.InputLen = 1
MSComm1.InputMode = comInputModeBinary '二进制传输
Buffer = MSComm1.Input
'Text1.Text = Buffer(0)
's2 = Buffer(1)
Text1.Text = Text1.Text &(Val(MSComm1.Input)) &" "
Case Else
End Select
End Sub
Private Sub Option1_Click()
End Sub
基本的数据库的 *** 作。你可以参考如下方式一步步来:
1、先参考mysql的编程的基本例子,按照最简单的方式实现固定数据(比如说字符串“12345678”),进行基本的插入、删除、查询等 *** 作。当然这个前提是首先建立一个数据库。
2、第一步成功实现后,将你原来的模拟数据,替换成真实的数据,重新完成第一步的 *** 作。
3、编写一个从PC端获取RFID数据的接口,真正实现数据的对接。
个人给你的建议:
1、不要求捷径,这样即使你能很快完成任务,但是也会没有什么收获。
2、数据库的 *** 作不难,尤其是PC端的数据库,网上有大量的资源。
3、通过这个项目的锻炼,你不仅问题会解决,你以后分析问题、解决问题和搜索资料的能力都会大大提高。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)