一.想一进入程序,有默认的串口参数设置:
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
分享到:
相关推荐
SerialPort类对分别用[BaudRate]、[Parity]、[DataBits]、[StopBits]属性设置通讯格式中的波特率、数据位、停止位和校验位,其 中[Parity]和[StopBits]分别是枚举类型Parity、StopBits,Parity类型中枚举了Odd(奇)...
MCS51Tools包含以下功能:串口通讯调试器、波特率计算器、定时器计算器、标准波特率选择指导、产生标准波特率的晶振选择指导。 特别:现在有很多串口通讯调试软件,基本都是基于“点对点”通讯的,很少有适合PC机...
3.2.7 在MSComm控件串口编程时遇到的其它问题说明 3.3在基于单文档(SDI)程序中应用MSComm控件 3.4应用MSComm控件控制多个串口实例 第4章 Windows API串口编程 4.1 Windows API串口编程概述 4.2 API串口...
9.2.1 波特率设置 9.2.2 奇偶校验位的使用方法 9.2.3 通信协议约定 9.3 系统总体设计 9.4 单片机的串口编程方法 9.5 计算机端通信界面设计 9.6 计算机端程序设计 9.6.1 头文件引用及变量声明 9.6.2 控件加载及控件...
3.2.6 在mscomm控件串口编程时遇到的其他问题 63 3.3 在基于单文档(sdi)程序中应用mscomm控件 63 3.4 应用mscomm控件控制多个串口实例 69 3.5 串口与modem拨号应用简例 76 3.5.1 创建工程 76 3.5.2 代码分析 ...
3.2.6 在mscomm控件串口编程时遇到的其他问题 63 3.3 在基于单文档(sdi)程序中应用mscomm控件 63 3.4 应用mscomm控件控制多个串口实例 69 3.5 串口与modem拨号应用简例 76 3.5.1 创建工程 76 3.5.2 代码分析 ...
3.2.6 在MSComm控件串口编程时遇到的其他问题 63 3.3 在基于单文档(SDI)程序中应用MSComm控件 63 3.4 应用MSComm控件控制多个串口实例 69 3.5 串口与MODEM拨号应用简例 76 3.5.1 创建工程 76 3.5.2 代码分析 78 ...
3.2.6 在mscomm控件串口编程时遇到的其他问题 63 3.3 在基于单文档(sdi)程序中应用mscomm控件 63 3.4 应用mscomm控件控制多个串口实例 69 3.5 串口与modem拨号应用简例 76 3.5.1 创建工程 76 3.5.2 代码分析 ...
3.2.6 在MSComm控件串口编程时遇到的其他问题 63 3.3 在基于单文档(SDI)程序中应用MSComm控件 63 3.4 应用MSComm控件控制多个串口实例 69 3.5 串口与MODEM拨号应用简例 76 3.5.1 创建工程 76 3.5.2 代码分析 78 ...
6.3.1 波特率的设置 122 6.3.2 奇偶校验位的使用方法 123 6.3.3 通信协议约定 123 6.4 单片机的串口编程方法 124 6.4.1 功能描述 124 6.4.2 通信协议 124 6.4.3 初始化串口及寄存器 124 6.4.4 编写中断服务程序 125 ...
串口部分确定了以定时器T1 工作在方式 2 作为波特率发生器,单片机与 PC 机采用了标准的 RS-232C 接口进行连接,其中存在着电平转换电路的设计,利用了 PROTEL99SE 软件进行通信系统硬件电路原理图的绘制,并生成...
本文概述了PC机与单片机间进行串行口通信的基本原理,介绍了PC机与下位机之间的通信协议,并详述了在VisualC + +环境下上位机利用MSComm通信控件与单片机之间进行RS232异步串行口通信的实现,给出了实现通信的硬件...