POS Thermodrucker TL60III über RS232: ESC/POS Befehle?

#7099652
Lesenswert?

Schönen Donnerstag Abend,

ich habe vor kurzem einen Thermodrucker (TL60III von "custom") gekauft 
mit der Absicht den über einen Mikrocontroller anzusteuern.

Allerdings habe ich Schwierigkeiten beim Ansteuern des Druckers über die 
serielle Schnittstelle (erst mal vom PC aus).

Einfach nur Text ausgeben geht problemlos.
Aber ich verstehe nicht ganz wie ich "Befehle" an den Drucker senden 
kann.

Es gibt da die sogenannten ESCPOS Befehle die bei solchen Druckern 
üblich sind, bestimmte Bytes mit denen man Formatierung, Schriftgröße, 
das Schneidwerk, ... steuern kann.
Ich habe auch einiges dazu gefunden, nur keine Tabelle mit den Befehlen 
und den HEX Bytes die dafür zum Drucker gesendet werden müssen.
Auf der Website des Herstellers finde ich auch nichts dazu.
Ebensowenig im User-Manual des Druckers.

Ich wäre über jede Hilfe dankbar ...
Gast #7099715
Lesenswert?

Wenn ich Dich richtig verstehe schickst Du den Text "1B69". Das
kann nicht funktionieren, es geht um die HEX Codes 0x1B 0x69.
In C würder das als String so aussehen: "\x1B\x69" (geht aber
so nur wenn Du von einem C Programm aus diesen String an den
Drucker schickst).

Alternativ kannst Du vielleicht mit einem Teminalprogramm die
Hex Bytes so schicken, wenn das nicht geht die Datei im Anhang mit
dem Terminalprogramm an den Drucker schicken. In der Datei sind
die zwei Bytes 0x1B 0x69.
Angehängte Dateien:
(Firma: matzetronics) #7099719
Lesenswert?

0x1B ist ein nicht druckendes Zeichen (ASCII Code dezimal 27 für ESC), 
in deinem Fall gefolgt von 0x69 (dezimal 105, ein kleines i).

Das ESC kannst du am PC mit dem 'Alt-Trick' erzeugen. Alt-Taste drücken, 
am Ziffernblock 2 und 7 eingeben und die Alt-Taste wieder loslassen.
Vom MC lässt sich einfach das 27 oder 0x1B per UART oder was auch immer 
an den Drucker senden.
Beitrag #7099909 wurde von einem Moderator gelöscht.
#7099974
Lesenswert?

Matthias S. schrieb:
> Matthias S. schrieb:
>> Schieb mal noch ein CR oder CR/LF hinterher. Also 0x13 und 0x10.
>
> Ich sach' ja - wenn man bisschen dämlich ist, dann kann man nich' dazu.
>
> Es muss natürlich 0x0D und 0x0A heissen. Nur das ist CR und LF.

Ich habe mein Terminal Programm so eingestellt dass bei jedem Drücken 
der Enter Taste ein CR und LF gesendet wird, deshalb ist mir dein Fehler 
nicht aufgefallen ...

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