00001
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042 #ifndef __ser_core_h
00043 #define __ser_core_h 1
00044
00045
00046 #include "history.h"
00047
00048
00049 #define ser_verbose 0
00050 #define ser_noverbose 1
00051
00052 typedef struct {
00053 char name[100];
00054 int devfd;
00055 int baud;
00056 hist_rec *hist;
00057 volatile int busy;
00058 int nooutput;
00059
00060 char buffer[1000];
00061 int buffill;
00062 volatile int block;
00063 } serdev;
00064
00065
00066
00067 serdev *serial_open ( char *dev, int stty_baud, int *err );
00068
00069 void serial_close ( serdev *device );
00070
00071
00072 int serial_reopen( serdev *device );
00073
00074 int serial_read ( serdev *device, void (*intputproc)(const char *) );
00075 int serial_read_timeout ( serdev *device, int timeout, char *ergstr );
00076
00077 int serial_wait_lines ( serdev *device, int nr, int timeout );
00078
00079 int serial_write ( serdev *device, const char *commandstr,
00080 void (*outputproc)(const char *) );
00081
00082 void serial_verbose( serdev *device, int nooutput );
00083 int serial_write_byte ( serdev *device, int byte);
00084
00085 #endif