2.8.3 RXMode(buffered)
In RXMode(buffered), the received data stream is stored in the 32 bytes deep data FIFO (DFIFO). The fill level can be read out by using the “Read Fill Level Rx FIFO” SPI command.
In the buffered data reception mode, the current DFIFO fill level is compared to a configurable buffer threshold for path A or path B. These thresholds can be set up independently for path A and path B of each service using the eepServices.rxSetPathx.RXbufx[5:0] variables.
Address Service0 | Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0x00DF | rxSetPathA[0] | — | rxBufEvMaskA | RXbufA[5:0] | |||||
0x00E1 | rxSetPathB[0] | — | rxBufEvMaskB | RXbufB[5:0] |
Any time the fill level reaches the threshold of the current receive path, a DFIFO fill level match condition becomes true. In that case, the firmware indicates its occurrence by setting the event flag DFIFO_RX in events.system (R15).
Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|
System (R15) events.system | SYS_ERR | CMD_RDY | SYS_RDY | AVCCLOW | LOWBATT | SFIFO | DFIFO_RX | DFIFO_TX |
Depending on the telegram requirements, the receiver can be configured to swap the incoming bytes (MSB-first or LSB-first) before storing them to the DFIFO. The associated settings for path A and path B are located in the eepServices.RXBC1 variable. For more information, see Data Polarity.
The ID check feature is supported in RXMode(buffered). This feature is described in more detail in ID Check.
The RXMode(buffered) provides internal status information using the event flags of events.system (R15) and events.events (R14), as shown in the general part of the RXMode. In addition, the event flags DFIFO_RX and IDCHKA/B are supported, which might be used to generate an external event on pin 28 (EVENT), if the mask bits rxBufEvMaskA/B and IDCHKA/B_Mask in rxSetPathA/B[0] and rxSysEvent are enabled and the associated event occurs.
Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|
System (R15) events.system | SYS_ERR | CMD_RDY | SYS_RDY | AVCCLOW | LOWBATT | SFIFO | DFIFO_RX | DFIFO_TX |
Events (R14) events.events | IDCHKA | WCOKA | SOTA | EOTA | IDCHKB | WCOKB | SOTB | EOTB |
Address Service0 | Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0x00DF | rxSetPathA[0] | — | rxBufEv MaskA | RXbufA[5:0] | |||||
0x00E1 | rxSetPathB[0] | — | rxBufEv MaskB | RXbufB[5:0] | |||||
0x00E3 | rxSysEvent | IDCHKA_Mask | WCOKA_Mask | SOTA_Mask | EOTA_Mask | IDCHKB_Mask | WCOKB_Mask | SOTB_Mask | EOTB_Mask |
The demodulated data can additionally be output on pin 17/TMDO and pin 19/TMDO_CLOCK as
reshaped transparent output. If eepServices.rxSysSet.PathValidAfterSOT_ENA is set to
‘0
’, the data of the active path is output on the TMDO pin after a WCO and
the corresponding clock is output on pin TMDO_CLOCK after an SOT.
If eepServices.rxSysSet.PathValidAfterSOT_ENA is set to ‘1
’, both the data
and clock of the active path are output on the pins together after an SOT.
The reshaped transparent output can be activated independently for each service by setting at
least one of the eepServices.RDOCR.TMDS[1:0] bits to ‘1
’.
Address Service0 |
Name |
Bit 7 |
Bit 6 |
Bit 5 |
Bit 4 |
Bit 3 |
Bit 2 |
Bit 1 |
Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0x00DD |
RDOCR | — |
|
|
ETRPB |
ETRPA |
TMDS[1:0] | — |