Knowledge Base Nr: 00049 R3964_linux.cpp - http://www.swe-kaiser.de

Downloads: Demo

Linux: R3964 protokoll unter linux verwenden
das kleine programm pollt die schnittstelle und schickt auf tastendruck telegramme die in
telegram.cfg stehen. es wird eine lib und ein exe gebaut.

  
//hzr steht für heizzeitrechner

//////////////////c-interface/////////////////////////////////////////
int mir_hzr_open(const char* szDevice);
int mir_hzr_close();
const char* mir_hzr_send(const char* szRequest, int bWaitAndGetAnswer);
const char* mir_hzr_checkRequest();
const char* mir_hzr_lasterror();
const char* mir_hzr_lastsyserror();

//////////////////cpp-interface/////////////////////////////////////////
class CHZRCom
{
public:
CHZRCom();
~CHZRCom();

int openCom(const char* lpszPort);
int closeCom();

const char* getLastError() { return m_szLastError; }
const char* getLastSysError() { return m_szLastSysError; }

int sendTelegram(char *cDataRecv, int* pnLenDataRecv, char *cDataSend, int nLenDataSend, bool bWaitAndGetAnswer, int nTimeout);
int checkRequestFromHZR(char *cDataRecv, int* pnLenDataRecv);

protected:
void resetError(const char* lpszHint, ...);
void setError(const char* lpszHint, ...);
bool checkForSysErrors(const char* lpszHint, ...);
int getTickCount();

private:
int m_hndPort;
struct termios m_termio;

char m_szLastError[MAXERRBUFFER];
char m_szLastSysError[MAXERRBUFFER];
};