#include <stdio.h>
#include <string.h>
#include <libv24io.h>
#include <katalcd.h>
int main(void)
{
katalcd_t klcd;
v24ioc_t v24ioc;
char msg[16];
/* iniciamos el modulo */
if (v24io_init(&v24ioc, NULL) != 0) {
printf("No se ha podido iniciar el módulo 24V I/O");
return 1;
}
/* iniciamos el LCD */
if (!katalcd_init(&klcd, KATALCD_BAUDRATE_19200))
exit(1);
katalcd_clear(&klcd);
/* ponemos el pin 0 como salida */
v24io_pinmode(&v24ioc, V24_IO_0, V24_OUTPUT);
/* intentamos escribir en una entrada */
if (v24io_writepin(&v24ioc, V24_IO_3, V24_HIGH) != 0)
printf("Error, no se puede escribir en una entrada\n");
/* vamos cambiando el pin 0 */
/* y leyendo el 1 */
for (;;)
{
v24io_writepin(&v24ioc, V24_IO_0, V24_HIGH);
usleep(1000);
v24io_writepin(&v24ioc, V24_IO_0, V24_LOW);
usleep(1000);
katalcd_home(&klcd);
sprintf(msg, "pin 1: %d\n", v24io_readpin(&v24ioc, V24_IO_1));
katalcd_print(&klcd, msg);
}
v24io_close(&v24ioc);
katalcd_close(&klcd);
return 0;
}