- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
wince串口通讯(国外英文资料)
wince串口通讯(国外英文资料)
头文件Serial.h
/ /串行。h:c串行类的接口。
/ /
/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
#如果!(AFX_SERIAL_H_AAA9_4FEF_B2A7_E089553698EF__INCLUDED_定义)
#定义AFX_SERIAL_H_AAA9_4FEF_B2A7_E089553698EF__INCLUDED_
#如果_MSC_VER 1000
# pragma一旦
# endif / / _MSC_VER 1000
DWORD WINAPI ReadPortThread(值的值);/ /读数据线程
类CSerial
{
公众:
BOOL InitCommTimeouts();/ /设置超时参数
BOOL InitDCB();/ /配置串口
BOOL m_bConnected;
BOOL ClosePort(处理hCommPort);/ /关闭串口
DWORD WritePort(DWORD dwBytesToWrite TCHAR * buf);/ /写数据
BOOL OpenPort(LPTSTR lpszPortName);/ /打开串口
CSerial();
处理hReadThread;
虚拟~ CSerial();
};
定义(AFX_SERIAL_H_AAA9_4FEF_B2A7_E089553698EF__INCLUDED_)# endif / / !
源文件:Serial.cpp
/ /串行。cpp:c串行类的实现。
/ /
/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
# include“stdafx.h”
# include“Serial.h”
# ifdef _DEBUG
# undef THIS_FILE
静态字符THIS_FILE[]= __FILE__;
#定义新的DEBUG_NEW
# endif
处理hPort;
装运箱strInChar;
/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
/ /建设/破坏
/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
CSerial:CSerial()
{
}
CSerial::~ CSerial()
{
如果(hPort != INVALID_HANDLE_VALUE)
ClosePort(hPort);
}
BOOL CSerial::OpenPort(LPTSTR lpszPortName)
{
DWORD dwError,
dwThreadID;
如果(hPort)
{
返回错误;
}
/ /打开串口
hPort = CreateFile(lpszPortName,GENERIC_READ | GENERIC_WRITE,
0,NULL,OPEN_EXISTING 0零);
/ /如果打开端口出错,返回错误的
如果(hPort = = INVALID_HANDLE_VALUE)
{
/ /不能打开端口
装运箱strError;
strError。格式(“不能打开% s,Error No . = % d”),
lpszPortName,每个盘());
MessageBox(NULL,strError,TEXT(“Error”),MB_OK);
返回错误;
}
/ /指定端口监测的事件集
SetCommMask(hPort EV_RXCHAR);
/ /分配设备缓冲区
SetupComm(hPort,512512);
/ /初始化缓冲区中的信息
PurgeComm (hPort, PURGE_TXCLEAR | P
文档评论(0)