Per C Drucker an Parallelport unter Linux reseten

OP #1062164
Lesenswert?
• ▲
▼
Hallo,

ich möchte unter Linux meinen am Parallelport angeschlossenen 
POS-Drucker reseten.
Der Druck auf dem Drucker und die Ausgabe des Statusregisters 
funktionieren soweit, allerdings weiß ich momentan nicht, wie ich den 
Reset hin bekommen kann.
Ich glaube, dass ich aus der Header-Datei parport.h den dort definierten 
Wert PARPORT_CONTROL_INIT verwenden muss. Aber wie?
Danke schon mal vielmals im Voraus.

Gruß
Markus
OP #1062181
Lesenswert?
• ▲
▼
An dem Parallelport hängt ein Kassendrucker, der direkt angesteuert 
wird.
So kann ich zum Beispiel über folgenden Code das Statusregister des 
Parallelports auslesen und abfragen, ob das Papier zu Ende ist:
1
    //Parallelport-Status auslesen
2
    if( ioctl( i_file_descriptor, PPRSTATUS, &i_port_status )==-1 )
3
    {
4
        fprintf(stderr, ": Auslesen des Statusregisters fehlgeschlagen.\n");
5
    }
6

7
    //einzelne Bits abfragen
8
    if( (i_port_status&PARPORT_STATUS_PAPEROUT)==PARPORT_STATUS_PAPEROUT )
9
    {
10
        statPaperEnd = 1;
11
    }

Ab und zu bleibt aber der Drucker hängen. Es gibt aber beim Parallelport 
die Möglichkeit, per RESET-Bit den Drucker zu reseten.
Und da würde ich gern wissen, mit welchem Befehl ich das machen kann, 
bzw. wie der Befehl aussehen muss.
Ich glaube auch per ioctl, aber mit welchen Werten?
Oder, falls ich das jetzt falsch verstanden haben sollte, welche 
weiteren Informationen werden benötigt?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren