TH210
Programmer’s Guide
70
In this case the printer will use the real time command sequence bytes instead of the other
command’s parameter bytes when finally executing that other command from the buffer; the
other command will NOT be executed correctly.
These three situations generally preclude use of standard DOS drivers for the serial communication
ports when using real time commands.
Moving data through the buffer
Applications should not let the buffer fill up with real time commands when the printer is busy at
the RS-232C interface. A busy condition at the RS-232C interface can be determined by bit 3 of the
response to 1D 05, or 1D 04 1, or 10 04 1. The reason for a particular busy condition can be
determined by other responses to 1D 04 n or 10 04 n.
Although the printer responds to real time commands when it is busy, it will place them into the
buffer behind any other data there, and flush them out in the order in which they were received.
When the printer is busy due simply to buffer full (that is, it can’t print data as fast as it can receive
it), then data continues to be processed out of the buffer at approximately print speed and the real
time commands will eventually get flushed out.
When the printer is busy due to an error condition, then data stops being processed to the buffer
until the condition clears one way or another. In either case, but more quickly in the case of an
error condition, the buffer can fill with real time commands.
When the DLE (0x10) sequences are being used, the last byte stored when the buffer fills up could
be the DLE (0x10) code, with no room for the subsequent EOT or ENQ. When this lone DLE (0x10)
byte is finally processed out of the buffer it will be interpreted as a clear printer command.
Similarly, when the GS (1D) sequences are being used, the last byte stored when the buffer fills up
could be the GS (1D) code, with no room for the subsequent EOT or ETX or ENQ. When this lone GS
(1D) byte is finally processed out of the buffer it will use the next byte, whatever it is, as the
second byte in its GS (1D) sequence.
To guard against this situation, the application must determine the cause of a busy condition and
take appropriate action or pace the real time commands to avoid filling the buffer. There is a
minimum of 256 bytes available in the printer’s buffer when it goes busy.
Busy line and fault conditions
If the printer is in error condition (cover is open, paper is exhausted…), the printer will still accept
data, respond to the batch mode status commands (1B 76 and 1B 75 0), handle the cash drawer
commands, and not go busy until it actually tries to execute a print command. Then it will stay
busy and stop processing data out of the receive buffer until the condition clears. It will respond to
the real time commands as described below.
Real time status transmission
GS sequence
DLE sequence
ASCII
Hexadecimal
Decimal
GS EOT
n
1D 04
n
29 4
n
DLE EOT
n
10 04
n
16 4
n
Value of
n
:
GS/DLE sequence
1 = Transmit printer status
2 = Transmit RS-232C busy status
3 = Transmit error status
4 = Transmit receipt paper status
Содержание TH210
Страница 1: ...TH210 Thermal Printer Programmer s Guide December 2015 ...
Страница 123: ...TH210 Programmer s Guide 119 Character code table Page 1 PC850 Multilingual Latin I ...
Страница 124: ...TH210 Programmer s Guide 120 Character code table Page 2 PC852 Latin II ...
Страница 125: ...TH210 Programmer s Guide 121 Character code table Page 3 PC860 Portuguese ...
Страница 126: ...TH210 Programmer s Guide 122 Character code table Page 4 PC863 Canadian French ...
Страница 127: ...TH210 Programmer s Guide 123 Character code table Page 5 PC865 Nordic ...
Страница 128: ...TH210 Programmer s Guide 124 Character code table Page 6 PC858 Multilingual I Euro ...
Страница 129: ...TH210 Programmer s Guide 125 Character code table Page 7 PC866 Russian ...
Страница 130: ...TH210 Programmer s Guide 126 Character code table Page 8 WPC1252 Latin I ...
Страница 131: ...TH210 Programmer s Guide 127 Character code table Page 9 PC862 Hebrew ...
Страница 132: ...TH210 Programmer s Guide 128 Character code table Page 10 PC737 Greek ...
Страница 133: ...TH210 Programmer s Guide 129 Character code table Page 11 PC874 Thai ...
Страница 134: ...TH210 Programmer s Guide 130 Character code table Page 12 PC857 Turkish ...
Страница 135: ...TH210 Programmer s Guide 131 Character code table Page 13 WPC1251 Cyrillic ...
Страница 136: ...TH210 Programmer s Guide 132 Character code table Page 14 WPC1255 Hebrew ...
Страница 137: ...TH210 Programmer s Guide 133 Character code table Page 15 KZ_1048 Kazakh ...
Страница 138: ...TH210 Programmer s Guide 134 Character code table Page 16 WPC1254 Turkish ...
Страница 139: ...TH210 Programmer s Guide 135 Character code table Page 17 WPC1250 Central Europe ...
Страница 140: ...TH210 Programmer s Guide 136 Character code table Page 18 WPC28591 Latin 1 ...
Страница 141: ...TH210 Programmer s Guide 137 Character code table Page 19 WPC28592 Latin 2 ...
Страница 142: ...TH210 Programmer s Guide 138 Character code table Page 20 WPC28599 Turkish ...
Страница 143: ...TH210 Programmer s Guide 139 Character code table Page 21 WPC28605 Latin 9 ...
Страница 144: ...TH210 Programmer s Guide 140 Character code table Page 22 PC864 Arabic ...
Страница 145: ...TH210 Programmer s Guide 141 Character code table Page 23 PC720 Arabic ...
Страница 146: ...TH210 Programmer s Guide 142 Character code table Page 24 WPC1256 Arabic ...
Страница 147: ...TH210 Programmer s Guide 143 Character code table Page 25 WPC28596 Arabic ...
Страница 148: ...TH210 Programmer s Guide 144 Character code table Page 26 KATAKANA Asia ...
Страница 149: ...TH210 Programmer s Guide 145 Character code table Page 27 PC775 Baltic ...
Страница 150: ...TH210 Programmer s Guide 146 Character code table Page 28 WPC1257 Baltic ...
Страница 151: ...TH210 Programmer s Guide 147 Character code table Page 29 WP28594 Baltic ...