Chapter 5: Communication
7156 Owner’s Guide
September 1997
50
Using BASIC to Send Commands
In BASIC, printer commands are sent as a string of characters preceded by the LPRINT
command. For example,
LPRINT CHR$(&H0A)
sends the hexadecimal number 0A to the printer, which causes the printer to print the
contents of its print buffer. Previously sent commands tell the printer exactly how this data
should appear on the paper. For example,
LPRINT CHR$(&H12); "ABC"; CHR$(&H0A)
sends the Hex numbers 12 41 42 43 0A to the printer. This causes the printer to set itself to
double wide mode (12), load the print buffer with “ABC” (41 42 43), and finally, print (0A).
Again, the communication link that the BASIC program outputs to must be matched to
that of the printer.
RS-232C Interface
The RS-232C interface uses either XON/XOFF or DTR/DSR protocol. For XON/XOFF, a
particular character is sent back and forth between the host and the printer to regulate the
communication. For DTR/DSR, changes in the DTR/DSR signal coordinate the data flow.
The RS-232C version of the 7156 offers the standard options which are selected with the
DIP switches. See “Switch Settings” later in this chapter.
Print Speed and Timing
The faster speed of new 7156 models (models 7156-4XXX) requires the application to send
data to the printer at least as fast as it is printed, and to allow receipt lines to be buffered
ahead at the printer, so the printer can print each line immediately after the preceding line,
without stopping to wait for more data. Ideally, the application will send all the data for an
entire receipt without pausing between characters or lines transmitted.
If the application sends data at 9600 baud and pauses between lines for as little as 50
milliseconds, the printer will never be able to print at full speed. But, if the application
sends data at 19.2 K baud and does not pause between lines, the printer will be able to
print at its full speed of 1020 lines/minute.
The table shows that with a pause of 50 milliseconds after each line, the transmit time
equals or exceeds the print time, slowing down the printer, regardless of the baud rate.
Char./Li
ne
Lines/Rece
ipt
Transmit Time: (9600
Baud)
Transmit Time: (19.2 K
Baud)
Print Time
20
20
1.4 Seconds
1.2 Seconds
1.2 Seconds
20
40
2.8 Seconds
2.4 Seconds
2.4 Seconds
44
20
1.88 Seconds
1.44 Seconds
1.2 Seconds
44
40
3.76 Seconds
2.88 Seconds
2.4 Seconds
The next table shows that with no delay between lines, the transmit time is much less than
the print time, allowing the printer to print at full speed.
Char./Li
ne
Lines/Rece
ipt
Transmit Time: (9600
Baud)
Transmit Time: (19.2 K
Baud)
Print Time
20
20
0.4 Seconds
0.2 Seconds
1.2 Seconds
20
40
0.8 Seconds
0.4 Seconds
2.4 Seconds
Summary of Contents for 7156
Page 6: ...Contents 7156 Owner s Guide September 1997 iv...
Page 38: ...Chapter 3 Solving Problems 7156 Owner s Guide September 1997 32...
Page 118: ...Chapter 6 Commands 7156 Owner s Guide September 1997 112...
Page 122: ...Appendix A Specifications 7156 Owner s Guide September 1997 116...
Page 129: ...7156 Owner s Guide Appendix B Print Characteristics September 1997 123...
Page 130: ...Appendix B Print Characteristics 7156 Owner s Guide September 1997 124...