• Case 2: Normal serial port reception. Reception continues normally because the frame-synchronization pulse
is not unexpected. There are three possible reasons why a receive operation might
not
be in progress when
the pulse occurs:
– The FSR pulse is the first after the receiver is enabled (RRST = 1 in SPCR1).
– The FSR pulse is the first after DRR[1,2] is read, clearing a receiver full (RFULL = 1 in SPCR1) condition.
– The serial port is in the interpacket intervals. The programmed data delay for reception (programmed with
the RDATDLY bits in RCR2) may start during these interpacket intervals for the first bit of the next word to
be received. Thus, at maximum frame frequency, frame synchronization can still be received 0 to 2 clock
cycles before the first bit of the synchronized frame.
• Case 3: Unexpected receive frame synchronization with RFIG = 0 (frame-synchronization pulses not
ignored). Unexpected frame-synchronization pulses can originate from an external source or from the internal
sample rate generator.
If a frame-synchronization pulse starts the transfer of a new frame before the current frame is fully received,
this pulse is treated as an unexpected frame-synchronization pulse, and the receiver sets the receive frame-
synchronization error bit (RSYNCERR) in SPCR1. RSYNCERR can be cleared only by a receiver reset or by
a write of 0 to this bit.
If you want the McBSP to notify the CPU of receive frame-synchronization errors, you can set a special
receive interrupt mode with the RINTM bits of SPCR1. When RINTM = 11b, the McBSP sends a receive
interrupt (RINT) request to the CPU each time that RSYNCERR is set.
15.4.3.2 Example of Unexpected Receive Frame-Synchronization Pulse
shows an unexpected receive frame-synchronization pulse during normal operation of the serial
port, with time intervals between data packets. When the unexpected frame-synchronization pulse occurs, the
RSYNCERR bit is set, the reception of data B is aborted, and the reception of data C begins. In addition, if
RINTM = 11b, the McBSP sends a receive interrupt (RINT) request to the CPU.
Á
Á
Á
Á
ÁÁ
ÁÁ
ÁÁ
ÁÁ
Á
Á
Á
Á
Unexpected frame synchronization
RBR1 to DRR1(B)
C0
C1
C2
C3
C4
C5
C6
C7
B4
B5
B6
B7
A0
A1
RSYNCERR
RRDY
DR
FSR
CLKR
Read from DRR1(C)
RBR1 to DRR1 copy(C)
Read from DRR1(A)
RBR1 to DRR1 copy(A)
Figure 15-24. An Unexpected Frame-Synchronization Pulse During a McBSP Reception
15.4.3.3 Preventing Unexpected Receive Frame-Synchronization Pulses
Each frame transfer can be delayed by 0, 1, or 2 MCLKR cycles, depending on the value in the RDATDLY bits of
RCR2. For each possible data delay,
shows when a new frame-synchronization pulse on FSR can
safely occur relative to the last bit of the current frame.
Multichannel Buffered Serial Port (McBSP)
SPRUH18I – JANUARY 2011 – REVISED JUNE 2022
TMS320x2806x Microcontrollers
899
Copyright © 2022 Texas Instruments Incorporated
Содержание TMS320 2806 Series
Страница 2: ......