- New drivers for EL737 and EL734 high performance

- Changes to makefiles


SKIPPED:
	psi/dornier2.c
	psi/el734hp.c
	psi/el737driv.c
	psi/el737hpdriv.c
	psi/make_gen
	psi/makefile_alpha
	psi/psi.c
	psi/velodorn.c
	psi/velodorn.h
	psi/velodorn.w
	psi/hardsup/el737_utility.c
	psi/hardsup/makefile_alpha
	psi/tecs/makefile_alpha
This commit is contained in:
cvs
2003-07-08 13:26:53 +00:00
parent e52bd5d937
commit f7abbe6aa5
17 changed files with 473 additions and 143 deletions

View File

@ -23,6 +23,8 @@ This class provides the basic communication facilities for an arbitrary
mkChannel *pSock;
char *pHost;
int iPort;
int debug;
int registered;
} rs232, *prs232;
@}
@ -36,6 +38,10 @@ The fields are:
\item[mkChannel] Our very own structure for a network connection.
\item[pHost]The host (mostly the terminal server) to connect to.
\item[iPort] The port at host to which to connect.
\item[debug] a flag which switches logging of the communication to
stdout on.
\item[registered] a flag which is set if the registration of the rs232
controllers network port has succeeded.
\end{description}
The following interface functions are provided:
@ -49,14 +55,22 @@ The following interface functions are provided:
void setRS232SendTerminator(prs232 self, char *term);
void setRS232ReplyTerminator(prs232 self, char *term);
void setRS232Timeout(prs232 self, int timeout);
void setRS232Debug(prs232 self, int deb);
int writeRS232(prs232 self, void *data, int dataLen);
int readRS232(prs232 self, void *data, int *dataLen);
int readRS232TillTerm(prs232 self, void *data, int *datalen);
int availableRS232(prs232 self);
int availableNetRS232(prs232 self);
int transactRS232(prs232 self, void *send, int sendLen,
void *reply, int replylen);
void getRS232Error(int iCode, char *errorBuffer,
int errorBufferLen);
int initRS232(prs232 self);
prs232 createRS232(char *host, int iPort);
void KillRS232(void *pData);
@}
All functions take a pointer to their daat structure as a parameter.
@ -80,10 +94,16 @@ The functions have the following meanings:
replyLen bytes of reply are copied to reply.
\item[availableRS232] returns 1 if data is available, o if none is available
and a negative value if an error occurs.
\item[availableNetRS232] returns 1 when data is pending at the network
reader for this port, else 0. This function also resets the network reader for
further use. This could lead to trouble if pending data is not
directly followed by a read.
\item[getRS232Error] gets a string representation for the error code
iCode.
\item[initRS232] tries to close and reopen the RS232 connection. This is
useful for the automatic fixing of communication problems encountered.
\item[createRS232] creates a new rs232 data structure with all
parameters at default values. The connection is NOT opened.
\end{description}
@o rs232controller.h @{
@ -102,6 +122,14 @@ The functions have the following meanings:
#ifndef RS232CONTROLLER
#define RS232CONTROLLER
#include "network.h"
/*
own error codes
*/
#define NOTCONNECTED -2700
#define BADMEMORY -2701
#define TIMEOUT -2702
#define FAILEDCONNECT -2703
#define INCOMPLETE -2704
/*----------------------- a data structure ----------------------------*/
@<rs232dat@>