xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 137KB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2021-12-17
  • 語言: C/C++
  • 標簽: VS2010??RS232??C++??MFC??

資源簡介

用VS2010創建的MFC完整界面工程,具有完整的串口初始化和收發功能類,界面的初始化按鈕和查詢按鈕功能以及支持,其余功能研究者可以進一步在類上擴展。僅供學習用。本人親自開發的,請大家多提意見!

資源截圖

代碼片段和文件信息

#include?“StdAfx.h“
#include?“LYVRSerial.h“

/*
(1)該程序為串口通訊設備調試的初步測試程序,僅供學習研究C++程序之
范例,未經作者書面同意,不得隨意用于商業用途。
(2)如果你在運用于商業用途時明確標識該段程序的代碼來源為“成都朗玉測控”
即可免費使用,否則視為侵權。
(3)在用于商業及其它用途時,對任何損失及后果本作者不負任何責任!

成都朗玉測控,版權所有,2018年~2025年
權利人:甘亞東,聯系人:甘亞東,13981885178,qq:891219042
*/
//該型模塊的實例化數量累計,用于互斥量初始化。
int?sc_module_cnt?=?0;

CLYVRSerial::CLYVRSerial():
m_bInitOK(false)
{

m_hComm?=?INVALID_HANDLE_VALUE;

dwInQueue?=?COMM_INQUEUE_BUFLEN;?//輸入緩沖區字節數
dwOutQueue?=?COMM_OUTQUEUE_BUFLEN;?//輸出緩沖區字節數

m_dcb.BaudRate?=?57600;//波特率
????m_dcb.fBinary?=?TRUE;//是否允許傳二進制
????m_dcb.fParity?=?FALSE;//是否奇偶校驗
????m_dcb.ByteSize?=?8;//數據位
????m_dcb.Parity?=?NOPARITY;//ODDPARITY;//奇偶校驗方式
????m_dcb.StopBits?=?ONESTOPBIT;//停止位

m_inLen?=?0;
m_outLen?=?0;

//只設置讀取的間隔超時,不設置讀取的總超時,因為其系數只能設定
//最小為1ms,會時間太長,也沒有意義。
//設定發送總超時,是為了防止萬一有什么故障。
memset(&m_timeOver?0?sizeof(m_timeOver));

//總超時?=?constant?+?multipilier?*?rcvNumber.
m_timeOver.ReadTotalTimeoutConstant?=?1;
m_timeOver.ReadTotalTimeoutMultiplier?=?1;

m_timeOver.ReadIntervalTimeout?=?1;//1ms,兩個字符間的最大延遲。
m_timeOver.WriteTotalTimeoutConstant?=?1;
m_timeOver.WriteTotalTimeoutMultiplier?=?1;

sc_module_cnt++;
TCHAR?temp[16];
wsprintf(temp?L“LYVRCONTROL_%02d“?sc_module_cnt);
m_rsMutex?=?CreateMutex(NULL?FALSE?temp);
}


CLYVRSerial::~CLYVRSerial(void)
{
Close();
}

//?在指定的串口號上打開SC73調理板。
//?返回0表示無異常,一切操作順利,否則返回非零的數表示錯誤號。
int?CLYVRSerial::Open(int?comPort)
{
if(m_hComm?!=?INVALID_HANDLE_VALUE)
return?COMM_ALREADY_OPEN;

m_Port?=?comPort;
int?err?=?InitCommPort();
if(err?!=?0)
return?err;

return?0;
}

//?關閉SC73調理板,釋放全部資源。
//?返回0表示無異常,一切操作順利,否則返回非零的數表示錯誤號。
int?CLYVRSerial::Close(void)
{
//丟棄通信資源的輸出或輸入緩沖區字符并終止在通信資源上掛起的讀、寫操操作
if(m_hComm?!=?INVALID_HANDLE_VALUE)
{
PurgeComm(?m_hComm?PURGE_TXABORT?|?PURGE_RXABORT?|?PURGE_TXCLEAR?|?PURGE_RXCLEAR?)?;
CloseHandle(?m_hComm?);
}
m_hComm?=?INVALID_HANDLE_VALUE;

return?0;
}

//?查詢SC73調理板,其應返回一個確認報文,表明其存在且正常。
//?返回1表示正常,0表示異常。其它數值表示執行函數過程中發生錯誤。
int?CLYVRSerial::Touch(void)
{
if(m_hComm?==?INVALID_HANDLE_VALUE)
return?COMM_INVALID_HANDLE;
DWORD?dwWaitResult?=?WaitForSingleobject(?
m_rsMutex????//?handle?to?mutex
2000);??//1秒等待//?INFINITE:no?time-out?interval

if?(dwWaitResult?==?WAIT_object_0)?
{
//在接收/發送數據前緩沖區中可能有垃圾數據或者中途想清空緩沖區數據.
PurgeComm(m_hComm?PURGE_TXABORT?|?PURGE_RXABORT?|?PURGE_TXCLEAR?|?PURGE_RXCLEAR?);

//組裝報文
int?i=0;
m_outBuf[i++]?=?0xA5;//主機命令標識頭為固定值
m_outBuf[i++]?=?0x01;//數據的個數,字節數
m_outBuf[i++]?=?0x00;//地址/分頁?兩個字節
m_outBuf[i++]?=?0x00;
m_outBuf[i++]?=?0x00;//命令:查詢
m_outBuf[i++]?=?0x01;//數據:反射式詢問
m_outBuf[i]?=?CalcCheckSum(m_outBuf?i);
m_outLen?=?i+1;

//發送報文
int?nErr?=?0;
BYTE?nresult?=?0;
if((nErr?=?SendBuf())?!=?0)
{
nErr?=?COMM_SENDBUF_FAIL;
}
else
{

//接收報文
int?num?=?7;//期望收到的字符數。
if((nErr?=?RecvBuf(num))?!=?0)
nErr?=?COMM_RECVBUF_FAIL;

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

?????文件???????9787??2018-04-24?12:15??VRControlRS232\VRControlRS232\LYVRSerial.cpp

?????文件???????2139??2018-04-24?12:15??VRControlRS232\VRControlRS232\LYVRSerial.h

?????文件???????3146??2018-04-24?11:07??VRControlRS232\VRControlRS232\ReadMe.txt

?????文件??????67777??2018-04-24?12:19??VRControlRS232\VRControlRS232\res\VRControlRS232.ico

?????文件????????684??2018-04-24?11:07??VRControlRS232\VRControlRS232\res\VRControlRS232.rc2

?????文件???????2570??2018-04-24?11:33??VRControlRS232\VRControlRS232\resource.h

?????文件????????147??2018-04-24?11:07??VRControlRS232\VRControlRS232\stdafx.cpp

?????文件???????1632??2018-04-24?11:07??VRControlRS232\VRControlRS232\stdafx.h

?????文件????????234??2018-04-24?11:07??VRControlRS232\VRControlRS232\targetver.h

?????文件?????106904??2018-04-24?11:33??VRControlRS232\VRControlRS232\VRControlRS232.aps

?????文件???????2097??2018-04-24?11:07??VRControlRS232\VRControlRS232\VRControlRS232.cpp

?????文件????????879??2018-04-24?12:15??VRControlRS232\VRControlRS232\VRControlRS232.h

?????文件??????12336??2018-04-24?11:33??VRControlRS232\VRControlRS232\VRControlRS232.rc

?????文件???????6066??2018-04-24?11:19??VRControlRS232\VRControlRS232\VRControlRS232.vcxproj

?????文件???????2223??2018-04-24?11:19??VRControlRS232\VRControlRS232\VRControlRS232.vcxproj.filters

?????文件????????143??2018-04-24?11:07??VRControlRS232\VRControlRS232\VRControlRS232.vcxproj.user

?????文件???????6538??2018-04-24?12:15??VRControlRS232\VRControlRS232\VRControlRS232Dlg.cpp

?????文件???????1525??2018-04-24?12:15??VRControlRS232\VRControlRS232\VRControlRS232Dlg.h

?????文件????????909??2018-04-24?11:07??VRControlRS232\VRControlRS232.sln

????..A..H.?????14336??2018-04-24?12:22??VRControlRS232\VRControlRS232.suo

?????目錄??????????0??2018-04-24?12:23??VRControlRS232\VRControlRS232\Debug

?????目錄??????????0??2018-04-24?12:19??VRControlRS232\VRControlRS232\res

?????目錄??????????0??2018-04-24?12:24??VRControlRS232\Debug

?????目錄??????????0??2018-04-24?12:23??VRControlRS232\ipch

?????目錄??????????0??2018-04-24?11:33??VRControlRS232\VRControlRS232

?????目錄??????????0??2018-04-24?12:23??VRControlRS232

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

???????????????242072????????????????????26


評論

共有 條評論