Hace unos años me armé la plaqueta de interfaz para controlar el puerto paralelo de la PC.
Hoy en día he retomado el proyecto y trataré de armar un pequeño robot comandado por esta placa desde linux, utilizando una notebook o netbook.
Asi que una de las cosas fundamentales que necesito para este trabajo es conocer el manejo de los puertos con el lenguaje C desde Linux y como compilarlo.
Este es el código básico para el manejo del puerto paralelo en Linux con gcc:
#include
#include
#include
#define puerto 0x378 /* LPT1 */
int main (void)
{
unsigned int p; // en esta variable le decimos, en hexa, cuantos cuantos leds prenderan
//apertura del puerto
if(ioperm(puerto,1,1))
{
perror(“Se ha encontrado el siguiente error: “); //manejo de errores
exit(1); //salida con error
}
p = 0x01; //puerto 1
outb(p,puerto); //envia el valor en binario al puerto
usleep(1000000); //delay
p = 0x00; //puerto 0. Apaga todos los bits
outb(p,puerto);
if(ioperm(puerto,1,0)) //cerramos los permisos del uso al puerto
{
perror(“Se ha encontrado el siguiente error: “); //volvemos a manejar un eror en caso de…
exit(1); // salimos mostrando mensaje de error
}
exit(0); //terminamos el programa
Ahora, como compilamos este programa ?
Supongamos que lo guardamos con el nombre test.c
$ gcc -o test test.c
Para ejecutarlo bastará con la orden: