Architecture
1232
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
Multichannel Buffered Serial Port (McBSP)
25.2.9.8.1 Disabling/Enabling Versus Masking/Unmasking
For transmission, a channel can be:
•
Enabled and unmasked (transmission can begin and can be completed)
•
Enabled but masked (transmission can begin but cannot be completed)
•
Disabled (transmission cannot occur)
The following definitions explain the channel control options:
Enabled channel
A channel that can begin transmission by passing data from the data transmit register (DXR) to the
transmit shift register (XSR).
Masked channel
A channel that cannot complete transmission. The DX pin is held in the high-impedance state; data
cannot be shifted out on the DX pin.
In systems where symmetric transmit and receive provides software benefits, this feature allows transmit
channels to be disabled on a shared serial bus. A similar feature is not needed for reception because
multiple receptions cannot cause serial bus contention.
Disabled channel
A channel that is not enabled. A disabled channel is also masked.
Because no DXR-to-XSR copy occurs, the XRDY bit in SPCR is not set. Therefore, no DMA
synchronization event (XEVT) is generated, and if the transmit interrupt mode depends on XRDY
(XINTM = 0 in SPCR), no interrupt is generated.
The XEMPTY bit in SPCR is not affected.
Unmasked channel
A channel that is not masked. Data in the XSR is shifted out on the DX pin.
25.2.9.8.2 Activity on McBSP Pins for Different Values of XMCM
shows the activity on the McBSP pins for the various XMCM values. In all cases, the
transmit frame is configured as follows:
•
In transmit control register (XCR):
–
XPHASE = 0: Single-phase frame (required for multichannel selection modes)
–
XFRLEN1 = 3h: 4 words per frame
–
XWDLEN1 = 0: 8 bits per word
•
In multichannel control register (MCR):
–
XMCME = 0: 2-partition mode (only partitions A and B used)
In the case where XMCM = 3h, transmission and reception are symmetric, which means the
corresponding bits for the receiver (RPHASE, RFRLEN1, RWDLEN1, and RMCME) must have the same
values as XPHASE, XFRLEN1, and XWDLEN1, respectively.
In
, the arrows showing where the various events occur are only sample indications.
Wherever possible, there is a time window in which these events can occur.
25.2.9.9 Using Interrupts Between Block Transfers
When a multichannel selection mode is used, an interrupt request can be sent to the CPU at the end of
every 16-channel block (at the boundary between partitions and at the end of the frame). In the receive
multichannel selection mode, a receive interrupt (RINT) request is generated at the end of each block
transfer if the RINTM bit in the serial port control register (SPCR) is set to 1. In any of the transmit
multichannel selection modes, a transmit interrupt (XINT) request is generated at the end of each block
transfer if the XINTM bit in SPCR is set to 1. When RINTM/XINTM = 1, no interrupt is generated unless a
multichannel selection mode is on.
These interrupt pulses are active high and last for two McBSP internal input clock cycles.
This type of interrupt is especially helpful if you are using the two-partition mode and you want to know
when you can assign a different block of channels to partition A or B.