亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cserial.cpp

?? windows ce開發技巧與實例光盤代碼
?? CPP
字號:
// Serial.cpp: implementation of the CSerial class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "resource.h"
#include "CSerial.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CSerial::CSerial()
{
	m_hIDComDev = NULL;
	m_bOpened = FALSE;
}

CSerial::~CSerial()
{
	PortClose();
}

BOOL CSerial::Open( int nPort, int nBaud )
{

	if( m_bOpened ) return( TRUE );

	TCHAR szPort[15];
	DCB dcb;

	wsprintf( szPort, _T("COM%d:"), nPort );
	m_hIDComDev = CreateFile( szPort,
		GENERIC_READ | GENERIC_WRITE,
		0,
		NULL,
		OPEN_EXISTING,
		0,
		NULL 
		);

	if( m_hIDComDev == INVALID_HANDLE_VALUE)
	{
		DWORD dwError=GetLastError();
		//::MessageBox(0,_T("打開端口出錯!請確定端口設備的使用情況后關閉重試."),_T("ERROR!"),MB_OK );
		return( FALSE );
	}
	else
	{
		m_bOpened = TRUE;
	}

	// Change the CommTimeOuts structure settings.
	COMMTIMEOUTS CommTimeOuts;
	GetCommTimeouts (szPort, &CommTimeOuts);

    CommTimeOuts.ReadIntervalTimeout = MAXDWORD;  
    CommTimeOuts.ReadTotalTimeoutMultiplier = 0;  
    CommTimeOuts.ReadTotalTimeoutConstant = 0;    
    CommTimeOuts.WriteTotalTimeoutMultiplier = 0;  
    CommTimeOuts.WriteTotalTimeoutConstant = 0;    

	if(!SetCommTimeouts( m_hIDComDev, &CommTimeOuts ))
	{
		//could not creatthe read thread;
		 //::MessageBox (NULL,_T("不能設置延時參數"),_T("ERROR"),MB_OK);
		 DWORD dwError=GetLastError();
		 return FALSE;
	}

	dcb.DCBlength = sizeof( DCB );
	GetCommState( m_hIDComDev, &dcb );
	dcb.BaudRate = nBaud;

    dcb.fBinary = TRUE;               // Binary mode; no EOF check 
    dcb.fParity = TRUE;               // Enable parity checking 
    dcb.fOutxCtsFlow = FALSE;         // No CTS output flow control 
    dcb.fOutxDsrFlow = FALSE;         // No DSR output flow control 
    dcb.fDtrControl = DTR_CONTROL_ENABLE; 
                                      // DTR flow control type 
    dcb.fDsrSensitivity = FALSE;      // DSR sensitivity 
    dcb.fTXContinueOnXoff = TRUE;     // XOFF continues Tx 
    dcb.fOutX = FALSE;                // No XON/XOFF out flow control 
    dcb.fInX = TRUE;                 // No XON/XOFF in flow control 
    dcb.fErrorChar = FALSE;           // Disable error replacement 
    dcb.fNull = FALSE;                // Disable null stripping 
    dcb.fRtsControl = RTS_CONTROL_ENABLE; 
                                      // RTS flow control 
    dcb.fAbortOnError = FALSE;        // Do not abort reads/writes on 
                                      // error
    dcb.ByteSize = 8;                 // Number of bits/byte, 4-8 
    dcb.Parity = 0;            // 0-4=no,odd,even,mark,space 
    dcb.StopBits = ONE5STOPBITS;        // 0,1,2 = 1, 1.5, 2 


	if( !SetCommState( m_hIDComDev, &dcb )||
	!SetupComm( m_hIDComDev, 1024, 1024 )/*||
										 m_OverlappedRead.hEvent == NULL ||
										 m_OverlappedWrite.hEvent == NULL*/ )
	{
		DWORD dwError = GetLastError();
		//if( m_OverlappedRead.hEvent != NULL ) CloseHandle( m_OverlappedRead.hEvent );
		//if( m_OverlappedWrite.hEvent != NULL ) CloseHandle( m_OverlappedWrite.hEvent );
		CloseHandle( m_hIDComDev );
		//::MessageBox(0,_T("初始化端口不正確!"),_T("ERROR!"),MB_OK );
		return( FALSE );
	}
	
	else
	{
	}
	
	m_bOpened = TRUE;
	
	return( m_bOpened );
}

//======================
BOOL CSerial::PortClose (void)
{
	if (m_bOpened)
	{
		// Close the communication port.
		if (!CloseHandle (m_hIDComDev))
		{
			DWORD dwError = GetLastError ();
			
		}
		else
		{
			//::MessageBox (NULL,_T("正常退出,謝謝使用!"),_T("RIGHT"),MB_OK);   }

			m_bOpened = FALSE;
		}
	}
	else
	{
		return(FALSE); 
	}
	return( TRUE );  
}

BOOL CSerial::SendData( const char *buffer, int size )
{
	DWORD dwNumByteWritten;
	if(!WriteFile(m_hIDComDev,buffer,size,&dwNumByteWritten,NULL))
	{
		DWORD dwError = GetLastError();
		return FALSE;
	}
	return TRUE;
}

int CSerial::ReadData( char *data )
{
	char Byte;
	DWORD dwCommModemStatus,dwBytesTransferred;
	int len = 0;
	
	SetCommMask (m_hIDComDev, EV_RXCHAR | EV_CTS | EV_DSR | EV_RLSD );
	
	if (m_hIDComDev!= INVALID_HANDLE_VALUE) 
	{
		WaitCommEvent (m_hIDComDev, &dwCommModemStatus, 0);
		
		
		SetCommMask (m_hIDComDev, EV_RXCHAR | EV_CTS | EV_DSR );
		
		if (dwCommModemStatus & EV_RXCHAR) 
		{
			// Loop for waiting for the data.
			do 
			{
				// Read the data from the serial port.
				ReadFile (m_hIDComDev,
					&Byte, 
					1, 
					&dwBytesTransferred,
					0
					);
				
				// Display the data read.
				if (dwBytesTransferred == 1)
				{
					data[len] = Byte;
					data[len+1] = 0;
					len++;
				}
			}
			while (dwBytesTransferred == 1);
		}   
	}
	return len;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美激情在线一区二区三区| 中文字幕中文字幕一区二区| 国产精品蜜臀在线观看| 亚洲成精国产精品女| 国产成人免费网站| 91精品一区二区三区久久久久久| 中文一区二区完整视频在线观看| 天堂蜜桃91精品| 成人国产精品免费观看| 精品日韩99亚洲| 亚洲第一成人在线| 93久久精品日日躁夜夜躁欧美| 日韩精品专区在线影院重磅| 亚洲欧美成人一区二区三区| 久久国产精品无码网站| 欧美三级韩国三级日本一级| **欧美大码日韩| 国产精品1024| 欧美tk—视频vk| 日韩精品一级中文字幕精品视频免费观看| 成人性生交大片免费看在线播放| 日韩欧美高清在线| 五月天网站亚洲| 欧美日韩精品久久久| 亚洲伦理在线免费看| 色网综合在线观看| 中文字幕人成不卡一区| 成人一区二区三区视频| 国产日本亚洲高清| 国产成人在线免费观看| 久久午夜免费电影| 国产一区二区中文字幕| 精品福利二区三区| 精彩视频一区二区三区| 欧美精品一区二区三区四区| 日本成人超碰在线观看| 欧美一区二区黄色| 久久av中文字幕片| 久久久91精品国产一区二区精品| 国产精品88888| 国产精品美女久久久久久| 懂色一区二区三区免费观看| 中文字幕中文字幕一区| 色悠久久久久综合欧美99| 亚洲综合在线电影| 欧美顶级少妇做爰| 麻豆精品一区二区| 久久嫩草精品久久久精品一| 国产iv一区二区三区| 国产精品国产三级国产专播品爱网| 不卡的av中国片| 亚洲在线视频网站| 欧美男女性生活在线直播观看| 强制捆绑调教一区二区| 久久久久国产精品厨房| 91视频一区二区三区| 亚洲va韩国va欧美va精品 | 成人动漫av在线| 亚洲色图欧洲色图| 日韩一区二区免费高清| 国产呦萝稀缺另类资源| 亚洲欧美激情在线| 欧美一级电影网站| 成人av中文字幕| 首页国产丝袜综合| 国产亚洲欧美色| 欧美日韩一二区| 国产麻豆成人精品| 亚洲一区免费观看| 久久久久国产精品人| 欧美日韩中文字幕精品| 国产精品综合一区二区三区| 一区二区三区四区不卡视频| 日韩三级高清在线| 日本伦理一区二区| 国产精品1区2区3区在线观看| 一区二区欧美在线观看| 久久综合九色综合97婷婷女人| 欧美在线视频你懂得| 国产精品一区2区| 视频一区视频二区中文字幕| 国产精品久久久久久久久免费樱桃| 欧美区视频在线观看| 91在线无精精品入口| 国产在线播放一区二区三区 | 国产日韩av一区| 91精品国产麻豆| 91精品1区2区| 风间由美中文字幕在线看视频国产欧美| 一区二区三区国产精华| 欧美经典一区二区三区| 91精品国产91久久久久久一区二区| 99久久久久久| 国产一区二区精品久久99| 婷婷综合另类小说色区| 一区二区三区四区av| 国产精品福利av | 69久久99精品久久久久婷婷 | 成人免费视频app| 久久电影国产免费久久电影| 亚洲成人av电影| 一区二区欧美精品| 亚洲免费伊人电影| 亚洲日本在线a| 一区精品在线播放| 中文文精品字幕一区二区| 久久久夜色精品亚洲| 亚洲精品一区二区在线观看| 91精品国产综合久久久蜜臀粉嫩| 欧美三区免费完整视频在线观看| 色综合天天综合给合国产| 成人蜜臀av电影| 成人美女视频在线看| 懂色av一区二区三区蜜臀| 国产乱色国产精品免费视频| 韩国成人福利片在线播放| 另类综合日韩欧美亚洲| 久久精品72免费观看| 麻豆免费精品视频| 狠狠色狠狠色综合系列| 国产一区二区三区在线看麻豆| 极品少妇一区二区三区精品视频 | 亚洲电影第三页| 午夜精品久久久久久不卡8050 | 亚洲免费资源在线播放| 亚洲欧洲中文日韩久久av乱码| 亚洲视频免费看| 亚洲高清一区二区三区| 免费精品视频在线| 精品影视av免费| 国产传媒日韩欧美成人| 99免费精品视频| 91麻豆精品在线观看| 欧美亚洲尤物久久| 555www色欧美视频| 久久久久国产免费免费| 亚洲视频香蕉人妖| 天堂久久久久va久久久久| 精品中文字幕一区二区| eeuss鲁片一区二区三区| 色狠狠一区二区| 日韩一区二区三免费高清| 国产亚洲综合av| 亚洲精品免费视频| 日本网站在线观看一区二区三区 | 国产一区二区精品久久91| av在线这里只有精品| 欧美精品 国产精品| 国产亚洲精品aa| 亚洲在线成人精品| 国产精品99久久久久久久女警| 色综合久久天天| 欧美大片日本大片免费观看| 欧美激情综合在线| 香蕉成人伊视频在线观看| 国产成+人+日韩+欧美+亚洲| 欧美日韩国产另类不卡| 久久久久久97三级| 午夜欧美2019年伦理| 国产.精品.日韩.另类.中文.在线.播放 | 日韩免费高清视频| 一区二区三区在线视频观看58 | 国产天堂亚洲国产碰碰| 午夜精品久久久久久久久| 成人性生交大片免费看视频在线| 欧美久久一二三四区| ...xxx性欧美| 国产精品99久久久久久似苏梦涵| 欧美日韩电影在线播放| 国产精品乱码人人做人人爱| 老司机一区二区| 欧美日韩国产一区二区三区地区| 国产精品国产精品国产专区不蜜| 蜜臀久久99精品久久久久宅男 | 国产精品99久久久久久有的能看| 在线成人免费观看| 亚洲色图丝袜美腿| 国产成人精品网址| 精品国产伦一区二区三区观看方式| 亚洲欧美福利一区二区| 粉嫩av一区二区三区在线播放 | 激情综合色播激情啊| 欧美性大战xxxxx久久久| 国产精品成人免费| 国产成人精品亚洲日本在线桃色 | 亚洲美女免费视频| 国产69精品久久久久毛片| 欧美成人一区二区| 美美哒免费高清在线观看视频一区二区 | 日韩三级精品电影久久久| 亚洲福利视频导航| 欧美综合久久久| 亚洲精品高清在线| 欧美综合亚洲图片综合区| 亚洲日本va在线观看| aaa欧美日韩| 亚洲乱码国产乱码精品精的特点| 91天堂素人约啪| 亚洲裸体xxx| 欧美吞精做爰啪啪高潮|