PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Parport



eicher16ps
12.08.10, 21:30
Gute abend liebe community,

ich hab mich mal als kleiner hobby elektroniker versucht und eine LED an meinen Parport geschlossen.
Hab dabei das Tutorial "http://www.loetstelle.net/praxis/parallelport/parallelport.php" genommen.
Nun hab ich aber das problem, das meine LED (Angeschlossen an D0 und allen Ground Ports) an dem Parport dauerleuchtet und ich sie nicht angesteuert bekomme.

Mein C Code:


#include <sys/io.h>
int main(){
ioperm(0x378, 1, 1);
outb(0, 0x378);
}

Distribution ist Debian.

Kennt vielleicht jemand das Problem? Oder hab ich den Port schon zerschossen?

grüße

derguteweka
12.08.10, 21:54
Moin,


Kennt vielleicht jemand das Problem? Oder hab ich den Port schon zerschossen?

Guck' dir mal den Rueckgabewert von ioperm an, vielleicht geht da schon was schief. Kann ja nicht einfach jeder gepanzerte Penner da was auf einen io-port schreiben wollen duerfen :)

Gruss
WK

eicher16ps
12.08.10, 22:12
Kann ja nicht einfach jeder gepanzerte Penner da was auf einen io-port schreiben wollen duerfen

Auf keinen Fall :-)

Hab meine code jetzt umgeschrieben zu:



#include <sys/io.h>
#include <stdio.h>
#define DATA 0x378
int main(){
if (ioperm(DATA, 1, 1)) {
printf("Couldn't get the port.\n");
perror("ioperm problem:");
}
outb(0, 0x378);
}


Aber immer noch kein Erfolg :-(

derguteweka
12.08.10, 22:25
Moin,

Hm, dann bin ich mit meinem Latein auch schon am Ende. Biste sicher, dass der Port an 0x378 liegt - bei PCI Karten sind das gerne auch mal ganz andere Adressen.
Klar kanns sein, das der Port hardwaremaessig defekt ist. Aber eigentlich find' ichs eigenartig, dass der ueberhaupt eine LED nach Masse treiben kann.
Kann vielleicht auch sein, dass der grad zufaellig als Eingang geschaltet ist und die LED ueber einen Pullup-Widerstand gespeist wird.
Kannst ja die LED (hoffentlich + Vorwiderstand) mal zwischen Strobe und Masse schalten und dann im Register 0x37A am LSB wackeln.

Gruss
WK

quinte17
15.08.10, 09:55
schon mal nen


echo -en "\x00" > /dev/lp0

versucht?