www.pudn.com > Lib870-5Demo.rar > serialcomm.h


//CSerialPort:串口通讯类 
 
#ifndef _SERIALCOMM_H 
#define _SERIALCOMM_H 
 
 
 
#define ASCII_BEL  0x07 
#define ASCII_BS   0x08 
#define ASCII_TAB  0x09 
#define ASCII_LF   0x0A 
#define ASCII_CR   0x0D 
#define ASCII_XON  0x11 
#define ASCII_XOFF 0x13 
#define MAXBLOCK 256 
//class CChanSock; 
#include "stdafx.h" 
class AFX_EXT_CLASS CSerialPort 
{ 
public: 
 
	char r_port[32]; 
	int r_baud; 
	int r_intervaltm; 
	int r_totaltm; 
	 
	void readSerialConfig(); 
 
 
	bool InitComm(); 
	bool CloseComm(); 
	char m_sPort[100]; 
	CSerialPort(); 
	virtual ~CSerialPort(); 
	void WaitClose(); 
	bool WaitInit(); 
	int WaitInput(BYTE * rcv,int buflen); 
	virtual void Close(); 
	virtual int Input(BYTE * rcv,int nMaxLength); 
	int Outputold(BYTE * sd,int num); 
	virtual int Output(unsigned char Transmit_Buffer[],int Frame_Length); 
	virtual bool Open(); 
    void SetCommParam(char* portname,long baud,int databits,bool dtrdsr,int parity,bool rtscts,int stopbits,int sockportnum); 
	bool openflag; 
	void SetTimeParam(unsigned int intertime,unsigned int timeout); 
protected: 
    //通讯参数 
	long m_nBaud; 
	int m_nDataBits; 
	bool m_bDTRDSR; 
	int m_nParity; 
	bool m_bRTSCTS; 
	int m_nStopBits; 
    int sockport; 
	int m_intertime; 
	int m_timeout; 
 
	HANDLE m_idComDev; 
	OVERLAPPED m_osWrite, m_osRead; 
	OVERLAPPED os; 
 
}; 
 
#endif