?? comm.hpp
字號:
#if !defined(__COMM_HPP__)
#define __COMM_HPP__
#include "commtype.hpp"
class Comm_config{
public:
short com_num;
short speed_num;
short parity;
short data;
short stop;
short flowctl;
long in_bufferSize;
long out_bufferSize;
};
class Comm
{
OVERLAPPED WaitOS;
WORD m_ibuf,m_obuf;
BOOL WriteCommBlock(LPSTR lpByte , DWORD dwBytesToWrite);
public:
HANDLE portHandle;
//HANDLE ThreadHandle,WaitSignal,CommSignal;
BOOL m_bExitFlags;
//static DWORD WINAPI WaitCommThread(void *);
BOOL init_comm;
char message_buffer[80];
char message_count;
int m_nBusyCount;
char *m_ReadBuf,*m_PutBuf;
private:
int i_count,m_nEndbuf,m_nPtr;
DWORD CommRead(char *c,DWORD ReadBytes);
BOOL PreRead();
public:
Comm(short port,short irq,long rate,
short lineControl, // line control setting
short flowControl = 1, // flow control flag
WORD si = 1024, // input queue size
WORD so = 1024); // and output queue size
~Comm();
WORD Read(char *c);
DWORD Read(char *c,DWORD ReadBytes);
BOOL Write(short c);
BOOL Write(char *s);
BOOL Write(void *s,DWORD dwBytes);
WORD OCount();
WORD ICount();
WORD OFree();
WORD IFree();
short IEmpty(void); // rtn TRUE if input queue
short OEmpty(void); // ..or output queue empty
long GetSpeed(void); // rtn current speed in bps
void SetSpeed(long d); // set up port's divisor
void SetBPS(long d); // set up port's divisor
void IClear(void); // clear input queue
void OClear(void); // ..and output queue
void DTR(long t = 1500L);
BOOL WaitForComm(DWORD Timer);
void SignalComm();
int terminal_display(char *pRetStr=0);
BOOL WaitComm(DWORD Timer=0);
void Purge(long to);
};
extern const short comport_data[4][2];
extern const long speed_data[];
extern const char *string_command[8];
int check_string_command(char *message);
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -