91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

VC++串口編程文檔和實例代碼,對函數有詳細的解釋,代碼直接可以使用,串口 ReadFile WriteFile sio_write sio_read函數有詳細的介紹

資源截圖

代碼片段和文件信息

#include?“stdafx.h“
#include?“DrvComCtl.h“

#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif

#include?“../_include/Drivers/pcomm.h“

CDrvComCtl::CDrvComCtl()
{
m_iPort?=?-1;
m_nTotalTimeouts?=?400;
m_nIntervalTimeouts?=?200;
}

CDrvComCtl::~CDrvComCtl()
{
ClosePort();
}

//打開串口
BOOL?CDrvComCtl::OpenPort(int?iport?char*?szErr)
{
int?iRet?=?sio_open(iport);
if?(?iRet?!=?SIO_OK)
{
switch(iRet)
{
case?SIO_BADPORT:
strcpy(szErr?“no?such?port?or?port?not?opened!“);
break;
case?SIO_OPENFAIL:
strcpy(szErr?“no?such?port?or?port?has?be?opened!“);
break;
case?SIO_WIN32FAIL:
strcpy(szErr?“call?win32?function?fail?please?call!“);
break;
default:
break;
}
return?FALSE;
}

m_iPort?=?iport;
//SetTimeOut();
return?TRUE;
}

//設置串口參數
BOOL?CDrvComCtl::SetPort(DWORD?dwBaudRate?
?BYTE?byParity
?BYTE?byDataBit?
?BYTE?byStopBits?
?char*?szErr)
{
if?(m_iPort?==?-1)
{
strcpy(szErr?“port?is?not?open!“);
return?FALSE;
}

m_dwBaudRate?=?dwBaudRate;
m_byParity???=?byParity;
m_byDataBit??=?byDataBit;
m_byStopBit??=?byStopBits;

int?nDataBits?=?-1;
switch(byDataBit)?
{
case?5:
nDataBits=BIT_5;
break;
case?6:
nDataBits=BIT_6;
break;
case?7:
nDataBits=BIT_7;
break;
case?8:
nDataBits=BIT_8;
break;
default:
strcpy(?szErr?“no?defined?databits!“);
return?FALSE;
break;
}
//停止位
int?nStopBits?=-1;
switch(byStopBits)
{
case?1:
nStopBits=STOP_1;
break;
case?2:
nStopBits=STOP_2;
break;
default:
strcpy(?szErr?“no?defined?stopits!“);
return?FALSE;
break;
}
//校驗位
int?nParity?=?-1;
switch(byParity)
{
case?0:
nParity=P_NONE;
break;
case?1:
nParity=P_ODD;
break;
case?2:
nParity=P_EVEN;
break;
case?3:
nParity=P_MRK;
break;
case?4:
nParity=P_SPC;
break;
default:
strcpy(?szErr?“no?defined?Paritys!“);
return?FALSE;
break;
}
//波特率
int?nBaudRate?=?-1;
switch(dwBaudRate)
{
case?CBR_110:
nBaudRate=B110;
break;
case?CBR_300:
nBaudRate=B300;
break;
case?CBR_600:
nBaudRate=B600;
break;
case?CBR_1200:
nBaudRate=B1200;
break;
case?CBR_2400:
nBaudRate=B2400;
break;
case?CBR_4800:
nBaudRate=B4800;
break;
case?CBR_9600:
nBaudRate=B9600;
break;
case?CBR_19200:
nBaudRate=B19200;
break;
case?CBR_38400:
nBaudRate=B38400;
break;
case?CBR_57600:
nBaudRate=B57600;
break;
case?CBR_115200:
nBaudRate=B115200;
break;
default:
strcpy(?szErr?“no?defined?baudrate!“);
return?FALSE;
break;
}
????int?nMode=nDataBits|nParity|nStopBits;
int?iRet?=?sio_ioctl(m_iPort?nBaudRate?nMode);
if(?iRet?!=?SIO_OK?)
{
switch(iRet)
{
case?SIO_BADPARM:
strcpy(?szErr?“bad?parm!“);
break;
default:
return?FALSE;
}
}
return?TRUE;
}
//設置超時
voi

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????34816??2011-11-25?15:54??VC++?串口設備操作\基于VB的串口通訊及其軟件實現.doc

?????文件???????5743??2011-11-25?16:02??VC++?串口設備操作\調用Pcomm函數庫\DrvComCtl.cpp

?????文件???????1390??2011-11-01?15:55??VC++?串口設備操作\調用Pcomm函數庫\DrvComCtl.h

?????文件???????7403??2011-05-12?13:56??VC++?串口設備操作\調用Pcomm函數庫\PCOMM.H

?????文件??????42496??2011-11-24?14:01??VC++?串口設備操作\調用Pcomm函數庫\pcomm使用說明.doc

?????文件???????6139??2011-11-25?16:14??VC++?串口設備操作\調用Win32?API函數\SerialPort.cpp

?????文件???????3093??2010-05-28?13:28??VC++?串口設備操作\調用Win32?API函數\SerialPort.h

?????目錄??????????0??2011-11-25?16:07??VC++?串口設備操作\調用Pcomm函數庫

?????目錄??????????0??2011-11-25?16:14??VC++?串口設備操作\調用Win32?API函數

?????目錄??????????0??2011-11-25?16:26??VC++?串口設備操作

-----------?---------??----------?-----??----

???????????????101080????????????????????10


評論

共有 條評論