三步了解VB.NET串口通讯如何发送接收数据

开发 后端
这里介绍VB.NET串口通讯支持总是让人觉得有所不足,在使用VB6的MsComm32.ocx时,很多人都会在VB.NET的开发中觉得很困扰。

学习VB.NET时,你可能会遇到VB.NET串口通讯问题,这里将介绍VB.NET串口通讯问题的解决方法,在这里拿出来和大家分享一下。VB.NET串口通讯支持总是让人觉得有所不足,在使用VB6的MsComm32.ocx时,很多人都会在VB.NET的开发中觉得很困扰。这里讲述的VB.NET串口通讯类使用native代码,并且它是通API调用实现的,你会发现VB.NET串口通讯就是这么简单。

在说明如何使用这个类前,需要说明的是,本类只是一个VB.NET串口通讯演示,你可能需要根据你的情况修改后使用。另外,本类的目的是通过例子教会你在无需ocx控件和第三方组件的支持下用VB.NET开发串口通讯程序,所有并没有完善的异常错误处理。

1.初始化并打开串口

创建一个CRs232类的实例,并在调用Open方法前设置好串口通讯参数。

  1. Dim moRS232 as New Rs232()  
  2. With moRs232  
  3. .Port = 1'//Uses COM1  
  4. .BaudRate = 2400 
  5. '//波特率 2400  
  6. .DataBit = 8   
  7. '//8 data bits  
  8. .StopBit = Rs232.DataStopBit.StopBit_1  
  9. '//停止位 1  
  10. .Parity = Rs232.DataParity.Parity_None  
  11. '//无奇偶校验  
  12. .Timeout = 500   
  13. '//超时时间500 ms  
  14. End With  
  15.  
  16. '// 初始化并打开串口  
  17. moRS232.Open ()  
  18. '// 串口打开后,你可以随意地控制DTR/RTS  
  19. moRS232.Dtr = True 
  20. moRS232.Rts = True 

2.发送数据

本类为Rx和Tx准备了两个缓冲区(buffer),发送数据时,只需要设置TxData属性为你需要发送的数据,然后调用Tx方法就可以了。

  1. moRS232.TxData = txtTx.Text  
  2. moRS232.Tx() 

3.接收数据

先调用Rx方法(参数为您需要从串口读取的字节数),然后读取RxData属性。

  1. moRS232.Rx(10)  
  2. '// 从串口通讯缓冲区里读取10字节  
  3. Dim sRead as String=moRs232.RxData 

需要注意的是,当本类无法用串口读取到所需的字节数,程序线程在超时异常发生前是锁死的,超时时间通过Timout属性设置。

【编辑推荐】

  1. 是否了解VB.NET Derived Class
  2. 迅速掌握VB.NET Shared变量技能
  3. 事例讲解VB.NET Constructor函式
  4. 剖析VB.NET写Object Oriented编程
  5. 全面讲解VB.NET调用Web Service
责任编辑:佚名 来源: CSDN
相关推荐

2009-11-10 12:55:26

VB.NET三维模型

2009-10-28 13:23:52

VB.NET可选参数

2009-10-30 13:31:06

VB.NET名空间

2009-10-29 14:04:48

VB.NET Deri

2009-11-02 10:42:04

VB.NET EXCE

2009-11-03 11:06:40

VB.NET事件

2009-10-29 14:22:59

VB.NET集合存储

2009-11-03 13:33:39

VB.NET对象列表

2009-11-02 09:43:01

VB.NET构造函数

2009-11-03 13:54:55

VB.NET继承

2009-11-03 10:09:48

VB.NET对象

2009-10-30 10:47:48

VB.NET垃圾收集器

2009-10-23 11:33:52

VB.NET集成开发环

2009-11-02 17:24:57

VB.NET语言

2009-10-30 09:45:55

VB.NET Web

2009-11-10 16:05:21

VB.NET格式化

2022-04-16 12:46:28

Python微信

2009-11-10 15:18:35

VB.NET封面

2010-01-22 17:55:23

VB.NET语法糖

2009-11-03 13:02:28

VB.NET Wind
点赞
收藏

51CTO技术栈公众号