VC MFC串口通信编程详解
VC MFC串口通信编程详解
同步I/O方式打开串口的示例:
HANDLE hCom;//全局变量,串口句柄
hCom=CreateFile("COM1",//串口名称
GENERIC_READ|GENERIC_WRITE,//允许读和写
0,//独占方式
NULL,
OPEN_EXISTING,//打开而不是创建
0,//同步方式
NULL);
if(hCom==(HANDLE)-1)
{
MessageBox("打开COM失败!");
return FALSE;
}
return TRUE;
重叠I/O打开串口的示例:
HANDLE hCom;//全局变量,串口句柄
hCom =CreateFile("COM1",//串口名称
GENERIC_READ|GENERIC_WRITE,//允许读和写
0,//独占方式
NULL,
OPEN_EXISTING,//打开而不是创建
FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED,//重叠方式 NULL);
if(hCom==INVALID_HANDLE_VALUE)
{
MessageBox("打开COM失败!");
return FALSE;
}
return TRUE;
二 配置串口
在打开通讯设备句柄后,常需要对串口进行一些初始化配置工作.这需要通过一个DCB结构来进行.DCB结构包含了诸如波特率、数据位数、奇偶校验和停止位数等信息.在查询或配置串口的属性时,都要用DCB结构来作为缓冲区.
一般用CreateFile打开串口后,可以调用GetCommState函数来获取串口的初始配置.要修改串口的配置,应该先修改DCB结构,然后再调用SetCommState函数设置串口.
DCB结构包含了串口的各项参数设置,下面仅介绍几个该结构常用的变量: typedef struct _DCB{
………
//波特率,指定通信设备的传输速率.这个成员可以是实际波特率值或者下面的常量值之一:
DWORD BaudRate;
//CBR_110,CBR_300,CBR_600,CBR_1200,CBR_2400,CBR_4800,CBR_9600,CBR_19200, //CBR_38400,
//CBR_56000,CBR_57600,CBR_115200,CBR_128000,CBR_256000,CBR_14400
DWORD fParity;//指定奇偶校验使能.若此成员为1,允许奇偶校验检查 …
BYTE ByteSize;//通信字节位数,4—8
你可能喜欢
- c++经典代码大全
- MFC入门教程
- 串口通信编程
- VB高级编程
- VB控件大全
- API函数
- 工程电路
- Visual_C++MFC入门教程83页
- Visual_C++MFC入门教程84页
- MFC入门教程doc75页
- C++_MFC入门教程75页
- Visual C++MFC入门教程 + 控件说明43页
- VC MFC入门教程85页
- 基于MatlabGUI的串口通信编程实现4页
- Delphi 串口 通信 编程10页
- C#中串口通信编程2页
- 上位机串口通信编程51页
- PC与PLC的串口通信及编程实现4页
- 《Visual C++ Turbo C串口通信编程实践(第2版)》串口通信初学者学习方法建议2页
- 《VB高级编程》理论课程教学大纲6页
- VB高级编程48页
- VB高级编程论文10页
- VB高级编程初探(子类技术SUBCLASS与消息捕获)8页
- VB高级编程100例54页
- VB高级编程论文10页
- VB控件大全属性详解 OLE容器3页
- VB控件大全属性详解 组合框3页
- VB控件大全属性详解 树状视图3页
- VB控件大全属性详解 平面滚动条2页
- VB控件大全属性详解 命令按钮3页
- VB控件大全属性详解 直线2页
- VB使用Win32 API函数入门20页
- Win32 API 函数大全使用速查60页
- 常用API函数16页
- 用API函数控制鼠标2页
- API函数_超强HOOK技术5页
- 利用API函数实现VB特殊窗体的两种方法3页
- 电气工程师_电路基础91页
- 电气工程师_电路的分析方法81页
- 20种工程电路7页
- 工程电路分析答案(英文版)15页
- 工程电路分析答案(英文版)34页
- 工程电路分析答案(英文版)19页


