www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik In Datei Druckn und diese auf der Arbeit vom AVR auf Drucker


Autor: Thomas O. (kosmos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde gerne mit dem gleichen Drucktreiber wie auf der Arbeit in eine 
Datei drucken und das ganze dann auf der Arbeit ohne Laptop an einen 
Parallelport-Drucker schicken.

Kann mir vielleicht jemand kurz was zur Übermittlung sagen. Also was 
muss ich nach anlegen der ersten 8bits machen ACK oder Strobe antakten 
und dann warscheinlich auf Busy warten. Da die Druckdaten ja schon 
aufbereitet sind. Müsste ich Sie nur zum Drucker bekommen, speichern 
könnte ich sie in ein EEPROM.

Der IEEE1284 Beitrag im Wikipedia scheint kastriert worden zu sein da 
ist nur noch die Pinbelegung aufgeführt.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> IEEE1284 Beitrag im Wikipedia

Wikipedia ist ja nicht die einzige Quelle.
Als Stichwort für Google würde ich mal
"Centronics" benutzen.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas O. wrote:
>
> Der IEEE1284 Beitrag im Wikipedia scheint kastriert worden zu sein da
> ist nur noch die Pinbelegung aufgeführt.

Wovon sprichst du?
http://de.wikipedia.org/wiki/IEEE_1284#Technische_...

einwandfrei

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

vergiß alle Parallelportprotokolle außer Standard...

Busy abfragen
Wenn Drucker frei -> daten ran, Strobe-Impuls.

Kurze Pause und wieder zur Busy-Abfrage.

Damit kommen alle mir bekannten Paralleportdrucker klar.

Das Verhalten zwischen ACK und Busy ist dagegen etwas unsicher, Epson 
hat es anders implemetiert als IBM und mangels Unterlagen weiß man heute 
meist nicht mehr, was der Drucker will...

Auf Busy testen klappt immer, Die Zeiten beachten, ist alles ziemlich 
lahm für einen AVR, nach dem senden von Strobe evtl. etwas warten, bis 
man Busy wieder testet.
;******************************** Sub-Parallel *****************************
; Sub: Sendet 256 Byte an Parallel-Port aus MINI_BUF ab aktueller Card-Adresse
; Parameter:   -
; Return:      - 
; Scratch-Reg: -
;***************************************************************************
par_write_data:
        sbrc    FLAGS,F_LASTBLOCK           ; alles schon gesendet?
    ret                                 ; ja 
     
        ldi     ZL,low(MINI_BUF)
    ldi     ZH,high(MINI_BUF)           ; Zeiger auf Sendepuffer 
        clr     COUNTER_1
             
par_byte_loop:
        ld      TEMP_A,Z+                   ; Byte holen     

par_busy0:
        sbic    PAR_C_PIN,PAR_BUSY          ; auf bereit warten (Busy = 0)
    rjmp    par_busy0
    out     PAR_D_PORT,TEMP_A           ; Byte raus
    cbi     PAR_C_PORT,PAR_STB          ; Strobe aktiv
    ldi     COUNTER_2,STB_TIME
par_stb0:
        dec     COUNTER_2                   ; Länge Strobe-Impuls
    brne    par_stb0                           

        sbi     PAR_C_PORT,PAR_STB          ; Strobe wieder inaktiv

        ldi     TEMP_B,1
    clr     TEMP_A
    sub     DAT_LEN0,TEMP_B             ; Länge - 1
    sbc     DAT_LEN1,TEMP_A
    sbc     DAT_LEN2,TEMP_A
    sbc     DAT_LEN3,TEMP_A
        brcc    par_byte_loop_1 
        sbr     FLAGS,(1<<F_LASTBLOCK)      ; letzter Block
        ret

par_byte_loop_1:      
        dec     COUNTER_1
    brne    par_byte_loop   
    
        ret

Source ist aus einer Druckertest-Geschichte von mir, wurde statt Drucker 
an den Rechner gesteckt und "drauf gedruckt", konnte max. 16 Dateien 
speichern. Dann an den Drucker stecken, Dateinummer auswählen und Taste 
drücken. 2 oder 3 von den Schachteln sind wohl sogar noch im Einsatz.

Gruß aus Berlin
Michael

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn ein Drucker auf Arbeit steht, gibt es doch auch einen PC da dran?

Zuhause den Treiber installieren, als Ausgabe File einstellen.

Datei irgendwie nach Arbeit tragen,
DOS-Eingabe öffnen und
copy /B dateiname LPT1

/B (binär) ist wichtig, sonst kann es die Steuerzeichen versauen

das wars.

Gruß aus Berlin
Michael

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man könnte natürlich auch die Sachen als PDF "ausdrucken" (www.shbox.de) 
und dann per USB-Stick o.dergl. in die Firma tragen. Damit wäre man 
ziemlich treiberunabhängig.
Ob ein AVR überhaupt die Datenmenge verträgt, die bei einem Ausdruck 
zustandekommt (da ist nichts komprimiert, ausser man benutzt einen 
Postscript-Drucker), bezweifle ich mal recht stark. Sowas ging zu 
Zeiten, als man noch Endlospapier in Nadeldruckern verarbeitete...

Autor: Thomas O. (kosmos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke scheint ja wirklich so einfach zu sein wie ichs mir gedacht habe.

Ich hatte heute früh diesen Link probiert 
http://de.wikipedia.org/wiki/IEEE_1284 und da war mehr oder weniger nur 
dieses Bild 
http://de.wikipedia.org/wiki/Bild:IEEE1284-Printer... zu 
sehen, jetzt scheint es wieder zu gehen.

Ohne Rechte kann man am dem Rechner nichts machen ist alles gesperrt. 
Ich könnte natürlich den Laptop mitnehmen, aber so eine kleine Schaltung 
mit einem 4er Akkublock-Block wäre doch um einiges handlicher, denka 
aber mal das die Datenmenge einen anderen Speicher benötigt ne kleine 
SD-Karte oder sowas in diese Richtung.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.