43 lines
1.4 KiB
Plaintext
43 lines
1.4 KiB
Plaintext
//---------------------------------------------------------------------------
|
|
|
|
#ifndef ComPortH
|
|
#define ComPortH
|
|
//---------------------------------------------------------------------------
|
|
#if defined( _BORLAND )
|
|
#include <vcl.h>
|
|
#endif
|
|
|
|
//#include <WinNt.h>
|
|
#include <string>
|
|
//---------------------------------------------------------------------------
|
|
typedef void *HANDLE;
|
|
//---------------------------------------------------------------------------
|
|
std::string getComName(int num);
|
|
//---------------------------------------------------------------------------
|
|
class ComPort
|
|
{ private:
|
|
HANDLE hCom;
|
|
void CheckBaudRate();
|
|
protected:
|
|
int m_time; //Âðåìÿ çàäåðæêè â ìèëèñåêóíäàõ ïî óìîë÷àíèþ
|
|
public:
|
|
bool bOpen; //Ñîñòîÿíèå ïîðòà
|
|
int ComNumber; //Íîìåð êîì ïîðòà
|
|
int BaudRate; //Ñêîðîñòü êîì ïîðòà DWORD
|
|
|
|
ComPort();
|
|
virtual ~ComPort();
|
|
bool Open(int ComNumber);
|
|
//bool setBaudRate();
|
|
bool SetTimeout(unsigned long time); //Ñêîëüêî æäàòü äàííûõ (Äëÿ ÷òåíèÿ è çàïèèñè)
|
|
|
|
bool Close(); //Ðàçîðâàòü ñâÿçü
|
|
bool Setup(int num = -1); //Íàñòðîéêà ïàðàìåòðîâ êîì ïîðòà
|
|
unsigned long Write(const void* lpBuffer,unsigned long nNumberOfBytesToWrite);
|
|
unsigned long WriteString(std::string str);
|
|
char WriteChar(char ch);
|
|
unsigned long Read(void* lpBuffer,unsigned long nNumberOfBytesToRead);
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
#endif
|