comm.h

来自「手机开发环境BREW实例」· C头文件 代码 · 共 63 行

H
63
字号
// Comm.h: interface for the CComm class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_COMMSYNC_H__B785F2F9_48A9_4B4D_8E7B_AB6E2623ECDD__INCLUDED_)
#define AFX_COMMSYNC_H__B785F2F9_48A9_4B4D_8E7B_AB6E2623ECDD__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#define	DEFAULT_BUFFER_SIZE_INPUT				512
#define	DEFAULT_BUFFER_SIZE_OUTPUT				1024

#define	TIME_WAIT_READ_MIN						1000
#define	TIME_WAIT_READ_MAX						20000

#ifndef BZERO
	#define BZERO(buf) memset(&(buf), 0, sizeof(buf))
#endif

class CComm  
{
public:
	CComm();
	virtual ~CComm();

	BOOL Open(int iPort, int iBaud,BYTE bByteSize,BYTE bParity,BYTE bStopBit,DWORD dwfParity);
	void Close();

	int ReadData(void *, int);
	BOOL SendData(const unsigned char *, int);

	BOOL SetupBase(int iBaudRate, int iDataBits, BYTE bParityMode, BYTE bStopBits,DWORD dwfParity);
	BOOL IsOpened(){return (m_hComDev != INVALID_HANDLE_VALUE)?TRUE:FALSE;}

	DWORD m_dwError;

protected:
	DWORD ReadDataWaiting();

private:
	BOOL PortStateGet();
	BOOL PortStateSet();
	BOOL PortTimeoutsGet();
	BOOL PortTimeoutsSet();
	BOOL PortBufferSizeSet();

	HANDLE m_hComDev;
	DCB m_dcbPort;
	COMMTIMEOUTS m_CommTimeOutsPort;
	struct _BUFFER
	{
		//输入缓冲区大小
		DWORD dwInput;
		//输出缓冲区大小
		DWORD dwOutput;
	}m_sBufferSize;

};

#endif // !defined(AFX_COMMSYNC_H__B785F2F9_48A9_4B4D_8E7B_AB6E2623ECDD__INCLUDED_)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?