[][src]Type Definition cc2538::ssi0::DR

type DR = Reg<u32, _DR>;

The DR register is 16 bits wide. When the SSIDR register is read, the entry in the receive FIFO that is pointed to by the current FIFO read pointer is accessed. When a data value is removed by the SSI receive logic from the incoming data frame, it is placed into the entry in the receive FIFO pointed to by the current FIFO write pointer. When the DR register is written to, the entry in the transmit FIFO that is pointed to by the write pointer is written to. Data values are removed from the transmit FIFO one value at a time by the transmit logic. Each data value is loaded into the transmit serial shifter, then serially shifted out onto the SSITx pin at the programmed bit rate. When a data size of less than 16 bits is selected, the user must right-justify data written to the transmit FIFO. The transmit logic ignores the unused bits. Received data less than 16 bits is automatically right-justified in the receive buffer. When the SSI is programmed for MICROWIRE frame format, the default size for transmit data is eight bits (the most significant byte is ignored). The receive data size is controlled by the programmer. The transmit FIFO and the receive FIFO are not cleared even when the SSE bit in the SSICR1 register is cleared, allowing the software to fill the transmit FIFO before enabling the SSI.

This register you can read, reset, write, write_with_zero, modify. See API.

For information about avaliable fields see dr module

Trait Implementations

impl Readable for DR[src]

read() method returns dr::R reader structure

impl Writable for DR[src]

write(|w| ..) method takes dr::W writer structure

impl ResetValue for DR[src]

Register DR reset()'s with value 0

type Type = u32

Register size