版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、界面如下:代码如下:Private Sub Form_Load()If MSComm1.PortOpen = True Then MSComm1.PortOpen = FalseElseEnd IfCombo1.AddItem COM1Combo1.AddItem COM2Combo1.AddItem COM3Combo1.AddItem COM4Combo1.AddItem COM5Combo1.AddItem COM6Combo1.AddItem COM7Combo1.AddItem COM8Combo1.AddItem COM9Combo1.AddItem COM10Combo1.Add
2、Item COM11Combo1.AddItem COM12Combo1.AddItem COM13Combo1.AddItem COM14Combo1.AddItem COM15Combo1.AddItem COM16Combo1.ListIndex = 2Combo2.AddItem Combo2.AddItem Combo2.AddItem Combo2.AddItem 57600Combo2.AddItem 38400Combo2.AddItem 28800Combo2.AddItem 19200Combo2.AddItem 14400Combo2.AddItem 12800Combo
3、2.AddItem 11520Combo2.AddItem 9600Combo2.AddItem 4800Combo2.AddItem 2400Combo2.AddItem 1200Combo2.AddItem 600Combo3.AddItem 无NoneCombo3.AddItem 奇OddCombo3.AddItem 偶EvenCombo4.AddItem 4Combo4.AddItem 5Combo4.AddItem 6Combo4.AddItem 7Combo4.AddItem 8Combo5.AddItem 1Combo5.AddItem 2MSComm1.CommPort = C
4、ombo1.ListIndex + 1MSComm1.Settings = 9600,n,8,1ComOpen.Caption = 打开串口Shape1.FillColor = &HFFFFC0End SubPrivate Sub ComOpen_Click()On Error GoTo uerror 发现错误跳转到错误处理If ComOpen.Caption = 关闭串口 Then MSComm1.PortOpen = False ComOpen.Caption = 打开串口 按钮文字改变 Shape1.FillColor = &HFFFFC0 灯颜色改变Else MSComm1.PortO
5、pen = True ComOpen.Caption = 关闭串口 Shape1.FillColor = &HFFEnd IfExit Subuerror: msg$ = 无效端口号 错误显示 Title$ = 串口调试助手 X = MsgBox(msg$, 48, Title$) 48标示显示警告图标End SubPrivate Sub MSComm1_OnComm() Dim BytReceived() As Byte Dim strBuff As String Dim i As Integer Select Case MSComm1.CommEvent 事件发生 Case 2 Cls M
6、SComm1.InputLen = 0 读入缓冲区全部内容 strBuff = MSComm1.Input 读入到缓冲区 Label10.Caption = Label10.Caption + Len(strBuff) 接收计数 If MSComm1.InputMode = comInputModeBinary Then BytReceived() = strBuff 如果是二进制接收模式则进行数据处理,否则直接显示字符串 For i = 0 To UBound(BytReceived) If Len(Hex(BytReceived(i) = 1 Then strData = strData
7、& 0 & Hex(BytReceived(i) & 如果只有一个字符,则前补0,如F显示0F,最后补空格 Else 方便显示观察如: 00 0F FE strData = strData & Hex(BytReceived(i) & End If Next TextReceive = TextReceive & strData strData = Else TextReceive = TextReceive & strBuff End If End SelectEnd SubPrivate Sub ComSend1_Click() 手动发送Dim Temp(0) As ByteDim str
8、Buff As StringIf Option1.Value = True Then 如果显示16进制发送则进行16进制处理 ,这里只发送一个 Temp(0) = &H & TextSend MSComm1.Output = Temp 发送一个16进制Else strBuff = TextSendEnd IfIf MSComm1.PortOpen = False Then MsgBox 请打开串口End IfOn Error GoTo uerrorMSComm1.Output = strBuffLabel11.Caption = Label11.Caption + Len(strBuff) 发
9、送计数uerror:End SubPrivate Sub ComSend2_Click()If ComSend2.Caption = 自动发送 Then ComSend2.Caption = 关闭自动发送 Timer1.Interval = TextTime.Text Timer1.Enabled = TrueElse ComSend2.Caption = 自动发送 Timer1.Enabled = FalseEnd IfEnd SubPrivate Sub ComClean1_Click()TextSend.Text = 清空发送窗口End SubPrivate Sub Option3_Cl
10、ick()MSComm1.InputMode = comInputModeBinary 选择接收方式End SubPrivate Sub Option4_Click()MSComm1.InputMode = comInputModeText 选择接收方式End SubPrivate Sub Timer1_Timer()Call ComSend1_Click 定时调用手动发送End SubPrivate Sub Timer2_Timer()If Combo3 = 无None Then MSComm1.Settings = Str(Combo2) + N + Str(Combo4) + Str(C
11、ombo5)ElseIf Combo3 = 奇Odd Then MSComm1.Settings = Str(Combo2) + O + Str(Combo4) + Str(Combo5)ElseIf Combo3 = 偶Even Then MSComm1.Settings = Str(Combo2) + E + Str(Combo4) + Str(Combo5)End IfEnd SubPrivate Sub Combo1_Click()If MSComm1.PortOpen = True Then 如果串口打开先关闭后再进行其他操作 MSComm1.PortOpen = FalseEnd
12、IfMSComm1.CommPort = Combo1.ListIndex + 1 读取com口号End SubPrivate Sub ComClean3_Click()Label10.Caption = 0Label11.Caption = 0End SubPrivate Sub ComClean2_Click()TextReceive.Text = 接收窗口End Sub功能上:实现了字符串的发送和接收,8位数据的十六进制发送和接收,有端口,波特率等设置。缺点:1:只可以发送两位十六进制数。2:接收和发送的显示数据上有点不同步,十六进制的没有算进去。3:没有TXT的文件发送和接收的功能。如
13、需要源程序的,可下载本文的图片,下载后把图片的.jpg格式改为.rar格式就可以解压出来了。附:MSComm控件的属性:属性说明(Name)MSComm控件的名称(自定义)打开属性页CommPort获得或设置通讯端口号DTREnable决定在通讯过程中是否使数据终端机状态线有效。取值为:TrueFalseEOFEnable获得或设置是否搜索EOF字符。取值为:TrueFalseHandshaking获得或设置软件的握手协议。取值为:0 comNone1 comXOnXoff2 comRTS3 comRTSXOnXOffInBufferSize获得或设置接收缓冲区的大小,以字节数为单位。Index在对象数组中的编号InputLen获得或设置输入属性从接收缓冲区读出的字符数。InputMode获得或设置输入属性检索的数据类型。取值为:0 comInputModeText1 comInputModeBinaryLeft距离容器左边框的距离NullDiscard决定是否将空字符串从端口传送到接收缓冲区。取值为:TrueFalse
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 银行实习二周心得大全
- 财务科会计工作计划2024(10篇)
- 文员个人工作心得体会10篇
- 关于休闲小零食的问卷调查
- 山东省人力资源和社会保障劳动合同
- 2019-2020学年福建省师范大学附属中学高一上学期期中考试物理试题(含答案)
- 销售部年度工作总结7篇
- 家居用品瑕疵管理
- 连锁店管理指南多元化发展
- 酒店爱岗敬业演讲稿模板5篇
- 雅鲁藏布江大拐弯巨型水电站规划方案
- 广西基本医疗保险门诊特殊慢性病申报表
- 城市经济学习题与答案
- 国开成本会计第14章综合练习试题及答案
- 幼儿园大班科学:《树叶为什么会变黄》课件
- 1到50带圈数字直接复制
- 铁路工程施工组织设计(施工方案)编制分类
- 幼儿园中班数学《有趣的图形》课件
- 《规划每一天》教案2021
- 草莓创意主题实用框架模板ppt
- 山大口腔颌面外科学课件第5章 口腔种植外科-1概论、口腔种植的生物学基础
评论
0/150
提交评论