/**************************************************************************\ | | | CABECERA A INCLUIR EN TUS PROGRAMAS: #include "PRN_CNT.h" | | | | | >>> Rutinas para la comunicaci¢n USUARIO <---> PRN_CNT <<< | | \**************************************************************************/ #define LEER 0 #define ESCRIBIR 1 #define OK 1 #define FALLO_DESCONOCIDO -1 #define NO_ARCHIVO -2 #define ARCHIVO_INCORRECTO -3 #define ON 1 #define OFF 0 #define ERROR_EN_ATEXIT -9 #define FUNCION_YA_REGISTRADA 5 typedef struct { char Salida0; char Salida1; char Salida2; char Salida3; char Salida4; char Salida5; char Salida6; char Salida7; } ESTADOS; extern char Lpt_usado; /**************************************************************************\ | | | Esta rutina debe ser llamada al iniciar el programa que use las librerias. | | | | Es la encargada de poner a cero todas la salidas, al principio y al salir. | | | | | | Parametros de Entrada: ( ninguno ) | | Parametros de Salida: | | OK Todo ha ido bien. | | ERROR_EN_ATEXIT Error registrando funci¢n | | FUNCION_YA_REGISTRADA No es la 1¦ vez | | | \**************************************************************************/ int Init_all(void); /**************************************************************************\ | | | WARNING: | | El uso de la siguiente funci¢n esta indicada solo para usuarios | | experimentados, se debe usar en lugar de la funci¢n anterior. | | | | Parametros de Entrada: | | ( LEER/ESCRIBIR ) // L/E los registros del fich| | ( %s ) // _ero %s | | | | Parametros de Salida: | | 1 Ok! OK | | -1 Fallo desconocido FALLO_DESCONOCIDO | | -2 Archivo no existe NO_ARCHIVO | | -3 Error archivo no valido ARCHIVO_INCORRECTO | | | \**************************************************************************/ int Register( char leer_escribir, char *file ); /**************************************************************************\ | | | Resetea todas las salidas y las pone a cero. | | | \**************************************************************************/ void Reset_all(void); /**************************************************************************\ | | | Obtiene el estado de las salidas ( On/Off ), de la ampliacion AMPL. | | | | Parametros de Entrada: | | ampl Ampliaci¢n donde debemos mirar | | estados Puntero a estructura con los estados | | | | Parametros de Salida: | | char 1Byte con los estados | | | | NOTA: si &estados es NULL, solo se devolvera el char de salida. | \**************************************************************************/ unsigned char Lee_Salidas( char ampl, ESTADOS *estados ); /**************************************************************************\ | | | Obtiene el estado de una salida ( On/Off ), cualquiera. | | | | Parametros de Entrada: | | salida ( Si 1 ampl. 0 a 7 ) | | ( Si 10 ampl. 0 a 80 ) | | | | Parametros de Salida: | | char 1Byte con el estado | | | \**************************************************************************/ unsigned char Lee_Salida( char salida ); /**************************************************************************\ | | | Escribe la variable 'estados' ( On/Off ), en la ampliacion AMPL. | | | | Parametros de Entrada: | | ampl Ampliaci¢n donde debemos mirar | | estados Puntero a estructura con los estados | | estadosb Byte con los estados | | | | Parametros de Salida: | | char 1Byte con los estados | | | | NOTA: si &estados es NULL, se utilizar  el char con los estados. | \**************************************************************************/ unsigned char Escribe_Salidas( char ampl, ESTADOS *estados, char estadosb ); /**************************************************************************\ | | | Parametros de Entrada: | | salida ( Si 1 ampl. 0 a 3 ) | | ( Si 10 ampl. 0 a 80 ) | | estado ( ON / OFF ) | | | | Parametros de Salida: | | char 1Byte con el estado | | | \**************************************************************************/ unsigned char Escribe_Salida( char salida, char estado ); /**************************************************************************\ | | | Lee las entradas y la almacena en la variable estados. | | | | Parametros de Entrada: | | ampl Ampliaci¢n donde debemos mirar | | estados Puntero a estructura con los estados | | | | Parametros de Salida: | | char 1Byte con los estados | | | | NOTA: si &estados es NULL, solo se devolvera el char de salida. | \**************************************************************************/ unsigned char Lee_Entradas( char ampl, ESTADOS *estados ); /**************************************************************************\ | | | Lee una entrada cualquiera. | | | | Parametros de Entrada: | | entrada ( Si 1 ampl. 0 a 7 ) | | ( Si 10 ampl. 0 a 80 ) | | | | Parametros de Salida: | | char 1Byte con el estado | | | \**************************************************************************/ unsigned char Lee_Entrada( char entrada ); /*ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ*/ /*ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛFÛIÛNÛÛÛDÛEÛÛÛLÛAÛÛÛÛCÛAÛBÛEÛCÛEÛRÛAÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ*/ /*ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ*/