介绍 在我的硬件项目中,有好几次,我不得不通过串口(RS-232)在微控制器(Microchip PIC)和PC之间发送一些校准数据。PC端的软件是用VB6编写的,带有MSComm控件。后者必须配置参数:端口号、波特率、数据位数、停止位数。配置MSComm是一项相当常见的任务(在过去甚至更常见)。所以,一开始我认为应该在网上有一个对话框。不幸的是,这样的对话没有找到,我自己写了一个。希望它是通用的和可重用的。 特性 串行端口的自动检测最新的端口设置被存储在INI文件接口中,支持在同一个程序中配置多个端口 对话框 配置在frmComm对话框中完成。 ShowConfig 宣言 隐藏,复制Code
Public Function ShowConfig( _ ByRef comm As MSComm, _ Optional ByRef strIniFile As String, _ Optional ByRef strSection As String) _ As VbMsgBoxResult
目的 设置配置对话框并将其显示给用户。cboPort与可用COM端口列表进行交互。 参数 隐藏,复制CodeByRef comm作为MSComm 将在对话框中配置。如果已经打开了comm,则GUI预装了它的配置并关闭了comm。 隐藏,复制可选的ByRef strIniFile作为字符串 包含配置信息的INI文件的可选名称。GUI预装了INI文件中的设置。 隐藏,复制可选的ByRef strSection作为字符串 INI文件中包含配置信息的部分的可选名称。如果没有提供区段名称,则使用默认名称serial_port。 返回值 当配置成功时vbOK取消用户决定取消配置 QuietConfig 宣言 隐藏,复制Code
Public Function QuietConfig( _ ByRef comm As MSComm, _ ByRef strIniFile As String, _ ByRef strSection As String) _ As VbMsgBoxResult
目的 使用本地文件中的参数配置目标MSComm,而不显示配置对话框。 先决条件 提供的INI文件包含配置信息。 后置条件 目标MSComm已配置,但未打开。 参数 隐藏,复制CodeByRef comm作为MSComm MSComm将从INI文件中配置。如果通讯中心已经开放,就会关闭。 隐藏,复制CodeByRef strIniFile为字符串 包含配置信息的INI文件的可选名称。GUI预装了INI文件中的设置。 隐藏,复制CodeByRef strSection作为字符串 INI文件中包含配置信息的部分的可选名称。如果没有提供区段名称,则使用默认名称serial_port。 返回值 配置成功时vbOK,如果INI文件错误或不存在vbAbort INI文件 加载和保存 如果提供了文件的名称,则使用INI文件中的参数填充对话框。 结构 多个部分用于同一INI文件中的多个端口,或单个INI文件用于多个端口。INI文件部分的名称可以由用户选择,默认名称是serial_port。 关键字:CommPort -端口号,如MSComm.CommPort 端口设置与MSComm.Settings中的格式相同 闭幕词 请让我知道如果你发现任何错误或有任何建议! 参考文献 超终端的[1]串口配置对话框 用于MSComm控制的[2]根MSDN文章http://msdn2.microsoft.com/en-us/library/aa259393.aspx 修订历史 2007年6月18日,在项目文件中增加了缺失的frmComm.frx 本文转载于:http://www.diyabc.com/frontweb/news2401.html