一.想一进入程序,有默认的串口参数设置:
1.把参数值设定死
在OnInitDialog()函数里添加:
if (m_ctrlComm.GetPortOpen())
m_ctrlComm.SetPortOpen(FALSE);
m_ctrlComm.SetCommPort(1); // 选择com1
if (!m_ctrlComm.GetPortOpen())
m_ctrlComm.SetPortOpen(TRUE); // 打开串口
else
AfxMessageBox("cannot open serial port");
m_ctrlComm.SetSettings("9600, n, 8, 1"); // 波特率9600,无校验,8个数据位,1个停止位
m_ctrlComm.SetInputMode(1); // 1表示以二进制方式检取数据
m_ctrlComm.SetRThreshold(1); // 参数为1,表示每当串口接收缓冲区中有对于或等于一个字符时,将引发一个接收数据的OnComm事件
m_ctrlComm.SetInputLen(0); // 设置当前接收区数据长度为0
m_ctrlComm.GetInput(); // 先预读缓冲区以清除残留数据
2. 用COMBO BOX下拉框选择串口、波特率
m_cbPortSelect.ResetContent();
m_cbPortSelect.AddString(_T("COM1"));
m_cbPortSelect.AddString(_T("COM2"));
m_cbPortSelect.AddString(_T("COM3"));
m_cbPortSelect.AddString(_T("COM4"));
m_cbPortSelect.AddString(_T("COM5"));
m_cbPortSelect.SetCurSel(3);
m_cbPortRate.ResetContent();
m_cbPortRate.AddString(_T("1200"));
m_cbPortRate.AddString(_T("2400"));
m_cbPortRate.AddString(_T("4800"));
m_cbPortRate.AddString(_T("9600"));
m_cbPortRate.SetCurSel(0);
二.想动态地设置串口相关参数:
CString str_setting;
str_setting.Format(_T("%d, %c, %d, %d"), baud_num, 'n', 8, 1);
m_ctrlComm.SetSettings(str_setting); // 设置波特率,校验位,数据位,停止位;m_ctrlComm是通信控件变量
想在Edit Box里显示实时值:
m_strSerialPort.Format("串口%d, 波特率%d, %c, %d个数据位,%d个停止位", port_num, baud_num, 'n', 8, 1);
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ysysbaobei/archive/2009/03/10/3970985.aspx
分享到:
相关推荐
这个控件支持标准的串行通信功能,如设置波特率、校验位、数据位、停止位,以及握手协议等。 2. **注册过程**:为了能在应用程序中使用MSCOMM32控件,需要将其注册到系统中。通常,这可以通过运行提供的`MSCOMM32....
本文将详细介绍MSComm控件支持的各种串口参数,包括波特率、校验位、数据位和停止位。 #### 波特率(Baud Rate) 波特率是指串行通信中的数据传输速率,单位为位/秒。MSComm控件支持的波特率范围非常广泛,从110bps...
2. **设置波特率和数据位**:通过设置控件的Settings属性,可以设定串口的波特率、数据位、停止位和校验位,以匹配通信设备的要求。 3. **事件驱动通信**:MSComm控件支持事件驱动的编程模型,如OnComm事件,当串口...
MsComm控件是Microsoft提供的一种通用串行通信控件,它内置了串口通信所需的各种功能,如打开、关闭串口,设置波特率、数据位、停止位、校验位等参数,以及实现数据的读写操作。以下是一些关键知识点: 1. **添加...
在本实例中,“VBA下基于MSCOMM串口通讯实例”着重展示了如何利用VBA与外部设备进行串口通信,特别是通过MSCOMM控件来实现这一功能。 串口通信是一种传统的通信方式,通常用于连接和交换数据,例如与嵌入式系统、...
它包含了一系列属性、方法和事件,如`CommPort`用于设置串口号,`Settings`用于设置波特率、奇偶校验、数据位和停止位,`Input`用于读取输入缓冲区的数据,以及`OnComm`事件用于响应串口通信中的错误或特定情况。...
MSComm控件是Visual Basic集成开发环境(IDE)中的一个ActiveX控件,它提供了一组事件、属性和方法,用于处理串行通信的各种操作,如打开、关闭串口,设置波特率、数据位、停止位、奇偶校验等参数,以及进行数据的读写...
该控件支持多种串行端口设置,如波特率、数据位、停止位等,并提供了事件处理机制,以便开发者能够及时响应通信过程中发生的各种事件。 #### 应用场景及意义 在工业控制、自动化测试、智能家居等领域,串口通信是...
总的来说,MSComm控件为VC++ MFC应用提供了方便的串口通信接口,通过设置其属性、调用方法及注册事件处理,我们可以实现串口的读写操作,从而进行设备交互、数据传输等任务。在实际项目中,你可能需要根据具体需求...
该控件支持标准的串口设置,如波特率、数据位、停止位、校验位等,并且可以设置超时参数以控制通信过程。 **2. 使用MSCOMM32控件** 在Visual Studio项目中使用MSCOMM32控件,首先需要将其添加到工具箱。步骤如下: ...
在串口通信中,MSComm控件提供了丰富的属性、方法和事件,帮助开发者处理串口的打开、关闭、设置波特率、奇偶校验、数据位、停止位等参数。例如: 1. **属性**: - `CommPort`:设置或返回串口编号,如1代表COM1,...
MSCOMM控件是VB自带的一种用于串行通信的组件,它提供了丰富的属性、方法和事件,使得开发者可以方便地实现串口的打开、关闭、发送和接收数据等操作。 首先,我们要理解MSCOMM控件的基本结构。在VB中,我们可以从...
它提供了一套API接口,使开发者可以方便地控制串口,如设置波特率、校验位、数据位、停止位,以及打开、关闭串口,发送和接收数据等操作。`MSCOMM`控件是VB6时代的产物,对于那些需要在VB环境中进行串口编程的开发者...
配置`MSCOMM`控件的属性是关键步骤,包括设置串口号(CommPort),波特率(BaudRate),数据位(DataBits),停止位(StopBits),校验位(Parity),以及握手协议(Handshaking)。例如,设置`RcvLength`和`...
这个控件集成了多种串行通信功能,如发送和接收数据、设置波特率、数据位、停止位、奇偶校验等,使得开发者无需深入理解底层串口操作就能实现串行通信。 MSComm32.DEP是依赖性文件,它包含了控件运行所需的库信息。...
MSCOMM控件是Microsoft提供的一种用于串行通信的ActiveX控件,它为开发者提供了丰富的API函数,使得在编程环境中,如Visual Basic、VC++或VBScript等,可以方便地实现串口的打开、关闭、读写以及设置波特率、校验位...
在Delphi中,MSComm控件提供了对串口通信的基本控制,如打开、关闭串口,设置波特率、数据位、停止位、校验位等参数。这个控件通过COM接口与应用程序交互,使得开发者可以方便地发送和接收数据,监控串口状态,以及...
MSComm控件包含了如波特率、数据位、停止位、校验位等串口参数的设置,并且支持事件驱动的通信模式,方便处理串口数据的接收和发送。 3. **串口参数设置** 在MFC程序中,我们可以使用MSComm控件的成员函数来设置...