Wer nicht basteln möchte, kann den Datenport auch per Software mit dem folgenden kleinen Programm auslesen:
#include <sys/io.h>
#include <stdio.h>
#define BASEADDR 0x378
int main ()
{
if (!ioperm (0x378, 1, 1))
printf ("Der Inhalt des I/O-Ports 0x%x ist 0x%x.\n", BASEADDR, inb (BASEADDR));
else
printf ("I/O Permission Fehler.\n");
return 0;
}
Damit die Codegenerierung nicht mit einer Fehlermeldung abbricht, muss mindestens die Compiler-Optimierungsstufe -O beim gcc-Aufruf angegeben werden, also z.B.
gcc -Wall -O2 -o iotest iotest.c
Autor: gkemnitz, Letzte Änderung: 14.04.2011 15:09:59