00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00012
00013
00014 #ifndef __SERIAL_H__
00015 #define __SERIAL_H__
00016
00017 #define FC_DTRDSR 0x01
00018 #define FC_RTSCTS 0x02
00019 #define FC_XONXOFF 0x04
00020 #define ASCII_BEL 0x07
00021 #define ASCII_BS 0x08
00022 #define ASCII_LF 0x0A
00023 #define ASCII_CR 0x0D
00024 #define ASCII_XON 0x11
00025 #define ASCII_XOFF 0x13
00026
00027 class CSerial
00028 {
00029
00030 public:
00031 CSerial();
00032 ~CSerial();
00033
00034 BOOL Open( int nPort = 2, int nBaud = 9600 );
00035 BOOL Close( void );
00036
00037 int ReadData( void *, int );
00038 int SendData( const char *, int );
00039 int ReadDataWaiting( void );
00040
00041 BOOL IsOpened( void ){ return( m_bOpened ); }
00042
00043 protected:
00044 BOOL WriteCommByte( unsigned char );
00045
00046 HANDLE m_hIDComDev;
00047 OVERLAPPED m_OverlappedRead, m_OverlappedWrite;
00048 BOOL m_bOpened;
00049
00050 };
00051
00052 #endif