SPRUIU1C July 2020 – February 2024 DRA821U , DRA821U-Q1
Table 12-652 lists the memory-mapped registers for the MCSPI. All register offset addresses not listed in Table 12-652 should be considered as reserved locations and the register contents should not be modified.
Instance | Base Address |
---|---|
MCSPI0_CFG | 0210 0000h |
MCSPI1_CFG | 0211 0000h |
MCSPI2_CFG | 0212 0000h |
MCSPI3_CFG | 0213 0000h |
MCSPI4_CFG | 0214 0000h |
MCU_MCSPI0_CFG | 4030 0000h |
MCU_MCSPI1_CFG | 4031 0000h |
MCU_MCSPI2_CFG | 4032 0000h |
Offset | Acronym | Register Name | MCSPI0_CFG Physical Address | MCSPI1_CFG Physical Address | MCSPI2_CFG Physical Address |
---|---|---|---|---|---|
0h | MCSPI_HL_REV | IP Revision register | 0210 0000h | 0211 0000h | 0212 0000h |
4h | MCSPI_HL_HWINFO | MCSPI hardware configuration register | 0210 0004h | 0211 0004h | 0212 0004h |
10h | MCSPI_HL_SYSCONFIG | Clock management configuration register | 0210 0010h | 0211 0010h | 0212 0010h |
100h | MCSPI_REVISION | Revision number | 0210 0100h | 0211 0100h | 0212 0100h |
110h | MCSPI_SYSCONFIG | Configuration register | 0210 0110h | 0211 0110h | 0212 0110h |
114h | MCSPI_SYSSTATUS | Status information register | 0210 0114h | 0211 0114h | 0212 0114h |
118h | MCSPI_IRQSTATUS | Interrupt status register | 0210 0118h | 0211 0118h | 0212 0118h |
11Ch | MCSPI_IRQENABLE | Interrupt enable register | 0210 011Ch | 0211 011Ch | 0212 011Ch |
120h | MCSPI_WAKEUPENABLE | Wake-up enable register | 0210 0120h | 0211 0120h | 0212 0120h |
124h | MCSPI_SYST | System interconnect check in system test mode | 0210 0124h | 0211 0124h | 0212 0124h |
128h | MCSPI_MODULCTRL | MCSPI configuration register | 0210 0128h | 0211 0128h | 0212 0128h |
12Ch | MCSPI_CHCONF_0 | Configuration register of channel 0 | 0210 012Ch | 0211 012Ch | 0212 012Ch |
130h | MCSPI_CHSTAT_0 | Status register of channel 0 | 0210 0130h | 0211 0130h | 0212 0130h |
134h | MCSPI_CHCTRL_0 | Enable register of channel 0 | 0210 0134h | 0211 0134h | 0212 0134h |
138h | MCSPI_TX_0 | TX register of channel 0 | 0210 0138h | 0211 0138h | 0212 0138h |
13Ch | MCSPI_RX_0 | RX register of channel 0 | 0210 013Ch | 0211 013Ch | 0212 013Ch |
140h | MCSPI_CHCONF_1 | Configuration register of channel 1 | 0210 0140h | 0211 0140h | 0212 0140h |
144h | MCSPI_CHSTAT_1 | Status register of channel 1 | 0210 0144h | 0211 0144h | 0212 0144h |
148h | MCSPI_CHCTRL_1 | Enable register of channel 1 | 0210 0148h | 0211 0148h | 0212 0148h |
14Ch | MCSPI_TX_1 | TX register of channel 1 | 0210 014Ch | 0211 014Ch | 0212 014Ch |
150h | MCSPI_RX_1 | RX register of channel 1 | 0210 0150h | 0211 0150h | 0212 0150h |
154h | MCSPI_CHCONF_2 | Configuration register of channel 2 | 0210 0154h | 0211 0154h | 0212 0154h |
158h | MCSPI_CHSTAT_2 | Status register of channel 2 | 0210 0158h | 0211 0158h | 0212 0158h |
15Ch | MCSPI_CHCTRL_2 | Enable register of channel 2 | 0210 015Ch | 0211 015Ch | 0212 015Ch |
160h | MCSPI_TX_2 | TX register of channel 2 | 0210 0160h | 0211 0160h | 0212 0160h |
164h | MCSPI_RX_2 | RX register of channel 2 | 0210 0164h | 0211 0164h | 0212 0164h |
168h | MCSPI_CHCONF_3 | Configuration register of channel 3 | 0210 0168h | 0211 0168h | 0212 0168h |
16Ch | MCSPI_CHSTAT_3 | Status register of channel 3 | 0210 016Ch | 0211 016Ch | 0212 016Ch |
170h | MCSPI_CHCTRL_3 | Enable register of channel 3 | 0210 0170h | 0211 0170h | 0212 0170h |
174h | MCSPI_TX_3 | TX register of channel 3 | 0210 0174h | 0211 0174h | 0212 0174h |
178h | MCSPI_RX_3 | RX register of channel 3 | 0210 0178h | 0211 0178h | 0212 0178h |
17Ch | MCSPI_XFERLEVEL | Transfer levels when FIFO is used | 0210 017Ch | 0211 017Ch | 0212 017Ch |
180h | MCSPI_DAFTX | MCSPI words transmitted when FIFO is used | 0210 0180h | 0211 0180h | 0212 0180h |
1A0h | MCSPI_DAFRX | MCSPI words received when FIFO is used | 0210 01A0h | 0211 01A0h | 0212 01A0h |
Offset | Acronym | Register Name | MCSPI3_CFG Physical Address | MCSPI4_CFG Physical Address |
---|---|---|---|---|
0h | MCSPI_HL_REV | IP Revision register | 0213 0000h | 0214 0000h |
4h | MCSPI_HL_HWINFO | MCSPI hardware configuration register | 0213 0004h | 0214 0004h |
10h | MCSPI_HL_SYSCONFIG | Clock management configuration register | 0213 0010h | 0214 0010h |
100h | MCSPI_REVISION | Revision number | 0213 0100h | 0214 0100h |
110h | MCSPI_SYSCONFIG | Configuration register | 0213 0110h | 0214 0110h |
114h | MCSPI_SYSSTATUS | Status information register | 0213 0114h | 0214 0114h |
118h | MCSPI_IRQSTATUS | Interrupt status register | 0213 0118h | 0214 0118h |
11Ch | MCSPI_IRQENABLE | Interrupt enable register | 0213 011Ch | 0214 011Ch |
120h | MCSPI_WAKEUPENABLE | Wake-up enable register | 0213 0120h | 0214 0120h |
124h | MCSPI_SYST | System interconnect check in system test mode | 0213 0124h | 0214 0124h |
128h | MCSPI_MODULCTRL | MCSPI configuration register | 0213 0128h | 0214 0128h |
12Ch | MCSPI_CHCONF_0 | Configuration register of channel 0 | 0213 012Ch | 0214 012Ch |
130h | MCSPI_CHSTAT_0 | Status register of channel 0 | 0213 0130h | 0214 0130h |
134h | MCSPI_CHCTRL_0 | Enable register of channel 0 | 0213 0134h | 0214 0134h |
138h | MCSPI_TX_0 | TX register of channel 0 | 0213 0138h | 0214 0138h |
13Ch | MCSPI_RX_0 | RX register of channel 0 | 0213 013Ch | 0214 013Ch |
140h | MCSPI_CHCONF_1 | Configuration register of channel 1 | 0213 0140h | 0214 0140h |
144h | MCSPI_CHSTAT_1 | Status register of channel 1 | 0213 0144h | 0214 0144h |
148h | MCSPI_CHCTRL_1 | Enable register of channel 1 | 0213 0148h | 0214 0148h |
14Ch | MCSPI_TX_1 | TX register of channel 1 | 0213 014Ch | 0214 014Ch |
150h | MCSPI_RX_1 | RX register of channel 1 | 0213 0150h | 0214 0150h |
154h | MCSPI_CHCONF_2 | Configuration register of channel 2 | 0213 0154h | 0214 0154h |
158h | MCSPI_CHSTAT_2 | Status register of channel 2 | 0213 0158h | 0214 0158h |
15Ch | MCSPI_CHCTRL_2 | Enable register of channel 2 | 0213 015Ch | 0214 015Ch |
160h | MCSPI_TX_2 | TX register of channel 2 | 0213 0160h | 0214 0160h |
164h | MCSPI_RX_2 | RX register of channel 2 | 0213 0164h | 0214 0164h |
168h | MCSPI_CHCONF_3 | Configuration register of channel 3 | 0213 0168h | 0214 0168h |
16Ch | MCSPI_CHSTAT_3 | Status register of channel 3 | 0213 016Ch | 0214 016Ch |
170h | MCSPI_CHCTRL_3 | Enable register of channel 3 | 0213 0170h | 0214 0170h |
174h | MCSPI_TX_3 | TX register of channel 3 | 0213 0174h | 0214 0174h |
178h | MCSPI_RX_3 | RX register of channel 3 | 0213 0178h | 0214 0178h |
17Ch | MCSPI_XFERLEVEL | Transfer levels when FIFO is used | 0213 017Ch | 0214 017Ch |
180h | MCSPI_DAFTX | MCSPI words transmitted when FIFO is used | 0213 0180h | 0214 0180h |
1A0h | MCSPI_DAFRX | MCSPI words received when FIFO is used | 0213 01A0h | 0214 01A0h |
Offset | Acronym | Register Name | MCU_MCSPI0_CFG Physical Address | MCU_MCSPI1_CFG Physical Address | MCU_MCSPI2_CFG Physical Address |
---|---|---|---|---|---|
0h | MCSPI_HL_REV | IP Revision register | 4030 0000h | 4031 0000h | 4032 0000h |
4h | MCSPI_HL_HWINFO | MCSPI hardware configuration register | 4030 0004h | 4031 0004h | 4032 0004h |
10h | MCSPI_HL_SYSCONFIG | Clock management configuration register | 4030 0010h | 4031 0010h | 4032 0010h |
100h | MCSPI_REVISION | Revision number | 4030 0100h | 4031 0100h | 4032 0100h |
110h | MCSPI_SYSCONFIG | Configuration register | 4030 0110h | 4031 0110h | 4032 0110h |
114h | MCSPI_SYSSTATUS | Status information register | 4030 0114h | 4031 0114h | 4032 0114h |
118h | MCSPI_IRQSTATUS | Interrupt status register | 4030 0118h | 4031 0118h | 4032 0118h |
11Ch | MCSPI_IRQENABLE | Interrupt enable register | 4030 011Ch | 4031 011Ch | 4032 011Ch |
120h | MCSPI_WAKEUPENABLE | Wake-up enable register | 4030 0120h | 4031 0120h | 4032 0120h |
124h | MCSPI_SYST | System interconnect check in system test mode | 4030 0124h | 4031 0124h | 4032 0124h |
128h | MCSPI_MODULCTRL | MCSPI configuration register | 4030 0128h | 4031 0128h | 4032 0128h |
12Ch | MCSPI_CHCONF_0 | Configuration register of channel 0 | 4030 012Ch | 4031 012Ch | 4032 012Ch |
130h | MCSPI_CHSTAT_0 | Status register of channel 0 | 4030 0130h | 4031 0130h | 4032 0130h |
134h | MCSPI_CHCTRL_0 | Enable register of channel 0 | 4030 0134h | 4031 0134h | 4032 0134h |
138h | MCSPI_TX_0 | TX register of channel 0 | 4030 0138h | 4031 0138h | 4032 0138h |
13Ch | MCSPI_RX_0 | RX register of channel 0 | 4030 013Ch | 4031 013Ch | 4032 013Ch |
140h | MCSPI_CHCONF_1 | Configuration register of channel 1 | 4030 0140h | 4031 0140h | 4032 0140h |
144h | MCSPI_CHSTAT_1 | Status register of channel 1 | 4030 0144h | 4031 0144h | 4032 0144h |
148h | MCSPI_CHCTRL_1 | Enable register of channel 1 | 4030 0148h | 4031 0148h | 4032 0148h |
14Ch | MCSPI_TX_1 | TX register of channel 1 | 4030 014Ch | 4031 014Ch | 4032 014Ch |
150h | MCSPI_RX_1 | RX register of channel 1 | 4030 0150h | 4031 0150h | 4032 0150h |
154h | MCSPI_CHCONF_2 | Configuration register of channel 2 | 4030 0154h | 4031 0154h | 4032 0154h |
158h | MCSPI_CHSTAT_2 | Status register of channel 2 | 4030 0158h | 4031 0158h | 4032 0158h |
15Ch | MCSPI_CHCTRL_2 | Enable register of channel 2 | 4030 015Ch | 4031 015Ch | 4032 015Ch |
160h | MCSPI_TX_2 | TX register of channel 2 | 4030 0160h | 4031 0160h | 4032 0160h |
164h | MCSPI_RX_2 | RX register of channel 2 | 4030 0164h | 4031 0164h | 4032 0164h |
168h | MCSPI_CHCONF_3 | Configuration register of channel 3 | 4030 0168h | 4031 0168h | 4032 0168h |
16Ch | MCSPI_CHSTAT_3 | Status register of channel 3 | 4030 016Ch | 4031 016Ch | 4032 016Ch |
170h | MCSPI_CHCTRL_3 | Enable register of channel 3 | 4030 0170h | 4031 0170h | 4032 0170h |
174h | MCSPI_TX_3 | TX register of channel 3 | 4030 0174h | 4031 0174h | 4032 0174h |
178h | MCSPI_RX_3 | RX register of channel 3 | 4030 0178h | 4031 0178h | 4032 0178h |
17Ch | MCSPI_XFERLEVEL | Transfer levels when FIFO is used | 4030 017Ch | 4031 017Ch | 4032 017Ch |
180h | MCSPI_DAFTX | MCSPI words transmitted when FIFO is used | 4030 0180h | 4031 0180h | 4032 0180h |
1A0h | MCSPI_DAFRX | MCSPI words received when FIFO is used | 4030 01A0h | 4031 01A0h | 4032 01A0h |
MCSPI_HL_REV is shown in Figure 12-349 and described in Table 12-656.
Return to Summary Table.
IP Revision Identifier (X.Y.R)
Used by software to track features, bugs, and compatibility
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0000h |
MCSPI1_CFG | 0211 0000h |
MCSPI2_CFG | 0212 0000h |
MCSPI3_CFG | 0213 0000h |
MCSPI4_CFG | 0214 0000h |
MCU_MCSPI0_CFG | 4030 0000h |
MCU_MCSPI1_CFG | 4031 0000h |
MCU_MCSPI2_CFG | 4032 0000h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
REVISION | |||||||||||||||||||||||||||||||
R-40301A0Bh | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | REVISION | R | 40301A0Bh | IP Revision |
MCSPI_HL_HWINFO is shown in Figure 12-350 and described in Table 12-658.
Return to Summary Table.
Information about the IP module's hardware configuration, that is, typically the module's HDL generics (if any).
Actual field format and encoding is up to the module's designer to decide.
Some of the MCSPI features described in this section may not be supported on this family of devices. For more information, see MCSPI Not Supported Features.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0004h |
MCSPI1_CFG | 0211 0004h |
MCSPI2_CFG | 0212 0004h |
MCSPI3_CFG | 0213 0004h |
MCSPI4_CFG | 0214 0004h |
MCU_MCSPI0_CFG | 4030 0004h |
MCU_MCSPI1_CFG | 4031 0004h |
MCU_MCSPI2_CFG | 4032 0004h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RSVD | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RSVD | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RSVD | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RSVD | RETMODE | FFNBYTE | USEFIFO | ||||
R-0h | R-0h | R-4h | R-1h | ||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-7 | RSVD | R | 0h | Reserved |
6 | RETMODE | R | 0h |
Retention Mode generic parameter. This bit field indicates whether the retention mode is supported using the pin PIRFFRET. |
5-1 | FFNBYTE | R | 4h | FIFO number of byte generic parameter 1h (R) = FIFO 16 bytes depth 2h (R) = FIFO 32 bytes depth 4h (R) = FIFO 64 bytes depth 8h (R) = FIFO 128 bytes depth 10h (R) = FIFO 256 bytes depth |
0 | USEFIFO | R | 1h | Use of a FIFO enable: 0h (R) = FIFO not implemented in design 1h (R) = FIFO and its management implemented in design with depth defined by FFNBYTE generic |
MCSPI_HL_SYSCONFIG is shown in Figure 12-351 and described in Table 12-660.
Return to Summary Table.
Clock management configuration
Some of the MCSPI features described in this section may not be supported on this family of devices. For more information, see MCSPI Not Supported Features.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0010h |
MCSPI1_CFG | 0211 0010h |
MCSPI2_CFG | 0212 0010h |
MCSPI3_CFG | 0213 0010h |
MCSPI4_CFG | 0214 0010h |
MCU_MCSPI0_CFG | 4030 0010h |
MCU_MCSPI1_CFG | 4031 0010h |
MCU_MCSPI2_CFG | 4032 0010h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RSVD | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RSVD | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RSVD | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RSVD | IDLEMODE | FREEEMU | SOFTRESET | ||||
R-0h | R/W-2h | R/W-0h | R/W-0h | ||||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-4 | RSVD | R | 0h | Reads returns 0 |
3-2 | IDLEMODE | R/W | 2h | Configuration of the local target state management mode. 0h (R/W) = Force-idle mode: local target's IDLE state follows (acknowledges) the system's clock stop requests unconditionally, that is, regardless of the IP module's internal requirements. Backup mode, for debug only. 1h (R/W) = No-idle mode: local target never enters IDLE state. Backup mode, for debug only. 2h (R/W) = Smart-idle mode: local target's IDLE state eventually follows (acknowledges) the system's clock stop requests, depending on the IP module's internal requirements. IP module shall not generate (IRQ- or DMA-request-related) wake-up events. 3h (R/W) = Smart-idle wake-up-capable mode: local target's IDLE state eventually follows (acknowledges) the system's clock stop requests, depending on the IP module's internal requirements. IP module may generate (IRQ- or DMA-request-related) wake-up events when in IDLE state. |
1 | FREEEMU | R/W | 0h | Sensitivity to emulation (debug) suspend input signal. 0h (R/W) = IP module is sensitive to emulation suspend. 1h (R/W) = IP module is not sensitive to emulation suspend. |
0 | SOFTRESET | R/W | 0h | Software reset. (Optional) 0h (R/W) = Reset done, no pending action 1h (R/W) = Initiate software reset |
MCSPI_REVISION is shown in Figure 12-352 and described in Table 12-662.
Return to Summary Table.
This register contains the revision number.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0100h |
MCSPI1_CFG | 0211 0100h |
MCSPI2_CFG | 0212 0100h |
MCSPI3_CFG | 0213 0100h |
MCSPI4_CFG | 0214 0100h |
MCU_MCSPI0_CFG | 4030 0100h |
MCU_MCSPI1_CFG | 4031 0100h |
MCU_MCSPI2_CFG | 4032 0100h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
REVISION | |||||||||||||||||||||||||||||||
R-2Bh | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | REVISION | R | 2Bh | IP revision |
MCSPI_SYSCONFIG is shown in Figure 12-353 and described in Table 12-664.
Return to Summary Table.
This register allows controlling various parameters of the configuration interface and is not affected by software reset.
Some of the MCSPI features described in this section may not be supported on this family of devices. For more information, see MCSPI Not Supported Features.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0110h |
MCSPI1_CFG | 0211 0110h |
MCSPI2_CFG | 0212 0110h |
MCSPI3_CFG | 0213 0110h |
MCSPI4_CFG | 0214 0110h |
MCU_MCSPI0_CFG | 4030 0110h |
MCU_MCSPI1_CFG | 4031 0110h |
MCU_MCSPI2_CFG | 4032 0110h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | CLOCKACTIVITY | ||||||
R-0h | R/W-0h | ||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | SIDLEMODE | ENAWAKEUP | SOFTRESET | AUTOIDLE | |||
R-0h | R/W-2h | R/W-1h | R/W-0h | R/W-1h | |||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-10 | RESERVED | R | 0h | Reads returns 0 |
9-8 | CLOCKACTIVITY | R/W | 0h | Clocks activity during wake-up mode period 0h (R/W) = Interface and functional clocks may be switched off. 1h (R/W) = Interface clock is maintained. Functional clock may be switched off. 2h (R/W) = Functional clock is maintained. Interface clock may be switched off. 3h (R/W) = Interface and functional clocks are maintained. |
7-5 | RESERVED | R | 0h | Reads returns 0 |
4-3 | SIDLEMODE | R/W | 2h | Power management 0h (R/W) = If an IDLE request is detected, the MCSPI acknowledges it unconditionally and goes in inactive mode. Interrupt, DMA requests and wake-up lines are unconditionally deasserted and the module wake-up capability is deactivated even if the MCSPI_SYSCONFIG[2] ENAWAKEUP bit is set. 1h (R/W) = If an IDLE request is detected, the request is ignored and the module does not switch to wake-up mode, and keeps on behaving normally. 2h (R/W) = If an IDLE request is detected, the module will switch to wake-up mode based on its internal activity, and the wake-up capability can be used if the bit MCSPI_SYSCONFIG[2] ENAWAKEUP is set. 3h (R/W) = Reserved - do not use. |
2 | ENAWAKEUP | R/W | 1h |
Wake-up feature control 0h (R/W) = Wake-up capability is disabled. 1h (R/W) = Wake-up capability is enabled. |
1 | SOFTRESET | R/W | 0h | Software reset. During reads it always returns 0. 0h (R/W) = (write) Normal mode 1h (R/W) = (write) Set this bit to 1 to trigger a module reset. The bit is automatically reset by the hardware. |
0 | AUTOIDLE | R/W | 1h | Internal interface clock-gating strategy 0h (R/W) = Interface clock is free-running. 1h (R/W) = Automatic interface clock gating strategy is applied, based on the configuration interface activity. |
MCSPI_SYSSTATUS is shown in Figure 12-354 and described in Table 12-666.
Return to Summary Table.
This register provides status information about the module excluding the interrupt status information.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0114h |
MCSPI1_CFG | 0211 0114h |
MCSPI2_CFG | 0212 0114h |
MCSPI3_CFG | 0213 0114h |
MCSPI4_CFG | 0214 0114h |
MCU_MCSPI0_CFG | 4030 0114h |
MCU_MCSPI1_CFG | 4031 0114h |
MCU_MCSPI2_CFG | 4032 0114h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RESETDONE | ||||||
R-0h | R-1h | ||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-1 | RESERVED | R | 0h | Reserved for module specific status information. |
0 | RESETDONE | R | 1h | Internal reset monitoring 0h (R) = Internal module reset is ongoing 1h (R) = Reset completed |
MCSPI_IRQSTATUS is shown in Figure 12-355 and described in Table 12-668.
Return to Summary Table.
The interrupt status regroups all the status of the module internal events that can generate an interrupt.
Some of the MCSPI features described in this section may not be supported on this family of devices. For more information, see MCSPI Not Supported Features.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0118h |
MCSPI1_CFG | 0211 0118h |
MCSPI2_CFG | 0212 0118h |
MCSPI3_CFG | 0213 0118h |
MCSPI4_CFG | 0214 0118h |
MCU_MCSPI0_CFG | 4030 0118h |
MCU_MCSPI1_CFG | 4031 0118h |
MCU_MCSPI2_CFG | 4032 0118h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | EOW | WKS | |||||
R-0h | R/W1C-0h | R/W1C-0h | |||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | RX3_FULL | TX3_UNDERFLOW | TX3_EMPTY | RESERVED | RX2_FULL | TX2_UNDERFLOW | TX2_EMPTY |
R-0h | R/W1C-0h | R/W1C-0h | R/W1C-0h | R-0h | R/W1C-0h | R/W1C-0h | R/W1C-0h |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RX1_FULL | TX1_UNDERFLOW | TX1_EMPTY | RX0_OVERFLOW | RX0_FULL | TX0_UNDERFLOW | TX0_EMPTY |
R-0h | R/W1C-0h | R/W1C-0h | R/W1C-0h | R/W1C-0h | R/W1C-0h | R/W1C-0h | R/W1C-0h |
LEGEND: R = Read Only; R/W1C = Read/Write 1 to Clear Bit; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-18 | RESERVED | R | 0h | Reads returns 0 |
17 | EOW | R/W1C | 0h | End of word count event when a channel is enabled using the FIFO buffer and the channel had sent the number of MCSPI word defined by MCSPI_XFERLEVEL[31-16] WCNT. 0h (R/W) = Event false 1h (R/W) = Event status bit is reset |
16 | WKS | R/W1C | 0h | Wake-up event in slave mode when an active control signal is detected on the SPIEN line programmed in the field MCSPI_CHCONF_0[22-21] SPIENSLV 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
15 | RESERVED | R | 0h | Reads returns 0 |
14 | RX3_FULL | R/W1C | 0h | Receiver register is full or almost full. Only when Channel 3 is enabled 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
13 | TX3_UNDERFLOW | R/W1C | 0h | Transmitter register underflow. Only when Channel 3 is enabled. 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
12 | TX3_EMPTY | R/W1C | 0h | Transmitter register is empty or almost empty. 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
11 | RESERVED | R | 0h | Reads returns 0. |
10 | RX2_FULL | R/W1C | 0h | Receiver register full or almost full. Channel 2 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
9 | TX2_UNDERFLOW | R/W1C | 0h | Transmitter register underflow. Channel 2 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
8 | TX2_EMPTY | R/W1C | 0h | Transmitter register empty or almost empty. Channel 2 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
7 | RESERVED | R | 0h | Reads returns 0 |
6 | RX1_FULL | R/W1C | 0h | Receiver register full or almost full. Channel 1 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
5 | TX1_UNDERFLOW | R/W1C | 0h | Transmitter register underflow. Channel 1 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
4 | TX1_EMPTY | R/W1C | 0h | Transmitter register empty or almost empty. Channel 1 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
3 | RX0_OVERFLOW | R/W1C | 0h | Receiver register overflow (slave mode only). Channel 0 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
2 | RX0_FULL | R/W1C | 0h | Receiver register full or almost full. Channel 0 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
1 | TX0_UNDERFLOW | R/W1C | 0h | Transmitter register underflow. Channel 0 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
0 | TX0_EMPTY | R/W1C | 0h | Transmitter register empty or almost empty. Channel 0 0h (R/W) = Event status bit unchanged 1h (R/W) = Event is pending |
MCSPI_IRQENABLE is shown in Figure 12-356 and described in Table 12-670.
Return to Summary Table.
This register allows enabling/disabling of the module internal sources of interrupt, on an event-by-event basis.
Some of the MCSPI features described in this section may not be supported on this family of devices. For more information, see MCSPI Not Supported Features.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 011Ch |
MCSPI1_CFG | 0211 011Ch |
MCSPI2_CFG | 0212 011Ch |
MCSPI3_CFG | 0213 011Ch |
MCSPI4_CFG | 0214 011Ch |
MCU_MCSPI0_CFG | 4030 011Ch |
MCU_MCSPI1_CFG | 4031 011Ch |
MCU_MCSPI2_CFG | 4032 011Ch |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | EOW_ENABLE | WKE | |||||
R-0h | R/W-0h | R/W-0h | |||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | RX3_FULL_ENABLE | TX3_UNDERFLOW_ENABLE | TX3_EMPTY_ENABLE | RESERVED | RX2_FULL_ENABLE | TX2_UNDERFLOW_ENABLE | TX2_EMPTY_ENABLE |
R-0h | R/W-0h | R/W-0h | R/W-0h | R-0h | R/W-0h | R/W-0h | R/W-0h |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RX1_FULL_ENABLE | TX1_UNDERFLOW_ENABLE | TX1_EMPTY_ENABLE | RX0_OVERFLOW_ENABLE | RX0_FULL_ENABLE | TX0_UNDERFLOW_ENABLE | TX0_EMPTY_ENABLE |
R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h |
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-18 | RESERVED | R | 0h | Reads return 0. |
17 | EOW_ENABLE | R/W | 0h | End of Word count Interrupt Enable. 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
16 | WKE | R/W | 0h | Wake-up event interrupt enable in slave mode when an active control signal is detected on the SPIEN line programmed in the MCSPI_CHCONF_0[22-21] SPIENSLV bit 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
15 | RESERVED | R | 0h | Reads returns 0. |
14 | RX3_FULL_ENABLE | R/W | 0h | Receiver register Full Interrupt Enable. Channel 3 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
13 | TX3_UNDERFLOW_ENABLE | R/W | 0h | Transmitter register Underflow Interrupt Enable. Channel 3 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
12 | TX3_EMPTY_ENABLE | R/W | 0h | Transmitter register Empty Interrupt Enable. Channel 3 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
11 | RESERVED | R | 0h | Reads return 0. |
10 | RX2_FULL_ENABLE | R/W | 0h | Receiver register Full Interrupt Enable. Channel 2 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
9 | TX2_UNDERFLOW_ENABLE | R/W | 0h | Transmitter register Underflow Interrupt Enable. Channel 2 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
8 | TX2_EMPTY_ENABLE | R/W | 0h | Transmitter register Empty Interrupt Enable. Channel 2 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
7 | RESERVED | R | 0h | Reads return 0. |
6 | RX1_FULL_ENABLE | R/W | 0h | Receiver register Full Interrupt Enable. Channel 1 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
5 | TX1_UNDERFLOW_ENABLE | R/W | 0h | Transmitter register Underflow Interrupt Enable. Channel 1 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
4 | TX1_EMPTY_ENABLE | R/W | 0h | Transmitter register Empty Interrupt Enable. Channel 1 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
3 | RX0_OVERFLOW_ENABLE | R/W | 0h | Receiver register Overflow Interrupt Enable. Channel 0 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
2 | RX0_FULL_ENABLE | R/W | 0h | Receiver register Full Interrupt Enable. Channel 0 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
1 | TX0_UNDERFLOW_ENABLE | R/W | 0h | Transmitter register Underflow Interrupt Enable. Channel 0 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
0 | TX0_EMPTY_ENABLE | R/W | 0h | Transmitter register Empty Interrupt Enable. Channel 0 0h (R/W) = Interrupt disabled 1h (R/W) = Interrupt enabled |
MCSPI_WAKEUPENABLE is shown in Figure 12-357 and described in Table 12-672.
Return to Summary Table.
The wake-up enable register allows enabling and disabling of the module internal sources of wakeup on event-by-event basis.
Some of the MCSPI features described in this section may not be supported on this family of devices. For more information, see MCSPI Not Supported Features.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0120h |
MCSPI1_CFG | 0211 0120h |
MCSPI2_CFG | 0212 0120h |
MCSPI3_CFG | 0213 0120h |
MCSPI4_CFG | 0214 0120h |
MCU_MCSPI0_CFG | 4030 0120h |
MCU_MCSPI1_CFG | 4031 0120h |
MCU_MCSPI2_CFG | 4032 0120h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | WKEN | ||||||
R-0h | R/W-0h | ||||||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-1 | RESERVED | R | 0h | Reads returns 0. |
0 | WKEN | R/W | 0h | Wake-up functionality in slave mode when an active control signal is detected on the SPIEN line programmed in the MCSPI_CHCONF_0[22-21] SPIENSLV bit 0h (R/W) = The event is not allowed to wake-up the system, even if the global control bit MCSPI_SYSCONFIG[2] ENAWAKEUPis set. 1h (R/W) = The event is allowed to wake-up the system if the global control bit MCSPI_SYSCONFIG[2] ENAWAKEUP is set. |
MCSPI_SYST is shown in Figure 12-358 and described in Table 12-674.
Return to Summary Table.
This register is used to check the correctness of the system interconnect either internally to peripheral bus, or externally to device I/O pads, when the module is configured in system test (SYSTEST) mode.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0124h |
MCSPI1_CFG | 0211 0124h |
MCSPI2_CFG | 0212 0124h |
MCSPI3_CFG | 0213 0124h |
MCSPI4_CFG | 0214 0124h |
MCU_MCSPI0_CFG | 4030 0124h |
MCU_MCSPI1_CFG | 4031 0124h |
MCU_MCSPI2_CFG | 4032 0124h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | SSB | SPIENDIR | SPIDATDIR1 | SPIDATDIR0 | |||
R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | |||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
WAKD | SPICLK | SPIDAT_1 | SPIDAT_0 | SPIEN_3 | SPIEN_2 | SPIEN_1 | SPIEN_0 |
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h |
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-12 | RESERVED | R | 0h | Reads returns 0. |
11 | SSB | R/W | 0h | Set status bit 0h (R/W) = No action. Writing 0 does not clear already set status bits. This bit must be cleared before trying to clear a status bit of the MCSPI_IRQSTATUS register. 1h (R/W) = Force to 1 all status bits of MCSPI_IRQSTATUS register. Writing 1 into this bit sets to 1 all status bits in the MCSPI_IRQSTATUS register. |
10 | SPIENDIR | R/W | 0h | Set the direction of the SPIEN[3:0] lines and SPICLK line. 0h (R/W) = Output (as in master mode) 1h (R/W) = Input (as in slave mode) |
9 | SPIDATDIR1 | R/W | 0h | Set the direction of the SPIDAT[1]. 0h (R/W) = Output 1h (R/W) = Input |
8 | SPIDATDIR0 | R/W | 0h | Set the direction of the SPIDAT[0]. 0h (R/W) = Output 1h (R/W) = Input |
7 | WAKD | R/W | 0h | SWAKEUP output (signal data value of internal signal to system). 0h (R/W) = The pin is driven low. 1h (R/W) = The pin is driven high. |
6 | SPICLK | R/W | 0h | SPICLK line (signal data value) |
5 | SPIDAT_1 | R/W | 0h | SPIDAT[1] line (signal data value) |
4 | SPIDAT_0 | R/W | 0h | SPIDAT[0] line (signal data value) |
3 | SPIEN_3 | R/W | 0h | SPIEN[3] line (signal data value) |
2 | SPIEN_2 | R/W | 0h | SPIEN[2] line (signal data value) |
1 | SPIEN_1 | R/W | 0h | SPIEN[1] line (signal data value) |
0 | SPIEN_0 | R/W | 0h | SPIEN[0] line (signal data value) |
MCSPI_MODULCTRL is shown in Figure 12-359 and described in Table 12-676.
Return to Summary Table.
This register is dedicated to the configuration of the serial peripheral interface.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0128h |
MCSPI1_CFG | 0211 0128h |
MCSPI2_CFG | 0212 0128h |
MCSPI3_CFG | 0213 0128h |
MCSPI4_CFG | 0214 0128h |
MCU_MCSPI0_CFG | 4030 0128h |
MCU_MCSPI1_CFG | 4031 0128h |
MCU_MCSPI2_CFG | 4032 0128h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | FDAA | ||||||
R-0h | R/W-0h | ||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
MOA | INITDLY | SYSTEM_TEST | MS | PIN34 | SINGLE | ||
R/W-0h | R-0h | R/W-0h | R/W-1h | R/W-0h | R/W-0h | ||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-9 | RESERVED | R | 0h | Reads returns 0. |
8 | FDAA | R/W | 0h | FIFO DMA address 256-bit aligned 0h (R/W) = FIFO data managed by MCSPI_TX(i) and MCSPI_RX(i) registers. 1h (R/W) = FIFO data managed by MCSPI_DAFTX and MCSPI_DAFRX registers. |
7 | MOA | R/W | 0h | Multiple word configuration interface access: 0h (R/W) = Multiple word access disabled 1h (R/W) = Multiple word access enabled with FIFO |
6-4 | INITDLY | R/W | 0h | Initial MCSPI delay for first transfer: 0h (R/W) = No delay for first MCSPI transfer. 1h (R/W) = The controller wait 4 MCSPI bus clock 2h (R/W) = The controller wait 8 MCSPI bus clock 3h (R/W) = The controller wait 16 MCSPI bus clock 4h (R/W) = The controller wait 32 MCSPI bus clock |
3 | SYSTEM_TEST | R/W | 0h | Enables the system test mode 0h (R/W) = Functional mode 1h (R/W) = System test mode (SYSTEST) |
2 | MS | R/W | 1h | Master/slave 0h (R/W) = Master - The module generates the SPICLK and SPIEN[3:0]. 1h (R/W) = Slave - The module receives the SPICLK and SPIEN[3:0]. |
1 | PIN34 | R/W | 0h | Pin mode selection: 0h (R/W) = SPIEN is used as a chip-select. 1h (R/W) = SPIEN is not used. In this mode all related options to chip-select have no meaning. |
0 | SINGLE | R/W | 0h | Single channel/Multi Channel (master mode only) 0h (R/W) = More than one channel will be used in master mode. 1h (R/W) = Only one channel will be used in master mode. This bit must be set in Force SPIEN[i] mode. |
MCSPI_CHCONF_0 is shown in Figure 12-360 and described in Table 12-678.
Return to Summary Table.
This register is dedicated to the configuration of the channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 012Ch |
MCSPI1_CFG | 0211 012Ch |
MCSPI2_CFG | 0212 012Ch |
MCSPI3_CFG | 0213 012Ch |
MCSPI4_CFG | 0214 012Ch |
MCU_MCSPI0_CFG | 4030 012Ch |
MCU_MCSPI1_CFG | 4031 012Ch |
MCU_MCSPI2_CFG | 4032 012Ch |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | CLKG | FFER | FFEW | TCS0 | SBPOL | ||
R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
SBE | SPIENSLV | FORCE | TURBO | IS | DPE1 | DPE0 | |
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-1h | R/W-1h | R/W-0h | |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
DMAR | DMAW | TRM | WL | ||||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
WL | EPOL | CLKD | POL | PHA | |||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | |||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-30 | RESERVED | R | 0h | Read returns 0. |
29 | CLKG | R/W | 0h | Clock divider granularity 0h (R/W) = Clock granularity of power of 2 1h (R/W) = One clock cycle granularity |
28 | FFER | R/W | 0h | FIFO enabled for receive: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to receive data. 1h (R/W) = The buffer is used to receive data. |
27 | FFEW | R/W | 0h | FIFO enabled for transmit: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to transmit data. 1h (R/W) = The buffer is used to transmit data. |
26-25 | TCS0 | R/W | 0h | Chip-select time control 0h (R/W) = 0.5 clock cycle 1h (R/W) = 1.5 clock cycles 2h (R/W) = 2.5 clock cycles 3h (R/W) = 3.5 clock cycles |
24 | SBPOL | R/W | 0h | Start-bit polarity 0h (R/W) = Start-bit polarity is held to 0 during MCSPI transfer. 1h (R/W) = Start-bit polarity is held to 1 during MCSPI transfer. |
23 | SBE | R/W | 0h | Start-bit enable for MCSPI transfer 0h (R/W) = Default MCSPI transfer length as specified by WL bit field 1h (R/W) = Start bit D/CX added before MCSPI transfer polarity is defined by MCSPI_CHCONF_0[24] SBPOL |
22-21 | SPIENSLV | R/W | 0h | Channel 0 only and slave mode only: MCSPI slave select signal detection. 0h (R/W) = Detection enabled only on SPIEN[0] 1h (R/W) = Detection enabled only on SPIEN[1] 2h (R/W) = Detection enabled only on SPIEN[2] 3h (R/W) = Detection enabled only on SPIEN[3] |
20 | FORCE | R/W | 0h | Manual SPIEN assertion to keep SPIEN active between MCSPI words (single channel master mode only). 0h (R/W) = Writing 0 into this bit drives low the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it high when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. 1h (R/W) = Writing 1 into this bit drives high the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it low when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. |
19 | TURBO | R/W | 0h | Turbo mode 0h (R/W) = Turbo is deactivated (recommended for single MCSPI word transfer). 1h (R/W) = Turbo is activated to maximize the throughput for multiple MCSPI words transfer. |
18 | IS | R/W | 1h | Input Select 0h (R/W) = Data line 0 (SPIDAT[0]) selected for reception 1h (R/W) = Data line 1 (SPIDAT[1]) selected for reception |
17 | DPE1 | R/W | 1h | Transmission enable for data line 1 0h (R/W) = Data line 1 (SPIDAT[1]) selected for transmission 1h (R/W) = No transmission on Data Line1 (SPIDAT[1]) |
16 | DPE0 | R/W | 0h | Transmission Enable for data line 0 0h (R/W) = Data Line0 (SPIDAT[0]) selected for transmission 1h (R/W) = No transmission on data line 0 (SPIDAT[0]) |
15 | DMAR | R/W | 0h | DMA read request 0h (R/W) = DMA read request disabled 1h (R/W) = DMA read request enabled |
14 | DMAW | R/W | 0h | DMA write request. 0h (R/W) = DMA write request disabled 1h (R/W) = DMA write request enabled |
13-12 | TRM | R/W | 0h | Transmit/receive modes 0h (R/W) = Transmit-and-receive mode 1h (R/W) = Receive-only mode 2h (R/W) = Transmit-only mode 3h (R/W) = Reserved |
11-7 | WL | R/W | 0h | SPI word length 0h (R/W) = Reserved 1h (R/W) = Reserved 2h (R/W) = Reserved 3h (R/W) = The MCSPI word is 4 bits long 4h (R/W) = The MCSPI word is 5 bits long 5h (R/W) = The MCSPI word is 6 bits long 6h (R/W) = The MCSPI word is 7 bits long 7h (R/W) = The MCSPI word is 8 bits long 8h (R/W) = The MCSPI word is 9 bits long 9h (R/W) = The MCSPI word is 10 bits long Ah (R/W) = The MCSPI word is 11 bits long Bh (R/W) = The MCSPI word is 12 bits long Ch (R/W) = The MCSPI word is 13 bits long Dh (R/W) = The MCSPI word is 14 bits long Eh (R/W) = The MCSPI word is 15 bits long Fh (R/W) = The MCSPI word is 16 bits long 10h (R/W) = The MCSPI word is 17 bits long 11h (R/W) = The MCSPI word is 18 bits long 12h (R/W) = The MCSPI word is 19 bits long 13h (R/W) = The MCSPI word is 20 bits long 14h (R/W) = The MCSPI word is 21 bits long 15h (R/W) = The MCSPI word is 22 bits long 16h (R/W) = The MCSPI word is 23 bits long 17h (R/W) = The MCSPI word is 24 bits long 18h (R/W) = The MCSPI word is 25 bits long 19h (R/W) = The MCSPI word is 26 bits long 1Ah (R/W) = The MCSPI word is 27 bits long 1Bh (R/W) = The MCSPI word is 28 bits long 1Ch (R/W) = The MCSPI word is 29 bits long 1Dh (R/W) = The MCSPI word is 30 bits long 1Eh (R/W) = The MCSPI word is 31 bits long 1Fh (R/W) = The MCSPI word is 32 bits long |
6 | EPOL | R/W | 0h | SPIEN polarity 0h (R/W) = SPIEN is held high during the ACTIVE state. 1h (R/W) = SPIEN is held low during the ACTIVE state. |
5-2 | CLKD | R/W | 0h | Frequency divider for SPICLK (only when the module is a Master MCSPI device). A programmable clock divider divides the MCSPI reference clock (SPICLKREF) with a 4-bit value, and results in a new clock SPICLK available to shift-in and shift-out data. By default the clock divider ratio has a power of 2 granularity when MCSPI_CHCONF_0/1/2/3[29] CLKG is cleared. Otherwise this field is the 4-LSB bit of a 12-bit register concatenated with clock divider extension MCSPI_CHCTRL_0/1/2/3[15-8] EXTCLK register. The value description below defines the clock ratio when MCSPI_CHCONF_0/1/2/3[29] CLKG is set to 0. 0h (R/W) = 1 1h (R/W) = 2 2h (R/W) = 4 3h (R/W) = 8 4h (R/W) = 16 5h (R/W) = 32 6h (R/W) = 64 7h (R/W) = 128 8h (R/W) = 256 9h (R/W) = 512 Ah (R/W) = 1024 Bh (R/W) = 2048 Ch (R/W) = 4096 Dh (R/W) = 8192 Eh (R/W) = 16384 Fh (R/W) = 32768 |
1 | POL | R/W | 0h | SPICLK polarity (see Transfer Format) 0h (R/W) = SPICLK is held low during the INACTIVE state 1h (R/W) = SPICLK is held high during the INACTIVE state |
0 | PHA | R/W | 0h | SPICLK phase (see Transfer Format) 0h (R/W) = Data are latched on odd-numbered edges of SPICLK. 1h (R/W) = Data are latched on even-numbered edges of SPICLK. |
MCSPI_CHSTAT_0 is shown in Figure 12-361 and described in Table 12-680.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0130h |
MCSPI1_CFG | 0211 0130h |
MCSPI2_CFG | 0212 0130h |
MCSPI3_CFG | 0213 0130h |
MCSPI4_CFG | 0214 0130h |
MCU_MCSPI0_CFG | 4030 0130h |
MCU_MCSPI1_CFG | 4031 0130h |
MCU_MCSPI2_CFG | 4032 0130h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RXFFF | RXFFE | TXFFF | TXFFE | EOT | TXS | RXS |
R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-7 | RESERVED | R | 0h | Read returns 0. |
6 | RXFFF | R | 0h | Channel i FIFO receive buffer full status 0h (R) = FIFO receive buffer is not full 1h (R) = FIFO receive buffer is full |
5 | RXFFE | R | 0h | Channel i FIFO receive buffer empty status 0h (R) = FIFO receive buffer is not empty 1h (R) = FIFO receive buffer is empty |
4 | TXFFF | R | 0h | Channel i FIFO transmit buffer full status 0h (R) = FIFO transmit buffer is not full 1h (R) = FIFO transmit buffer is full |
3 | TXFFE | R | 0h | Channel i FIFO transmit buffer empty status 0h (R) = FIFO transmit buffer is not empty 1h (R) = FIFO transmit buffer is empty |
2 | EOT | R | 0h | Channel i end of transfer status. The definitions of beginning and end of transfer vary with master versus slave and the transfer format (transmit/receive modes, turbo mode). See dedicated chapters for details. 0h (R) = This flag is automatically cleared when the shift register is loaded with the data from the transmitter register (beginning of transfer). 1h (R) = This flag is automatically set to one at the end of an MCSPI transfer. |
1 | TXS | R | 0h | Channel i transmitter register status 0h (R) = Register is full. 1h (R) = Register is empty. |
0 | RXS | R | 0h | Channel i receiver register status 0h (R) = Register is empty. 1h (R) = Register is full. |
MCSPI_CHCTRL_0 is shown in Figure 12-362 and described in Table 12-682.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0134h |
MCSPI1_CFG | 0211 0134h |
MCSPI2_CFG | 0212 0134h |
MCSPI3_CFG | 0213 0134h |
MCSPI4_CFG | 0214 0134h |
MCU_MCSPI0_CFG | 4030 0134h |
MCU_MCSPI1_CFG | 4031 0134h |
MCU_MCSPI2_CFG | 4032 0134h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||||||||||
R-0h | |||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
EXTCLK | RESERVED | EN | |||||||||||||
R/W-0h | R-0h | R/W-0h | |||||||||||||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-16 | RESERVED | R | 0h | Read returns 0. |
15-8 | EXTCLK | R/W | 0h | Clock ratio extension: 0h (R/W) = Clock ratio is CLKD + 1. 1h (R/W) = Clock ratio is CLKD + 1 + 16. FFh (R/W) = Clock ratio is CLKD + 1 + 4080. |
7-1 | RESERVED | R | 0h | Read returns 0. |
0 | EN | R/W | 0h | Channel enable 0h (R/W) = Channel i is not active. 1h (R/W) = Channel i is active. |
MCSPI_TX_0 is shown in Figure 12-363 and described in Table 12-684.
Return to Summary Table.
This register contains a single MCSPI word for channel ito transmit on the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0138h |
MCSPI1_CFG | 0211 0138h |
MCSPI2_CFG | 0212 0138h |
MCSPI3_CFG | 0213 0138h |
MCSPI4_CFG | 0214 0138h |
MCU_MCSPI0_CFG | 4030 0138h |
MCU_MCSPI1_CFG | 4031 0138h |
MCU_MCSPI2_CFG | 4032 0138h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
TDATA | |||||||||||||||||||||||||||||||
R/W-0h | |||||||||||||||||||||||||||||||
LEGEND: R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | TDATA | R/W | 0h | Channel i data to transmit |
MCSPI_RX_0 is shown in Figure 12-364 and described in Table 12-686.
Return to Summary Table.
This register contains a single MCSPI word for channel i received through the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 013Ch |
MCSPI1_CFG | 0211 013Ch |
MCSPI2_CFG | 0212 013Ch |
MCSPI3_CFG | 0213 013Ch |
MCSPI4_CFG | 0214 013Ch |
MCU_MCSPI0_CFG | 4030 013Ch |
MCU_MCSPI1_CFG | 4031 013Ch |
MCU_MCSPI2_CFG | 4032 013Ch |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RDATA | |||||||||||||||||||||||||||||||
R-0h | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | RDATA | R | 0h | Channel i received data |
MCSPI_CHCONF_1 is shown in Figure 12-365 and described in Table 12-688.
Return to Summary Table.
This register is dedicated to the configuration of the channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0140h |
MCSPI1_CFG | 0211 0140h |
MCSPI2_CFG | 0212 0140h |
MCSPI3_CFG | 0213 0140h |
MCSPI4_CFG | 0214 0140h |
MCU_MCSPI0_CFG | 4030 0140h |
MCU_MCSPI1_CFG | 4031 0140h |
MCU_MCSPI2_CFG | 4032 0140h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | CLKG | FFER | FFEW | TCS0 | SBPOL | ||
R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
SBE | SPIENSLV | FORCE | TURBO | IS | DPE1 | DPE0 | |
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-1h | R/W-1h | R/W-0h | |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
DMAR | DMAW | TRM | WL | ||||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
WL | EPOL | CLKD | POL | PHA | |||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | |||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-30 | RESERVED | R | 0h | Read returns 0. |
29 | CLKG | R/W | 0h | Clock divider granularity 0h (R/W) = Clock granularity of power of 2 1h (R/W) = One clock cycle granularity |
28 | FFER | R/W | 0h | FIFO enabled for receive: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to receive data. 1h (R/W) = The buffer is used to receive data. |
27 | FFEW | R/W | 0h | FIFO enabled for transmit: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to transmit data. 1h (R/W) = The buffer is used to transmit data. |
26-25 | TCS0 | R/W | 0h | Chip-select time control 0h (R/W) = 0.5 clock cycle 1h (R/W) = 1.5 clock cycles 2h (R/W) = 2.5 clock cycles 3h (R/W) = 3.5 clock cycles |
24 | SBPOL | R/W | 0h | Start-bit polarity 0h (R/W) = Start-bit polarity is held to 0 during MCSPI transfer. 1h (R/W) = Start-bit polarity is held to 1 during MCSPI transfer. |
23 | SBE | R/W | 0h | Start-bit enable for MCSPI transfer 0h (R/W) = Default MCSPI transfer length as specified by WL bit field 1h (R/W) = Start bit D/CX added before MCSPI transfer polarity is defined by MCSPI_CHCONF_0[24] SBPOL |
22-21 | SPIENSLV | R/W | 0h | Channel 0 only and slave mode only: MCSPI slave select signal detection. 0h (R/W) = Detection enabled only on SPIEN[0] 1h (R/W) = Detection enabled only on SPIEN[1] 2h (R/W) = Detection enabled only on SPIEN[2] 3h (R/W) = Detection enabled only on SPIEN[3] |
20 | FORCE | R/W | 0h | Manual SPIEN assertion to keep SPIEN active between MCSPI words (single channel master mode only). 0h (R/W) = Writing 0 into this bit drives low the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it high when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. 1h (R/W) = Writing 1 into this bit drives high the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it low when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. |
19 | TURBO | R/W | 0h | Turbo mode 0h (R/W) = Turbo is deactivated (recommended for single MCSPI word transfer). 1h (R/W) = Turbo is activated to maximize the throughput for multiple MCSPI words transfer. |
18 | IS | R/W | 1h | Input Select 0h (R/W) = Data line 0 (SPIDAT[0]) selected for reception 1h (R/W) = Data line 1 (SPIDAT[1]) selected for reception |
17 | DPE1 | R/W | 1h | Transmission enable for data line 1 0h (R/W) = Data line 1 (SPIDAT[1]) selected for transmission 1h (R/W) = No transmission on Data Line1 (SPIDAT[1]) |
16 | DPE0 | R/W | 0h | Transmission Enable for data line 0 0h (R/W) = Data Line0 (SPIDAT[0]) selected for transmission 1h (R/W) = No transmission on data line 0 (SPIDAT[0]) |
15 | DMAR | R/W | 0h | DMA read request 0h (R/W) = DMA read request disabled 1h (R/W) = DMA read request enabled |
14 | DMAW | R/W | 0h | DMA write request. 0h (R/W) = DMA write request disabled 1h (R/W) = DMA write request enabled |
13-12 | TRM | R/W | 0h | Transmit/receive modes 0h (R/W) = Transmit-and-receive mode 1h (R/W) = Receive-only mode 2h (R/W) = Transmit-only mode 3h (R/W) = Reserved |
11-7 | WL | R/W | 0h | SPI word length 0h (R/W) = Reserved 1h (R/W) = Reserved 2h (R/W) = Reserved 3h (R/W) = The MCSPI word is 4 bits long 4h (R/W) = The MCSPI word is 5 bits long 5h (R/W) = The MCSPI word is 6 bits long 6h (R/W) = The MCSPI word is 7 bits long 7h (R/W) = The MCSPI word is 8 bits long 8h (R/W) = The MCSPI word is 9 bits long 9h (R/W) = The MCSPI word is 10 bits long Ah (R/W) = The MCSPI word is 11 bits long Bh (R/W) = The MCSPI word is 12 bits long Ch (R/W) = The MCSPI word is 13 bits long Dh (R/W) = The MCSPI word is 14 bits long Eh (R/W) = The MCSPI word is 15 bits long Fh (R/W) = The MCSPI word is 16 bits long 10h (R/W) = The MCSPI word is 17 bits long 11h (R/W) = The MCSPI word is 18 bits long 12h (R/W) = The MCSPI word is 19 bits long 13h (R/W) = The MCSPI word is 20 bits long 14h (R/W) = The MCSPI word is 21 bits long 15h (R/W) = The MCSPI word is 22 bits long 16h (R/W) = The MCSPI word is 23 bits long 17h (R/W) = The MCSPI word is 24 bits long 18h (R/W) = The MCSPI word is 25 bits long 19h (R/W) = The MCSPI word is 26 bits long 1Ah (R/W) = The MCSPI word is 27 bits long 1Bh (R/W) = The MCSPI word is 28 bits long 1Ch (R/W) = The MCSPI word is 29 bits long 1Dh (R/W) = The MCSPI word is 30 bits long 1Eh (R/W) = The MCSPI word is 31 bits long 1Fh (R/W) = The MCSPI word is 32 bits long |
6 | EPOL | R/W | 0h | SPIEN polarity 0h (R/W) = SPIEN is held high during the ACTIVE state. 1h (R/W) = SPIEN is held low during the ACTIVE state. |
5-2 | CLKD | R/W | 0h | Frequency divider for SPICLK (only when the module is a Master MCSPI device). A programmable clock divider divides the MCSPI reference clock (SPICLKREF) with a 4-bit value, and results in a new clock SPICLK available to shift-in and shift-out data. By default the clock divider ratio has a power of 2 granularity when MCSPI_CHCONF_0/1/2/3[29] CLKG is cleared. Otherwise this field is the 4-LSB bit of a 12-bit register concatenated with clock divider extension MCSPI_CHCTRL_0/1/2/3[15-8] EXTCLK register. The value description below defines the clock ratio when MCSPI_CHCONF_0/1/2/3[29] CLKG is set to 0. 0h (R/W) = 1 1h (R/W) = 2 2h (R/W) = 4 3h (R/W) = 8 4h (R/W) = 16 5h (R/W) = 32 6h (R/W) = 64 7h (R/W) = 128 8h (R/W) = 256 9h (R/W) = 512 Ah (R/W) = 1024 Bh (R/W) = 2048 Ch (R/W) = 4096 Dh (R/W) = 8192 Eh (R/W) = 16384 Fh (R/W) = 32768 |
1 | POL | R/W | 0h | SPICLK polarity (see Transfer Format) 0h (R/W) = SPICLK is held low during the INACTIVE state 1h (R/W) = SPICLK is held high during the INACTIVE state |
0 | PHA | R/W | 0h | SPICLK phase (see Transfer Format) 0h (R/W) = Data are latched on odd-numbered edges of SPICLK. 1h (R/W) = Data are latched on even-numbered edges of SPICLK. |
MCSPI_CHSTAT_1 is shown in Figure 12-366 and described in Table 12-690.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0144h |
MCSPI1_CFG | 0211 0144h |
MCSPI2_CFG | 0212 0144h |
MCSPI3_CFG | 0213 0144h |
MCSPI4_CFG | 0214 0144h |
MCU_MCSPI0_CFG | 4030 0144h |
MCU_MCSPI1_CFG | 4031 0144h |
MCU_MCSPI2_CFG | 4032 0144h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RXFFF | RXFFE | TXFFF | TXFFE | EOT | TXS | RXS |
R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-7 | RESERVED | R | 0h | Read returns 0. |
6 | RXFFF | R | 0h | Channel i FIFO receive buffer full status 0h (R) = FIFO receive buffer is not full 1h (R) = FIFO receive buffer is full |
5 | RXFFE | R | 0h | Channel i FIFO receive buffer empty status 0h (R) = FIFO receive buffer is not empty 1h (R) = FIFO receive buffer is empty |
4 | TXFFF | R | 0h | Channel i FIFO transmit buffer full status 0h (R) = FIFO transmit buffer is not full 1h (R) = FIFO transmit buffer is full |
3 | TXFFE | R | 0h | Channel i FIFO transmit buffer empty status 0h (R) = FIFO transmit buffer is not empty 1h (R) = FIFO transmit buffer is empty |
2 | EOT | R | 0h | Channel i end of transfer status. The definitions of beginning and end of transfer vary with master versus slave and the transfer format (transmit/receive modes, turbo mode). See dedicated chapters for details. 0h (R) = This flag is automatically cleared when the shift register is loaded with the data from the transmitter register (beginning of transfer). 1h (R) = This flag is automatically set to one at the end of an MCSPI transfer. |
1 | TXS | R | 0h | Channel i transmitter register status 0h (R) = Register is full. 1h (R) = Register is empty. |
0 | RXS | R | 0h | Channel i receiver register status 0h (R) = Register is empty. 1h (R) = Register is full. |
MCSPI_CHCTRL_1 is shown in Figure 12-367 and described in Table 12-692.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0148h |
MCSPI1_CFG | 0211 0148h |
MCSPI2_CFG | 0212 0148h |
MCSPI3_CFG | 0213 0148h |
MCSPI4_CFG | 0214 0148h |
MCU_MCSPI0_CFG | 4030 0148h |
MCU_MCSPI1_CFG | 4031 0148h |
MCU_MCSPI2_CFG | 4032 0148h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||||||||||
R-0h | |||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
EXTCLK | RESERVED | EN | |||||||||||||
R/W-0h | R-0h | R/W-0h | |||||||||||||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-16 | RESERVED | R | 0h | Read returns 0. |
15-8 | EXTCLK | R/W | 0h | Clock ratio extension: 0h (R/W) = Clock ratio is CLKD + 1. 1h (R/W) = Clock ratio is CLKD + 1 + 16. FFh (R/W) = Clock ratio is CLKD + 1 + 4080. |
7-1 | RESERVED | R | 0h | Read returns 0. |
0 | EN | R/W | 0h | Channel enable 0h (R/W) = Channel "i" is not active. 1h (R/W) = Channel "i" is active. |
MCSPI_TX_1 is shown in Figure 12-368 and described in Table 12-694.
Return to Summary Table.
This register contains a single MCSPI word for channel i to transmit on the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 014Ch |
MCSPI1_CFG | 0211 014Ch |
MCSPI2_CFG | 0212 014Ch |
MCSPI3_CFG | 0213 014Ch |
MCSPI4_CFG | 0214 014Ch |
MCU_MCSPI0_CFG | 4030 014Ch |
MCU_MCSPI1_CFG | 4031 014Ch |
MCU_MCSPI2_CFG | 4032 014Ch |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
TDATA | |||||||||||||||||||||||||||||||
R/W- | |||||||||||||||||||||||||||||||
LEGEND: R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | TDATA | R/W | 0 | Channel i data to transmit |
MCSPI_RX_1 is shown in Figure 12-369 and described in Table 12-696.
Return to Summary Table.
This register contains a single MCSPI word for channel i received through the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0150h |
MCSPI1_CFG | 0211 0150h |
MCSPI2_CFG | 0212 0150h |
MCSPI3_CFG | 0213 0150h |
MCSPI4_CFG | 0214 0150h |
MCU_MCSPI0_CFG | 4030 0150h |
MCU_MCSPI1_CFG | 4031 0150h |
MCU_MCSPI2_CFG | 4032 0150h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RDATA | |||||||||||||||||||||||||||||||
R- | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | RDATA | R | 0 | Channel i received data |
MCSPI_CHCONF_2 is shown in Figure 12-370 and described in Table 12-698.
Return to Summary Table.
This register is dedicated to the configuration of the channel i
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0154h |
MCSPI1_CFG | 0211 0154h |
MCSPI2_CFG | 0212 0154h |
MCSPI3_CFG | 0213 0154h |
MCSPI4_CFG | 0214 0154h |
MCU_MCSPI0_CFG | 4030 0154h |
MCU_MCSPI1_CFG | 4031 0154h |
MCU_MCSPI2_CFG | 4032 0154h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | CLKG | FFER | FFEW | TCS0 | SBPOL | ||
R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
SBE | SPIENSLV | FORCE | TURBO | IS | DPE1 | DPE0 | |
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-1h | R/W-1h | R/W-0h | |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
DMAR | DMAW | TRM | WL | ||||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
WL | EPOL | CLKD | POL | PHA | |||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | |||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-30 | RESERVED | R | 0h | Read returns 0. |
29 | CLKG | R/W | 0h | Clock divider granularity 0h (R/W) = Clock granularity of power of 2 1h (R/W) = One clock cycle granularity |
28 | FFER | R/W | 0h | FIFO enabled for receive: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to receive data. 1h (R/W) = The buffer is used to receive data. |
27 | FFEW | R/W | 0h | FIFO enabled for transmit: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to transmit data. 1h (R/W) = The buffer is used to transmit data. |
26-25 | TCS0 | R/W | 0h | Chip-select time control 0h (R/W) = 0.5 clock cycle 1h (R/W) = 1.5 clock cycles 2h (R/W) = 2.5 clock cycles 3h (R/W) = 3.5 clock cycles |
24 | SBPOL | R/W | 0h | Start-bit polarity 0h (R/W) = Start-bit polarity is held to 0 during MCSPI transfer. 1h (R/W) = Start-bit polarity is held to 1 during MCSPI transfer. |
23 | SBE | R/W | 0h | Start-bit enable for MCSPI transfer 0h (R/W) = Default MCSPI transfer length as specified by WL bit field 1h (R/W) = Start bit D/CX added before MCSPI transfer polarity is defined by MCSPI_CHCONF_2[24] SBPOL |
22-21 | SPIENSLV | R/W | 0h | Channel 0 only and slave mode only: MCSPI slave select signal detection. 0h (R/W) = Detection enabled only on SPIEN[0] 1h (R/W) = Detection enabled only on SPIEN[1] 2h (R/W) = Detection enabled only on SPIEN[2] 3h (R/W) = Detection enabled only on SPIEN[3] |
20 | FORCE | R/W | 0h | Manual SPIEN assertion to keep SPIEN active between MCSPI words (single channel master mode only). 0h (R/W) = Writing 0 into this bit drives low the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it high when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. 1h (R/W) = Writing 1 into this bit drives high the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it low when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. |
19 | TURBO | R/W | 0h | Turbo mode 0h (R/W) = Turbo is deactivated (recommended for single MCSPI word transfer). 1h (R/W) = Turbo is activated to maximize the throughput for multiple MCSPI words transfer. |
18 | IS | R/W | 1h | Input Select 0h (R/W) = Data line 0 (SPIDAT[0]) selected for reception 1h (R/W) = Data line 1 (SPIDAT[1]) selected for reception |
17 | DPE1 | R/W | 1h | Transmission enable for data line 1 0h (R/W) = Data line 1 (SPIDAT[1]) selected for transmission 1h (R/W) = No transmission on Data Line1 (SPIDAT[1]) |
16 | DPE0 | R/W | 0h | Transmission Enable for data line 0 0h (R/W) = Data Line0 (SPIDAT[0]) selected for transmission 1h (R/W) = No transmission on data line 0 (SPIDAT[0]) |
15 | DMAR | R/W | 0h | DMA read request 0h (R/W) = DMA read request disabled 1h (R/W) = DMA read request enabled |
14 | DMAW | R/W | 0h | DMA write request. 0h (R/W) = DMA write request disabled 1h (R/W) = DMA write request enabled |
13-12 | TRM | R/W | 0h | Transmit/receive modes 0h (R/W) = Transmit-and-receive mode 1h (R/W) = Receive-only mode 2h (R/W) = Transmit-only mode 3h (R/W) = Reserved |
11-7 | WL | R/W | 0h | SPI word length 0h (R/W) = Reserved 1h (R/W) = Reserved 2h (R/W) = Reserved 3h (R/W) = The MCSPI word is 4 bits long 4h (R/W) = The MCSPI word is 5 bits long 5h (R/W) = The MCSPI word is 6 bits long 6h (R/W) = The MCSPI word is 7 bits long 7h (R/W) = The MCSPI word is 8 bits long 8h (R/W) = The MCSPI word is 9 bits long 9h (R/W) = The MCSPI word is 10 bits long Ah (R/W) = The MCSPI word is 11 bits long Bh (R/W) = The MCSPI word is 12 bits long Ch (R/W) = The MCSPI word is 13 bits long Dh (R/W) = The MCSPI word is 14 bits long Eh (R/W) = The MCSPI word is 15 bits long Fh (R/W) = The MCSPI word is 16 bits long 10h (R/W) = The MCSPI word is 17 bits long 11h (R/W) = The MCSPI word is 18 bits long 12h (R/W) = The MCSPI word is 19 bits long 13h (R/W) = The MCSPI word is 20 bits long 14h (R/W) = The MCSPI word is 21 bits long 15h (R/W) = The MCSPI word is 22 bits long 16h (R/W) = The MCSPI word is 23 bits long 17h (R/W) = The MCSPI word is 24 bits long 18h (R/W) = The MCSPI word is 25 bits long 19h (R/W) = The MCSPI word is 26 bits long 1Ah (R/W) = The MCSPI word is 27 bits long 1Bh (R/W) = The MCSPI word is 28 bits long 1Ch (R/W) = The MCSPI word is 29 bits long 1Dh (R/W) = The MCSPI word is 30 bits long 1Eh (R/W) = The MCSPI word is 31 bits long 1Fh (R/W) = The MCSPI word is 32 bits long |
6 | EPOL | R/W | 0h | SPIEN polarity 0h (R/W) = SPIEN is held high during the ACTIVE state. 1h (R/W) = SPIEN is held low during the ACTIVE state. |
5-2 | CLKD | R/W | 0h | Frequency divider for SPICLK (only when the module is a Master MCSPI device). A programmable clock divider divides the MCSPI reference clock (SPICLKREF) with a 4-bit value, and results in a new clock SPICLK available to shift-in and shift-out data. By default the clock divider ratio has a power of 2 granularity when MCSPI_CHCONF_2[29] CLKG is cleared. Otherwise this field is the 4-LSB bit of a 12-bit register concatenated with clock divider extension MCSPI_CHCTRL_2[15-8] EXTCLK register. The value description below defines the clock ratio when MCSPI_CHCONF_2[29] CLKG is set to 0. 0h (R/W) = 1 1h (R/W) = 2 2h (R/W) = 4 3h (R/W) = 8 4h (R/W) = 16 5h (R/W) = 32 6h (R/W) = 64 7h (R/W) = 128 8h (R/W) = 256 9h (R/W) = 512 Ah (R/W) = 1024 Bh (R/W) = 2048 Ch (R/W) = 4096 Dh (R/W) = 8192 Eh (R/W) = 16384 Fh (R/W) = 32768 |
1 | POL | R/W | 0h | SPICLK polarity (see Transfer Format) 0h (R/W) = SPICLK is held low during the INACTIVE state 1h (R/W) = SPICLK is held high during the INACTIVE state |
0 | PHA | R/W | 0h | SPICLK phase (see Transfer Format) 0h (R/W) = Data are latched on odd-numbered edges of SPICLK. 1h (R/W) = Data are latched on even-numbered edges of SPICLK. |
MCSPI_CHSTAT_2 is shown in Figure 12-371 and described in Table 12-700.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0158h |
MCSPI1_CFG | 0211 0158h |
MCSPI2_CFG | 0212 0158h |
MCSPI3_CFG | 0213 0158h |
MCSPI4_CFG | 0214 0158h |
MCU_MCSPI0_CFG | 4030 0158h |
MCU_MCSPI1_CFG | 4031 0158h |
MCU_MCSPI2_CFG | 4032 0158h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RXFFF | RXFFE | TXFFF | TXFFE | EOT | TXS | RXS |
R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-7 | RESERVED | R | 0h | Read returns 0. |
6 | RXFFF | R | 0h | Channel i FIFO receive buffer full status 0h (R) = FIFO receive buffer is not full 1h (R) = FIFO receive buffer is full |
5 | RXFFE | R | 0h | Channel i FIFO receive buffer empty status 0h (R) = FIFO receive buffer is not empty 1h (R) = FIFO receive buffer is empty |
4 | TXFFF | R | 0h | Channel i FIFO transmit buffer full status 0h (R) = FIFO transmit buffer is not full 1h (R) = FIFO transmit buffer is full |
3 | TXFFE | R | 0h | Channel i FIFO transmit buffer empty status 0h (R) = FIFO transmit buffer is not empty 1h (R) = FIFO transmit buffer is empty |
2 | EOT | R | 0h | Channel i end of transfer status. The definitions of beginning and end of transfer vary with master versus slave and the transfer format (transmit/receive modes, turbo mode). See dedicated chapters for details. 0h (R) = This flag is automatically cleared when the shift register is loaded with the data from the transmitter register (beginning of transfer). 1h (R) = This flag is automatically set to one at the end of an MCSPI transfer. |
1 | TXS | R | 0h | Channel i transmitter register status 0h (R) = Register is full. 1h (R) = Register is empty. |
0 | RXS | R | 0h | Channel i receiver register status 0h (R) = Register is empty. 1h (R) = Register is full. |
MCSPI_CHCTRL_2 is shown in Figure 12-372 and described in Table 12-702.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 015Ch |
MCSPI1_CFG | 0211 015Ch |
MCSPI2_CFG | 0212 015Ch |
MCSPI3_CFG | 0213 015Ch |
MCSPI4_CFG | 0214 015Ch |
MCU_MCSPI0_CFG | 4030 015Ch |
MCU_MCSPI1_CFG | 4031 015Ch |
MCU_MCSPI2_CFG | 4032 015Ch |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||||||||||
R-0h | |||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
EXTCLK | RESERVED | EN | |||||||||||||
R/W-0h | R-0h | R/W-0h | |||||||||||||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-16 | RESERVED | R | 0h | Read returns 0. |
15-8 | EXTCLK | R/W | 0h | Clock ratio extension: 0h (R/W) = Clock ratio is CLKD + 1. 1h (R/W) = Clock ratio is CLKD + 1 + 16. FFh (R/W) = Clock ratio is CLKD + 1 + 4080. |
7-1 | RESERVED | R | 0h | Read returns 0. |
0 | EN | R/W | 0h | Channel enable 0h (R/W) = Channel i is not active. 1h (R/W) = Channel i is active. |
MCSPI_TX_2 is shown in Figure 12-373 and described in Table 12-704.
Return to Summary Table.
This register contains a single MCSPI word for channel i to transmit on the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0160h |
MCSPI1_CFG | 0211 0160h |
MCSPI2_CFG | 0212 0160h |
MCSPI3_CFG | 0213 0160h |
MCSPI4_CFG | 0214 0160h |
MCU_MCSPI0_CFG | 4030 0160h |
MCU_MCSPI1_CFG | 4031 0160h |
MCU_MCSPI2_CFG | 4032 0160h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
TDATA | |||||||||||||||||||||||||||||||
R/W-0h | |||||||||||||||||||||||||||||||
LEGEND: R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | TDATA | R/W | 0h | Channel i data to transmit |
MCSPI_RX_2 is shown in Figure 12-374 and described in Table 12-706.
Return to Summary Table.
This register contains a single MCSPI word for channel i received through the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0164h |
MCSPI1_CFG | 0211 0164h |
MCSPI2_CFG | 0212 0164h |
MCSPI3_CFG | 0213 0164h |
MCSPI4_CFG | 0214 0164h |
MCU_MCSPI0_CFG | 4030 0164h |
MCU_MCSPI1_CFG | 4031 0164h |
MCU_MCSPI2_CFG | 4032 0164h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RDATA | |||||||||||||||||||||||||||||||
R-0h | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | RDATA | R | 0h | Channel i received data |
MCSPI_CHCONF_3 is shown in Figure 12-375 and described in Table 12-708.
Return to Summary Table.
This register is dedicated to the configuration of the channel i
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0168h |
MCSPI1_CFG | 0211 0168h |
MCSPI2_CFG | 0212 0168h |
MCSPI3_CFG | 0213 0168h |
MCSPI4_CFG | 0214 0168h |
MCU_MCSPI0_CFG | 4030 0168h |
MCU_MCSPI1_CFG | 4031 0168h |
MCU_MCSPI2_CFG | 4032 0168h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | CLKG | FFER | FFEW | TCS0 | SBPOL | ||
R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
SBE | SPIENSLV | FORCE | TURBO | IS | DPE1 | DPE0 | |
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-1h | R/W-1h | R/W-0h | |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
DMAR | DMAW | TRM | WL | ||||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | ||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
WL | EPOL | CLKD | POL | PHA | |||
R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | |||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-30 | RESERVED | R | 0h | Read returns 0. |
29 | CLKG | R/W | 0h | Clock divider granularity 0h (R/W) = Clock granularity of power of 2 1h (R/W) = One clock cycle granularity |
28 | FFER | R/W | 0h | FIFO enabled for receive: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to receive data. 1h (R/W) = The buffer is used to receive data. |
27 | FFEW | R/W | 0h | FIFO enabled for transmit: Only one channel can have this bit field set. 0h (R/W) = The buffer is not used to transmit data. 1h (R/W) = The buffer is used to transmit data. |
26-25 | TCS0 | R/W | 0h | Chip-select time control 0h (R/W) = 0.5 clock cycle 1h (R/W) = 1.5 clock cycles 2h (R/W) = 2.5 clock cycles 3h (R/W) = 3.5 clock cycles |
24 | SBPOL | R/W | 0h | Start-bit polarity 0h (R/W) = Start-bit polarity is held to 0 during MCSPI transfer. 1h (R/W) = Start-bit polarity is held to 1 during MCSPI transfer. |
23 | SBE | R/W | 0h | Start-bit enable for MCSPI transfer 0h (R/W) = Default MCSPI transfer length as specified by WL bit field 1h (R/W) = Start bit D/CX added before MCSPI transfer polarity is defined by MCSPI_CHCONF_3[24] SBPOL |
22-21 | SPIENSLV | R/W | 0h | Channel 0 only and slave mode only: MCSPI slave select signal detection. 0h (R/W) = Detection enabled only on SPIEN[0] 1h (R/W) = Detection enabled only on SPIEN[1] 2h (R/W) = Detection enabled only on SPIEN[2] 3h (R/W) = Detection enabled only on SPIEN[3] |
20 | FORCE | R/W | 0h | Manual SPIEN assertion to keep SPIEN active between MCSPI words (single channel master mode only). 0h (R/W) = Writing 0 into this bit drives low the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it high when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. 1h (R/W) = Writing 1 into this bit drives high the SPIEN line when MCSPI_CHCONF_0/1/2/3[6] EPOL=0, and drives it low when MCSPI_CHCONF_0/1/2/3[6] EPOL=1. |
19 | TURBO | R/W | 0h | Turbo mode 0h (R/W) = Turbo is deactivated (recommended for single MCSPI word transfer). 1h (R/W) = Turbo is activated to maximize the throughput for multiple MCSPI words transfer. |
18 | IS | R/W | 1h | Input Select 0h (R/W) = Data line 0 (SPIDAT[0]) selected for reception 1h (R/W) = Data line 1 (SPIDAT[1]) selected for reception |
17 | DPE1 | R/W | 1h | Transmission enable for data line 1 0h (R/W) = Data line 1 (SPIDAT[1]) selected for transmission 1h (R/W) = No transmission on Data Line1 (SPIDAT[1]) |
16 | DPE0 | R/W | 0h | Transmission Enable for data line 0 0h (R/W) = Data Line0 (SPIDAT[0]) selected for transmission 1h (R/W) = No transmission on data line 0 (SPIDAT[0]) |
15 | DMAR | R/W | 0h | DMA read request 0h (R/W) = DMA read request disabled 1h (R/W) = DMA read request enabled |
14 | DMAW | R/W | 0h | DMA write request. 0h (R/W) = DMA write request disabled 1h (R/W) = DMA write request enabled |
13-12 | TRM | R/W | 0h | Transmit/receive modes 0h (R/W) = Transmit-and-receive mode 1h (R/W) = Receive-only mode 2h (R/W) = Transmit-only mode 3h (R/W) = Reserved |
11-7 | WL | R/W | 0h | SPI word length 0h (R/W) = Reserved 1h (R/W) = Reserved 2h (R/W) = Reserved 3h (R/W) = The MCSPI word is 4 bits long 4h (R/W) = The MCSPI word is 5 bits long 5h (R/W) = The MCSPI word is 6 bits long 6h (R/W) = The MCSPI word is 7 bits long 7h (R/W) = The MCSPI word is 8 bits long 8h (R/W) = The MCSPI word is 9 bits long 9h (R/W) = The MCSPI word is 10 bits long Ah (R/W) = The MCSPI word is 11 bits long Bh (R/W) = The MCSPI word is 12 bits long Ch (R/W) = The MCSPI word is 13 bits long Dh (R/W) = The MCSPI word is 14 bits long Eh (R/W) = The MCSPI word is 15 bits long Fh (R/W) = The MCSPI word is 16 bits long 10h (R/W) = The MCSPI word is 17 bits long 11h (R/W) = The MCSPI word is 18 bits long 12h (R/W) = The MCSPI word is 19 bits long 13h (R/W) = The MCSPI word is 20 bits long 14h (R/W) = The MCSPI word is 21 bits long 15h (R/W) = The MCSPI word is 22 bits long 16h (R/W) = The MCSPI word is 23 bits long 17h (R/W) = The MCSPI word is 24 bits long 18h (R/W) = The MCSPI word is 25 bits long 19h (R/W) = The MCSPI word is 26 bits long 1Ah (R/W) = The MCSPI word is 27 bits long 1Bh (R/W) = The MCSPI word is 28 bits long 1Ch (R/W) = The MCSPI word is 29 bits long 1Dh (R/W) = The MCSPI word is 30 bits long 1Eh (R/W) = The MCSPI word is 31 bits long 1Fh (R/W) = The MCSPI word is 32 bits long |
6 | EPOL | R/W | 0h | SPIEN polarity 0h (R/W) = SPIEN is held high during the ACTIVE state. 1h (R/W) = SPIEN is held low during the ACTIVE state. |
5-2 | CLKD | R/W | 0h | Frequency divider for SPICLK (only when the module is a Master MCSPI device). A programmable clock divider divides the MCSPI reference clock (SPICLKREF) with a 4-bit value, and results in a new clock SPICLK available to shift-in and shift-out data. By default the clock divider ratio has a power of 2 granularity when MCSPI_CHCONF_0/1/2/3[29] CLKG is cleared. Otherwise this field is the 4-LSB bit of a 12-bit register concatenated with clock divider extension MCSPI_CHCTRL_3[15-8] EXTCLK register. The value description below defines the clock ratio when MCSPI_CHCONF_3 [29] CLKG is set to 0. 0h (R/W) = 1 1h (R/W) = 2 2h (R/W) = 4 3h (R/W) = 8 4h (R/W) = 16 5h (R/W) = 32 6h (R/W) = 64 7h (R/W) = 128 8h (R/W) = 256 9h (R/W) = 512 Ah (R/W) = 1024 Bh (R/W) = 2048 Ch (R/W) = 4096 Dh (R/W) = 8192 Eh (R/W) = 16384 Fh (R/W) = 32768 |
1 | POL | R/W | 0h | SPICLK polarity (see Transfer Format) 0h (R/W) = SPICLK is held low during the INACTIVE state 1h (R/W) = SPICLK is held high during the INACTIVE state |
0 | PHA | R/W | 0h | SPICLK phase (see Transfer Format) 0h (R/W) = Data are latched on odd-numbered edges of SPICLK. 1h (R/W) = Data are latched on even-numbered edges of SPICLK. |
MCSPI_CHSTAT_3 is shown in Figure 12-376 and described in Table 12-710.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 016Ch |
MCSPI1_CFG | 0211 016Ch |
MCSPI2_CFG | 0212 016Ch |
MCSPI3_CFG | 0213 016Ch |
MCSPI4_CFG | 0214 016Ch |
MCU_MCSPI0_CFG | 4030 016Ch |
MCU_MCSPI1_CFG | 4031 016Ch |
MCU_MCSPI2_CFG | 4032 016Ch |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | |||||||
R-0h | |||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||
R-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
RESERVED | |||||||
R-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESERVED | RXFFF | RXFFE | TXFFF | TXFFE | EOT | TXS | RXS |
R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-7 | RESERVED | R | 0h | Read returns 0. |
6 | RXFFF | R | 0h | Channel i FIFO receive buffer full status 0h (R) = FIFO receive buffer is not full 1h (R) = FIFO receive buffer is full |
5 | RXFFE | R | 0h | Channel i FIFO receive buffer empty status 0h (R) = FIFO receive buffer is not empty 1h (R) = FIFO receive buffer is empty |
4 | TXFFF | R | 0h | Channel i FIFO transmit buffer full status 0h (R) = FIFO transmit buffer is not full 1h (R) = FIFO transmit buffer is full |
3 | TXFFE | R | 0h | Channel i FIFO transmit buffer empty status 0h (R) = FIFO transmit buffer is not empty 1h (R) = FIFO transmit buffer is empty |
2 | EOT | R | 0h | Channel i end of transfer status. The definitions of beginning and end of transfer vary with master versus slave and the transfer format (transmit/receive modes, turbo mode). See dedicated chapters for details. 0h (R) = This flag is automatically cleared when the shift register is loaded with the data from the transmitter register (beginning of transfer). 1h (R) = This flag is automatically set to one at the end of an MCSPI transfer. |
1 | TXS | R | 0h | Channel i transmitter register status 0h (R) = Register is full. 1h (R) = Register is empty. |
0 | RXS | R | 0h | Channel i receiver register status 0h (R) = Register is empty. 1h (R) = Register is full. |
MCSPI_CHCTRL_3 is shown in Figure 12-377 and described in Table 12-712.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0170h |
MCSPI1_CFG | 0211 0170h |
MCSPI2_CFG | 0212 0170h |
MCSPI3_CFG | 0213 0170h |
MCSPI4_CFG | 0214 0170h |
MCU_MCSPI0_CFG | 4030 0170h |
MCU_MCSPI1_CFG | 4031 0170h |
MCU_MCSPI2_CFG | 4032 0170h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
RESERVED | |||||||||||||||
R-0h | |||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
EXTCLK | RESERVED | EN | |||||||||||||
R/W-0h | R-0h | R/W-0h | |||||||||||||
LEGEND: R = Read Only; R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-16 | RESERVED | R | 0h | Read returns 0. |
15-8 | EXTCLK | R/W | 0h | Clock ratio extension: 0h (R/W) = Clock ratio is CLKD + 1. 1h (R/W) = Clock ratio is CLKD + 1 + 16. FFh (R/W) = Clock ratio is CLKD + 1 + 4080. |
7-1 | RESERVED | R | 0h | Read returns 0. |
0 | EN | R/W | 0h | Channel enable 0h (R/W) = Channel "i" is not active. 1h (R/W) = Channel "i" is active. |
MCSPI_TX_3 is shown in Figure 12-378 and described in Table 12-714.
Return to Summary Table.
This register contains a single MCSPI word for channel i to transmit on the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0174h |
MCSPI1_CFG | 0211 0174h |
MCSPI2_CFG | 0212 0174h |
MCSPI3_CFG | 0213 0174h |
MCSPI4_CFG | 0214 0174h |
MCU_MCSPI0_CFG | 4030 0174h |
MCU_MCSPI1_CFG | 4031 0174h |
MCU_MCSPI2_CFG | 4032 0174h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
TDATA | |||||||||||||||||||||||||||||||
R/W-0h | |||||||||||||||||||||||||||||||
LEGEND: R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | TDATA | R/W | 0h | Channel i data to transmit |
MCSPI_RX_3 is shown in Figure 12-379 and described in Table 12-716.
Return to Summary Table.
This register contains a single MCSPI word for channel i received through the serial link, whatever MCSPI word length is.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0178h |
MCSPI1_CFG | 0211 0178h |
MCSPI2_CFG | 0212 0178h |
MCSPI3_CFG | 0213 0178h |
MCSPI4_CFG | 0214 0178h |
MCU_MCSPI0_CFG | 4030 0178h |
MCU_MCSPI1_CFG | 4031 0178h |
MCU_MCSPI2_CFG | 4032 0178h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RDATA | |||||||||||||||||||||||||||||||
R-0h | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | RDATA | R | 0h | Channel i received data |
MCSPI_XFERLEVEL is shown in Figure 12-380 and described in Table 12-718.
Return to Summary Table.
This register provides transfer levels needed while using FIFO buffer during transfer.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 017Ch |
MCSPI1_CFG | 0211 017Ch |
MCSPI2_CFG | 0212 017Ch |
MCSPI3_CFG | 0213 017Ch |
MCSPI4_CFG | 0214 017Ch |
MCU_MCSPI0_CFG | 4030 017Ch |
MCU_MCSPI1_CFG | 4031 017Ch |
MCU_MCSPI2_CFG | 4032 017Ch |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
WCNT | AFL | AEL | |||||||||||||||||||||||||||||
R/W-0h | R/W-0h | R/W-0h | |||||||||||||||||||||||||||||
LEGEND: R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-16 | WCNT | R/W | 0h | SPI word counter. 0h (R/W) = Counter not used 1h (R/W) = One word FFFEh (R/W) = 65534 MCSPI word FFFFh (R/W) = 65535 MCSPI word |
15-8 | AFL | R/W | 0h | Buffer almost full 0h (R/W) = 1 byte 1h (R/W) = 2 bytes FEh (R/W) = 255bytes FFh (R/W) = 256bytes |
7-0 | AEL | R/W | 0h | Buffer almost empty. 0h (R/W) = 1 byte 1h (R/W) = 2 bytes FEh (R/W) = 255 bytes FFh (R/W) = 256bytes |
MCSPI_DAFTX is shown in Figure 12-381 and described in Table 12-720.
Return to Summary Table.
This register contains the MCSPI words to be transmitted on the MCSPI bus when FIFO is used and DMA address is aligned on 256 bit.
This register is an image of one of the MCSPI_TX registers corresponding to the channel which has its FIFO enabled.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 0180h |
MCSPI1_CFG | 0211 0180h |
MCSPI2_CFG | 0212 0180h |
MCSPI3_CFG | 0213 0180h |
MCSPI4_CFG | 0214 0180h |
MCU_MCSPI0_CFG | 4030 0180h |
MCU_MCSPI1_CFG | 4031 0180h |
MCU_MCSPI2_CFG | 4032 0180h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
DAFTDATA | |||||||||||||||||||||||||||||||
R/W-0h | |||||||||||||||||||||||||||||||
LEGEND: R/W = Read/Write; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | DAFTDATA | R/W | 0h | FIFO data to transmit with DMA 256 bit aligned address. This field is only used when MCSPI_MODULCTRL[8] FDAA is set to 1h and only one of the enabled channels has the MCSPI_CHCONF_0/1/2/3[27] FFEW bit set to 1h. If these conditions are not met any access to this field returns a null value. |
MCSPI_DAFRX is shown in Figure 12-382 and described in Table 12-722.
Return to Summary Table.
This register contains the MCSPI words received from the MCSPI bus when FIFO is used and DMA address is aligned on 256 bit.
This register is an image of one of the MCSPI_RX registers corresponding to the channel which has its FIFO enabled.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 0210 01A0h |
MCSPI1_CFG | 0211 01A0h |
MCSPI2_CFG | 0212 01A0h |
MCSPI3_CFG | 0213 01A0h |
MCSPI4_CFG | 0214 01A0h |
MCU_MCSPI0_CFG | 4030 01A0h |
MCU_MCSPI1_CFG | 4031 01A0h |
MCU_MCSPI2_CFG | 4032 01A0h |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
DAFRDATA | |||||||||||||||||||||||||||||||
R-0h | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | DAFRDATA | R | 0h | FIFO data received with DMA 256 bit aligned address. This field is only used when MCSPI_MODULCTRL[8] FDAA is set to 1h and only one of the enabled channels has the MCSPI_CHCONF_0/1/2/3[28] FFER bit set to 1h. If these conditions are not met any access to this field returns a null value. |