1 DATECS
DPP-350
Programmer’s manual VER.1.50
6
0
1
Bit 0
No error
Error occurred
Bit 1
ACK (Packet accepted)
NACK (Packed not accepted)
Bit 2
Channel and command OK
Wrong channel or command
Bit 3
Battery OK
Low battery
Bit 4
Printing head OK
Printing head too hot
Bit 5
Paper OK
Out of paper
Bit 6
Not defined
Bit 7
Printer ready
Printer busy
Bit 7
is set, if:
•
There are unprinted lines in the print buffer.
•
There are bytes in the print buffer.
•
The printer is executing a macro.
•
The printer is executing selftest.
•
The button <LF> is pressed – feeding paper.
LenHi:
High byte of data length of data. 00h to 08h.
LenLo:
Low byte of data length of data. 00h to FFh.
Data:
256*LenHi +LenLo
data bytes.
The maximum packet length is 2048 bytes.
The answer differs from the command by bit 7 (MSB) in the channel number. If bit 7 is 0 then it is a
command, if it is 1 then it is a response. Bit 0 in the status byte shows if there was an error accepting or
processing the data block. If this bit is 1 the other bits show the type of the error.
The printer never issues a transmission by itself. It always responds as an answer to a command. The
communication goes like this:
Host – command, Printer – answer; Host – command, Printer – answer; etc.
The defined channels are:
1
Printer.
16 (10h)
Optional card reader.
Commands for the printer channel (1):
Command 2
Send data
The data is copied into the printer’s print buffer. If there’s not enough space into the print
buffer the packet is rejected, and a status byte with value 3 is returned in the answer.
Command 3
Receive data
If there is data to be transmitted from the printer to the host, it is transmitted in the data field
of the packet, otherwise an empty packet is received. The application must take care to get
the data fast enough from the output buffer or the data may be corrupt.
Command 4
Get printer status. 5 data bytes returned in response:
BufferHi BufferLo PrStatus Volt Temperature
BufferHi
High byte of the count of free bytes in input buffer.
BufferLo
Low byte of the count of free bytes in input buffer.
PrStatus
Printer status. The following bits defined:
Bit 0
Battery low
Bit 1
Too hot
Bit 2
No paper
Volt
The battery voltage in units 0.1V
Temperature
The head temperature in degrees Celsius.
If free bytes in input buffer are more than 65535 (FFFFh), then FFFFh is returned.