Instruction manual

Marlin Technical ManualV.2.7.0
106
Description of the data path
To read data:
1. Query RDRD flag (buffer ready?) and write the number of bytes the host
wants to read to RBUF_CNT.
2. Read the number of bytes pending in the receive buffer RBUF_ST (more
data in the buffer than the host wanted to read?) and the number of bytes
left for reading from the receive FIFO in RBUF_CNT (host wanted to read
more data than were in the buffer?).
008h RECEIVE_BUFFER_
STATUS_CONTRL
RBUF_ST [0..7] SIO receive buffer status
RD: Number of bytes pending in receive
buffer
WR: Ignored
RBUF_CNT [8..15] SIO receive buffer control
WR: Number of bytes to be read from the
receive FIFO
RD: Number of bytes left for readout from
the receive FIFO
--- [16..31] Reserved
00Ch TRANSMIT_BUFFER_
STATUS_CONTRL
TBUF_ST [0..7] SIO output buffer status
RD: Space left in TX buffer
WR: Ignored
TBUF_CNT [8..15] SIO output buffer control
RD: Number of bytes written to transmit
FIFO
WR: Number of bytes to transmit
--- [16..31] Reserved
010h
..
0FFh
--- Reserved
100h SIO_DATA_REGISTER CHAR_0 [0..7] Character_0
RD: Read character from receive buffer
WR: Write character to transmit buffer
SIO_DATA_REGISTER CHAR_1 [8..15] Character_1
RD: Read character from receive buffer+1
WR: Write character to transmit buffer+1
SIO_DATA_REGISTER CHAR_2 [16..23] Character_2
RD: Read character from receive buffer+2
WR: Write character to transmit buffer+2
SIO_DATA_REGISTER CHAR_3 [24..31] Character_3
RD: Read character from receive buffer+3
WR: Write character to transmit buffer+3
Offset Name Field Bit Description
Table 35: Serial input/output control and status register (SIO CSR)