LED ansteuern per /dev/lp0

K

kausled

Grünschnabel
Hallo,
Habe auf einem alten PC ubuntu 7.10 aufgespielt und wollte damit versuchen eine LED anzusteuern.Habe mir dann dieses kleine Programm geschrieben:
Code:
/*Quellcode V 1.1 LPT */
#include <stdio.h>
#include <sys/io.h>
#include <unistd.h>

#define LP 0x378
main()
{
char yon;
int Eingangsdialogschleife=1, EingangsdialogschleifeA=0, onoff=1;
                                     /*Eingangsdialog*/
while(1)
{
printf("\n\n\t LPT Hallo, World!\n");
EingangsdialogschleifeA=EingangsdialogschleifeA+1;
printf("Bitte wählen Sie einen Menüpunkt aus!\n\n1.Hallo World!\n\n\t0.Ende\n\nIhre Eingabe:");
scanf("%i",&Eingangsdialogschleife);
if(Eingangsdialogschleife==1)
{onoff=1;
printf("\n\nBitte LP setzten (0xLP):");

while(onoff==1){
printf ("\nAlle Ports -on-\nZum Beenden '0' drücken!\nIhre Eingabe:");
ioperm(LP,5,1);
scanf("%i",&onoff);}
ioperm(LP,5,0);
printf("Der Rest muss noch geschrieben werden!\n");
}
if(Eingangsdialogschleife==0)
break;
}
printf("Das Programm ist beendet.\t nach %ix\n",EingangsdialogschleifeA);

}





//Space         Space              Space
Und im Terminal ausgeführt.Das Messgerät ,dass ich an den lpt angeschlossen hatte zeigte mir aber immer konstant 3V an.Kann es sein, dass Ubuntu gar nicht den Port erkannt hat, obwohl in /dev/lp0 und parport0 steht?
Gibt es einen Befehl um die Adresse des Parallelport anzeigt, diese 0x3BCh?
Was bedeutet eigentlich das 'h' das im Bios steht?
Wie kann man ein Root-Terminal im Ubuntu öffnen?

Überlege mir das Buch 'Messen, Steuern, Regeln mit Linux' zu kaufen, steht denn da viel und gut erklärt über einfache analoge Schaltungen drinnen,z.B so etwas wie mit dieser LED?
Freue mich auf viele gute Antworten!:hilfe2:

===
//edit von sinn3r: Habe dich mal abgetrennt und die Code-Tags ergaenzt.
===
 
Zuletzt bearbeitet von einem Moderator:
Hat die box überhaupt parport-Unterstützung? Neuerdings sparen sie den bei default-Kerneln. Prüfen mit

Code:
dmesg | grep parp

Gruß Aqualung
 
Danke für die schnellen Antworten!
Habe mit dem Command herausgefunden das die Ardesse 0x378 ist.
Habe dann auch das Programm als root ausgeführt, aber die Anzeige vom Messgerät veränderte sich nicht und zeigt trotzdem immer konstant 3V an.
Ist vielleicht mein Programm falsch?:think:
 

Ähnliche Themen

C Code Hilfe!!! gesucht bei Dezimalzahl in Binärzahl for loop

Unix Webserver mit HTML Seite erstellen

Port generieren, wenn nicht dann

Prozesskommunikation mit PIPES - wie funktioniert das?

Samba 4 Gast Zugang unter Ubuntu funktioniert nicht

Zurück
Oben