SPRUIM2H May 2020 ā October 2023 AM2431 , AM2432 , AM2434 , AM6411 , AM6412 , AM6421 , AM6422 , AM6441 , AM6442
Table 12-369 lists the memory-mapped registers for the MCSPI. All register offset addresses not listed in Table 12-369 should be considered as reserved locations and the register contents should not be modified.
Instance | Base Address |
---|---|
MCSPI0_CFG | 2010 0000h |
MCSPI1_CFG | 2011 0000h |
MCSPI2_CFG | 2012 0000h |
MCSPI3_CFG | 2013 0000h |
MCSPI4_CFG | 2014 0000h |
MCU_MCSPI0_CFG | 04B0 0000h |
MCU_MCSPI1_CFG | 04B1 0000h |
Offset | Acronym | Register Name | MCSPI0_CFG Physical Address | MCSPI1_CFG Physical Address | MCSPI2_CFG Physical Address |
---|---|---|---|---|---|
0h | MCSPI_HL_REV | IP Revision register | 2010 0000h | 2011 0000h | 2012 0000h |
4h | MCSPI_HL_HWINFO | MCSPI hardware configuration register | 2010 0004h | 2011 0004h | 2012 0004h |
10h | MCSPI_HL_SYSCONFIG | Clock management configuration register | 2010 0010h | 2011 0010h | 2012 0010h |
100h | MCSPI_REVISION | Revision number | 2010 0100h | 2011 0100h | 2012 0100h |
110h | MCSPI_SYSCONFIG | Configuration register | 2010 0110h | 2011 0110h | 2012 0110h |
114h | MCSPI_SYSSTATUS | Status information register | 2010 0114h | 2011 0114h | 2012 0114h |
118h | MCSPI_IRQSTATUS | Interrupt status register | 2010 0118h | 2011 0118h | 2012 0118h |
11Ch | MCSPI_IRQENABLE | Interrupt enable register | 2010 011Ch | 2011 011Ch | 2012 011Ch |
120h | MCSPI_WAKEUPENABLE | Wake-up enable register | 2010 0120h | 2011 0120h | 2012 0120h |
124h | MCSPI_SYST | System interconnect check in system test mode | 2010 0124h | 2011 0124h | 2012 0124h |
128h | MCSPI_MODULCTRL | MCSPI configuration register | 2010 0128h | 2011 0128h | 2012 0128h |
12Ch | MCSPI_CHCONF_0 | Configuration register of channel 0 | 2010 012Ch | 2011 012Ch | 2012 012Ch |
130h | MCSPI_CHSTAT_0 | Status register of channel 0 | 2010 0130h | 2011 0130h | 2012 0130h |
134h | MCSPI_CHCTRL_0 | Enable register of channel 0 | 2010 0134h | 2011 0134h | 2012 0134h |
138h | MCSPI_TX_0 | TX register of channel 0 | 2010 0138h | 2011 0138h | 2012 0138h |
13Ch | MCSPI_RX_0 | RX register of channel 0 | 2010 013Ch | 2011 013Ch | 2012 013Ch |
140h | MCSPI_CHCONF_1 | Configuration register of channel 1 | 2010 0140h | 2011 0140h | 2012 0140h |
144h | MCSPI_CHSTAT_1 | Status register of channel 1 | 2010 0144h | 2011 0144h | 2012 0144h |
148h | MCSPI_CHCTRL_1 | Enable register of channel 1 | 2010 0148h | 2011 0148h | 2012 0148h |
14Ch | MCSPI_TX_1 | TX register of channel 1 | 2010 014Ch | 2011 014Ch | 2012 014Ch |
150h | MCSPI_RX_1 | RX register of channel 1 | 2010 0150h | 2011 0150h | 2012 0150h |
154h | MCSPI_CHCONF_2 | Configuration register of channel 2 | 2010 0154h | 2011 0154h | 2012 0154h |
158h | MCSPI_CHSTAT_2 | Status register of channel 2 | 2010 0158h | 2011 0158h | 2012 0158h |
15Ch | MCSPI_CHCTRL_2 | Enable register of channel 2 | 2010 015Ch | 2011 015Ch | 2012 015Ch |
160h | MCSPI_TX_2 | TX register of channel 2 | 2010 0160h | 2011 0160h | 2012 0160h |
164h | MCSPI_RX_2 | RX register of channel 2 | 2010 0164h | 2011 0164h | 2012 0164h |
168h | MCSPI_CHCONF_3 | Configuration register of channel 3 | 2010 0168h | 2011 0168h | 2012 0168h |
16Ch | MCSPI_CHSTAT_3 | Status register of channel 3 | 2010 016Ch | 2011 016Ch | 2012 016Ch |
170h | MCSPI_CHCTRL_3 | Enable register of channel 3 | 2010 0170h | 2011 0170h | 2012 0170h |
174h | MCSPI_TX_3 | TX register of channel 3 | 2010 0174h | 2011 0174h | 2012 0174h |
178h | MCSPI_RX_3 | RX register of channel 3 | 2010 0178h | 2011 0178h | 2012 0178h |
17Ch | MCSPI_XFERLEVEL | Transfer levels when FIFO is used | 2010 017Ch | 2011 017Ch | 2012 017Ch |
180h | MCSPI_DAFTX | MCSPI words transmitted when FIFO is used | 2010 0180h | 2011 0180h | 2012 0180h |
1A0h | MCSPI_DAFRX | MCSPI words received when FIFO is used | 2010 01A0h | 2011 01A0h | 2012 01A0h |
Offset | Acronym | Register Name | MCSPI3_CFG Physical Address | MCSPI4_CFG Physical Address |
---|---|---|---|---|
0h | MCSPI_HL_REV | IP Revision register | 2013 0000h | 2014 0000h |
4h | MCSPI_HL_HWINFO | MCSPI hardware configuration register | 2013 0004h | 2014 0004h |
10h | MCSPI_HL_SYSCONFIG | Clock management configuration register | 2013 0010h | 2014 0010h |
100h | MCSPI_REVISION | Revision number | 2013 0100h | 2014 0100h |
110h | MCSPI_SYSCONFIG | Configuration register | 2013 0110h | 2014 0110h |
114h | MCSPI_SYSSTATUS | Status information register | 2013 0114h | 2014 0114h |
118h | MCSPI_IRQSTATUS | Interrupt status register | 2013 0118h | 2014 0118h |
11Ch | MCSPI_IRQENABLE | Interrupt enable register | 2013 011Ch | 2014 011Ch |
120h | MCSPI_WAKEUPENABLE | Wake-up enable register | 2013 0120h | 2014 0120h |
124h | MCSPI_SYST | System interconnect check in system test mode | 2013 0124h | 2014 0124h |
128h | MCSPI_MODULCTRL | MCSPI configuration register | 2013 0128h | 2014 0128h |
12Ch | MCSPI_CHCONF_0 | Configuration register of channel 0 | 2013 012Ch | 2014 012Ch |
130h | MCSPI_CHSTAT_0 | Status register of channel 0 | 2013 0130h | 2014 0130h |
134h | MCSPI_CHCTRL_0 | Enable register of channel 0 | 2013 0134h | 2014 0134h |
138h | MCSPI_TX_0 | TX register of channel 0 | 2013 0138h | 2014 0138h |
13Ch | MCSPI_RX_0 | RX register of channel 0 | 2013 013Ch | 2014 013Ch |
140h | MCSPI_CHCONF_1 | Configuration register of channel 1 | 2013 0140h | 2014 0140h |
144h | MCSPI_CHSTAT_1 | Status register of channel 1 | 2013 0144h | 2014 0144h |
148h | MCSPI_CHCTRL_1 | Enable register of channel 1 | 2013 0148h | 2014 0148h |
14Ch | MCSPI_TX_1 | TX register of channel 1 | 2013 014Ch | 2014 014Ch |
150h | MCSPI_RX_1 | RX register of channel 1 | 2013 0150h | 2014 0150h |
154h | MCSPI_CHCONF_2 | Configuration register of channel 2 | 2013 0154h | 2014 0154h |
158h | MCSPI_CHSTAT_2 | Status register of channel 2 | 2013 0158h | 2014 0158h |
15Ch | MCSPI_CHCTRL_2 | Enable register of channel 2 | 2013 015Ch | 2014 015Ch |
160h | MCSPI_TX_2 | TX register of channel 2 | 2013 0160h | 2014 0160h |
164h | MCSPI_RX_2 | RX register of channel 2 | 2013 0164h | 2014 0164h |
168h | MCSPI_CHCONF_3 | Configuration register of channel 3 | 2013 0168h | 2014 0168h |
16Ch | MCSPI_CHSTAT_3 | Status register of channel 3 | 2013 016Ch | 2014 016Ch |
170h | MCSPI_CHCTRL_3 | Enable register of channel 3 | 2013 0170h | 2014 0170h |
174h | MCSPI_TX_3 | TX register of channel 3 | 2013 0174h | 2014 0174h |
178h | MCSPI_RX_3 | RX register of channel 3 | 2013 0178h | 2014 0178h |
17Ch | MCSPI_XFERLEVEL | Transfer levels when FIFO is used | 2013 017Ch | 2014 017Ch |
180h | MCSPI_DAFTX | MCSPI words transmitted when FIFO is used | 2013 0180h | 2014 0180h |
1A0h | MCSPI_DAFRX | MCSPI words received when FIFO is used | 2013 01A0h | 2014 01A0h |
Offset | Acronym | Register Name | MCU_MCSPI0_CFG Physical Address | MCU_MCSPI1_CFG Physical Address |
---|---|---|---|---|
0h | MCSPI_HL_REV | IP Revision register | 04B0 0000h | 04B1 0000h |
4h | MCSPI_HL_HWINFO | MCSPI hardware configuration register | 04B0 0004h | 04B1 0004h |
10h | MCSPI_HL_SYSCONFIG | Clock management configuration register | 04B0 0010h | 04B1 0010h |
100h | MCSPI_REVISION | Revision number | 04B0 0100h | 04B1 0100h |
110h | MCSPI_SYSCONFIG | Configuration register | 04B0 0110h | 04B1 0110h |
114h | MCSPI_SYSSTATUS | Status information register | 04B0 0114h | 04B1 0114h |
118h | MCSPI_IRQSTATUS | Interrupt status register | 04B0 0118h | 04B1 0118h |
11Ch | MCSPI_IRQENABLE | Interrupt enable register | 04B0 011Ch | 04B1 011Ch |
120h | MCSPI_WAKEUPENABLE | Wake-up enable register | 04B0 0120h | 04B1 0120h |
124h | MCSPI_SYST | System interconnect check in system test mode | 04B0 0124h | 04B1 0124h |
128h | MCSPI_MODULCTRL | MCSPI configuration register | 04B0 0128h | 04B1 0128h |
12Ch | MCSPI_CHCONF_0 | Configuration register of channel 0 | 04B0 012Ch | 04B1 012Ch |
130h | MCSPI_CHSTAT_0 | Status register of channel 0 | 04B0 0130h | 04B1 0130h |
134h | MCSPI_CHCTRL_0 | Enable register of channel 0 | 04B0 0134h | 04B1 0134h |
138h | MCSPI_TX_0 | TX register of channel 0 | 04B0 0138h | 04B1 0138h |
13Ch | MCSPI_RX_0 | RX register of channel 0 | 04B0 013Ch | 04B1 013Ch |
140h | MCSPI_CHCONF_1 | Configuration register of channel 1 | 04B0 0140h | 04B1 0140h |
144h | MCSPI_CHSTAT_1 | Status register of channel 1 | 04B0 0144h | 04B1 0144h |
148h | MCSPI_CHCTRL_1 | Enable register of channel 1 | 04B0 0148h | 04B1 0148h |
14Ch | MCSPI_TX_1 | TX register of channel 1 | 04B0 014Ch | 04B1 014Ch |
150h | MCSPI_RX_1 | RX register of channel 1 | 04B0 0150h | 04B1 0150h |
154h | MCSPI_CHCONF_2 | Configuration register of channel 2 | 04B0 0154h | 04B1 0154h |
158h | MCSPI_CHSTAT_2 | Status register of channel 2 | 04B0 0158h | 04B1 0158h |
15Ch | MCSPI_CHCTRL_2 | Enable register of channel 2 | 04B0 015Ch | 04B1 015Ch |
160h | MCSPI_TX_2 | TX register of channel 2 | 04B0 0160h | 04B1 0160h |
164h | MCSPI_RX_2 | RX register of channel 2 | 04B0 0164h | 04B1 0164h |
168h | MCSPI_CHCONF_3 | Configuration register of channel 3 | 04B0 0168h | 04B1 0168h |
16Ch | MCSPI_CHSTAT_3 | Status register of channel 3 | 04B0 016Ch | 04B1 016Ch |
170h | MCSPI_CHCTRL_3 | Enable register of channel 3 | 04B0 0170h | 04B1 0170h |
174h | MCSPI_TX_3 | TX register of channel 3 | 04B0 0174h | 04B1 0174h |
178h | MCSPI_RX_3 | RX register of channel 3 | 04B0 0178h | 04B1 0178h |
17Ch | MCSPI_XFERLEVEL | Transfer levels when FIFO is used | 04B0 017Ch | 04B1 017Ch |
180h | MCSPI_DAFTX | MCSPI words transmitted when FIFO is used | 04B0 0180h | 04B1 0180h |
1A0h | MCSPI_DAFRX | MCSPI words received when FIFO is used | 04B0 01A0h | 04B1 01A0h |
MCSPI_HL_REV is shown in Figure 12-202 and described in Table 12-373.
Return to Summary Table.
IP Revision Identifier (X.Y.R)
Used by software to track features, bugs, and compatibility
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0000h |
MCSPI1_CFG | 2011 0000h |
MCSPI2_CFG | 2012 0000h |
MCSPI3_CFG | 2013 0000h |
MCSPI4_CFG | 2014 0000h |
MCU_MCSPI0_CFG | 04B0 0000h |
MCU_MCSPI1_CFG | 04B1 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-40303A0Bh | |||||||||||||||||||||||||||||||
LEGEND: R = Read Only; -n = value after reset |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-0 | REVISION | R | 40303A0Bh | IP Revision |
MCSPI_HL_HWINFO is shown in Figure 12-203 and described in Table 12-375.
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 | 2010 0004h |
MCSPI1_CFG | 2011 0004h |
MCSPI2_CFG | 2012 0004h |
MCSPI3_CFG | 2013 0004h |
MCSPI4_CFG | 2014 0004h |
MCU_MCSPI0_CFG | 04B0 0004h |
MCU_MCSPI1_CFG | 04B1 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-204 and described in Table 12-377.
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 | 2010 0010h |
MCSPI1_CFG | 2011 0010h |
MCSPI2_CFG | 2012 0010h |
MCSPI3_CFG | 2013 0010h |
MCSPI4_CFG | 2014 0010h |
MCU_MCSPI0_CFG | 04B0 0010h |
MCU_MCSPI1_CFG | 04B1 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-205 and described in Table 12-379.
Return to Summary Table.
This register contains the revision number.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0100h |
MCSPI1_CFG | 2011 0100h |
MCSPI2_CFG | 2012 0100h |
MCSPI3_CFG | 2013 0100h |
MCSPI4_CFG | 2014 0100h |
MCU_MCSPI0_CFG | 04B0 0100h |
MCU_MCSPI1_CFG | 04B1 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-206 and described in Table 12-381.
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 | 2010 0110h |
MCSPI1_CFG | 2011 0110h |
MCSPI2_CFG | 2012 0110h |
MCSPI3_CFG | 2013 0110h |
MCSPI4_CFG | 2014 0110h |
MCU_MCSPI0_CFG | 04B0 0110h |
MCU_MCSPI1_CFG | 04B1 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-207 and described in Table 12-383.
Return to Summary Table.
This register provides status information about the module excluding the interrupt status information.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0114h |
MCSPI1_CFG | 2011 0114h |
MCSPI2_CFG | 2012 0114h |
MCSPI3_CFG | 2013 0114h |
MCSPI4_CFG | 2014 0114h |
MCU_MCSPI0_CFG | 04B0 0114h |
MCU_MCSPI1_CFG | 04B1 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-208 and described in Table 12-385.
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 | 2010 0118h |
MCSPI1_CFG | 2011 0118h |
MCSPI2_CFG | 2012 0118h |
MCSPI3_CFG | 2013 0118h |
MCSPI4_CFG | 2014 0118h |
MCU_MCSPI0_CFG | 04B0 0118h |
MCU_MCSPI1_CFG | 04B1 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 peripheral 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 (peripheral 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-209 and described in Table 12-387.
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 | 2010 011Ch |
MCSPI1_CFG | 2011 011Ch |
MCSPI2_CFG | 2012 011Ch |
MCSPI3_CFG | 2013 011Ch |
MCSPI4_CFG | 2014 011Ch |
MCU_MCSPI0_CFG | 04B0 011Ch |
MCU_MCSPI1_CFG | 04B1 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 peripheral 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-210 and described in Table 12-389.
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 | 2010 0120h |
MCSPI1_CFG | 2011 0120h |
MCSPI2_CFG | 2012 0120h |
MCSPI3_CFG | 2013 0120h |
MCSPI4_CFG | 2014 0120h |
MCU_MCSPI0_CFG | 04B0 0120h |
MCU_MCSPI1_CFG | 04B1 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 peripheral 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-211 and described in Table 12-391.
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 | 2010 0124h |
MCSPI1_CFG | 2011 0124h |
MCSPI2_CFG | 2012 0124h |
MCSPI3_CFG | 2013 0124h |
MCSPI4_CFG | 2014 0124h |
MCU_MCSPI0_CFG | 04B0 0124h |
MCU_MCSPI1_CFG | 04B1 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 controller mode) 1h (R/W) = Input (as in peripheral 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-212 and described in Table 12-393.
Return to Summary Table.
This register is dedicated to the configuration of the serial peripheral interface.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0128h |
MCSPI1_CFG | 2011 0128h |
MCSPI2_CFG | 2012 0128h |
MCSPI3_CFG | 2013 0128h |
MCSPI4_CFG | 2014 0128h |
MCU_MCSPI0_CFG | 04B0 0128h |
MCU_MCSPI1_CFG | 04B1 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 | Controller/peripheral 0h (R/W) = Controller - The module generates the SPICLK and SPIEN[3:0]. 1h (R/W) = Peripheral - 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 (controller mode only) 0h (R/W) = More than one channel will be used in controller mode. 1h (R/W) = Only one channel will be used in controller mode. This bit must be set in Force SPIEN[i] mode. |
MCSPI_CHCONF_0 is shown in Figure 12-213 and described in Table 12-395.
Return to Summary Table.
This register is dedicated to the configuration of the channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 012Ch |
MCSPI1_CFG | 2011 012Ch |
MCSPI2_CFG | 2012 012Ch |
MCSPI3_CFG | 2013 012Ch |
MCSPI4_CFG | 2014 012Ch |
MCU_MCSPI0_CFG | 04B0 012Ch |
MCU_MCSPI1_CFG | 04B1 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 peripheral mode only: MCSPI
peripheral 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 controller 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 Controller 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-214 and described in Table 12-397.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0130h |
MCSPI1_CFG | 2011 0130h |
MCSPI2_CFG | 2012 0130h |
MCSPI3_CFG | 2013 0130h |
MCSPI4_CFG | 2014 0130h |
MCU_MCSPI0_CFG | 04B0 0130h |
MCU_MCSPI1_CFG | 04B1 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 controller versus peripheral 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-215 and described in Table 12-399.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0134h |
MCSPI1_CFG | 2011 0134h |
MCSPI2_CFG | 2012 0134h |
MCSPI3_CFG | 2013 0134h |
MCSPI4_CFG | 2014 0134h |
MCU_MCSPI0_CFG | 04B0 0134h |
MCU_MCSPI1_CFG | 04B1 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-216 and described in Table 12-401.
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 | 2010 0138h |
MCSPI1_CFG | 2011 0138h |
MCSPI2_CFG | 2012 0138h |
MCSPI3_CFG | 2013 0138h |
MCSPI4_CFG | 2014 0138h |
MCU_MCSPI0_CFG | 04B0 0138h |
MCU_MCSPI1_CFG | 04B1 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-217 and described in Table 12-403.
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 | 2010 013Ch |
MCSPI1_CFG | 2011 013Ch |
MCSPI2_CFG | 2012 013Ch |
MCSPI3_CFG | 2013 013Ch |
MCSPI4_CFG | 2014 013Ch |
MCU_MCSPI0_CFG | 04B0 013Ch |
MCU_MCSPI1_CFG | 04B1 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-218 and described in Table 12-405.
Return to Summary Table.
This register is dedicated to the configuration of the channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0140h |
MCSPI1_CFG | 2011 0140h |
MCSPI2_CFG | 2012 0140h |
MCSPI3_CFG | 2013 0140h |
MCSPI4_CFG | 2014 0140h |
MCU_MCSPI0_CFG | 04B0 0140h |
MCU_MCSPI1_CFG | 04B1 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 peripheral mode only: MCSPI
peripheral 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 controller 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 Controller 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-219 and described in Table 12-407.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0144h |
MCSPI1_CFG | 2011 0144h |
MCSPI2_CFG | 2012 0144h |
MCSPI3_CFG | 2013 0144h |
MCSPI4_CFG | 2014 0144h |
MCU_MCSPI0_CFG | 04B0 0144h |
MCU_MCSPI1_CFG | 04B1 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 controller versus peripheral 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-220 and described in Table 12-409.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0148h |
MCSPI1_CFG | 2011 0148h |
MCSPI2_CFG | 2012 0148h |
MCSPI3_CFG | 2013 0148h |
MCSPI4_CFG | 2014 0148h |
MCU_MCSPI0_CFG | 04B0 0148h |
MCU_MCSPI1_CFG | 04B1 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-221 and described in Table 12-411.
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 | 2010 014Ch |
MCSPI1_CFG | 2011 014Ch |
MCSPI2_CFG | 2012 014Ch |
MCSPI3_CFG | 2013 014Ch |
MCSPI4_CFG | 2014 014Ch |
MCU_MCSPI0_CFG | 04B0 014Ch |
MCU_MCSPI1_CFG | 04B1 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-222 and described in Table 12-413.
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 | 2010 0150h |
MCSPI1_CFG | 2011 0150h |
MCSPI2_CFG | 2012 0150h |
MCSPI3_CFG | 2013 0150h |
MCSPI4_CFG | 2014 0150h |
MCU_MCSPI0_CFG | 04B0 0150h |
MCU_MCSPI1_CFG | 04B1 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-223 and described in Table 12-415.
Return to Summary Table.
This register is dedicated to the configuration of the channel i
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0154h |
MCSPI1_CFG | 2011 0154h |
MCSPI2_CFG | 2012 0154h |
MCSPI3_CFG | 2013 0154h |
MCSPI4_CFG | 2014 0154h |
MCU_MCSPI0_CFG | 04B0 0154h |
MCU_MCSPI1_CFG | 04B1 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 peripheral mode only: MCSPI
peripheral 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 controller 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 Controller 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-224 and described in Table 12-417.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0158h |
MCSPI1_CFG | 2011 0158h |
MCSPI2_CFG | 2012 0158h |
MCSPI3_CFG | 2013 0158h |
MCSPI4_CFG | 2014 0158h |
MCU_MCSPI0_CFG | 04B0 0158h |
MCU_MCSPI1_CFG | 04B1 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 controller versus peripheral 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-225 and described in Table 12-419.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 015Ch |
MCSPI1_CFG | 2011 015Ch |
MCSPI2_CFG | 2012 015Ch |
MCSPI3_CFG | 2013 015Ch |
MCSPI4_CFG | 2014 015Ch |
MCU_MCSPI0_CFG | 04B0 015Ch |
MCU_MCSPI1_CFG | 04B1 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-226 and described in Table 12-421.
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 | 2010 0160h |
MCSPI1_CFG | 2011 0160h |
MCSPI2_CFG | 2012 0160h |
MCSPI3_CFG | 2013 0160h |
MCSPI4_CFG | 2014 0160h |
MCU_MCSPI0_CFG | 04B0 0160h |
MCU_MCSPI1_CFG | 04B1 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-227 and described in Table 12-423.
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 | 2010 0164h |
MCSPI1_CFG | 2011 0164h |
MCSPI2_CFG | 2012 0164h |
MCSPI3_CFG | 2013 0164h |
MCSPI4_CFG | 2014 0164h |
MCU_MCSPI0_CFG | 04B0 0164h |
MCU_MCSPI1_CFG | 04B1 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-228 and described in Table 12-425.
Return to Summary Table.
This register is dedicated to the configuration of the channel i
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0168h |
MCSPI1_CFG | 2011 0168h |
MCSPI2_CFG | 2012 0168h |
MCSPI3_CFG | 2013 0168h |
MCSPI4_CFG | 2014 0168h |
MCU_MCSPI0_CFG | 04B0 0168h |
MCU_MCSPI1_CFG | 04B1 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 peripheral mode only: MCSPI
peripheral 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 controller 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 Controller 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-229 and described in Table 12-427.
Return to Summary Table.
This register provides status information about transmitter and receiver registers of channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 016Ch |
MCSPI1_CFG | 2011 016Ch |
MCSPI2_CFG | 2012 016Ch |
MCSPI3_CFG | 2013 016Ch |
MCSPI4_CFG | 2014 016Ch |
MCU_MCSPI0_CFG | 04B0 016Ch |
MCU_MCSPI1_CFG | 04B1 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 controller versus peripheral 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-230 and described in Table 12-429.
Return to Summary Table.
This register is dedicated to enable channel i.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 0170h |
MCSPI1_CFG | 2011 0170h |
MCSPI2_CFG | 2012 0170h |
MCSPI3_CFG | 2013 0170h |
MCSPI4_CFG | 2014 0170h |
MCU_MCSPI0_CFG | 04B0 0170h |
MCU_MCSPI1_CFG | 04B1 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-231 and described in Table 12-431.
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 | 2010 0174h |
MCSPI1_CFG | 2011 0174h |
MCSPI2_CFG | 2012 0174h |
MCSPI3_CFG | 2013 0174h |
MCSPI4_CFG | 2014 0174h |
MCU_MCSPI0_CFG | 04B0 0174h |
MCU_MCSPI1_CFG | 04B1 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-232 and described in Table 12-433.
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 | 2010 0178h |
MCSPI1_CFG | 2011 0178h |
MCSPI2_CFG | 2012 0178h |
MCSPI3_CFG | 2013 0178h |
MCSPI4_CFG | 2014 0178h |
MCU_MCSPI0_CFG | 04B0 0178h |
MCU_MCSPI1_CFG | 04B1 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-233 and described in Table 12-435.
Return to Summary Table.
This register provides transfer levels needed while using FIFO buffer during transfer.
Instance | Physical Address |
---|---|
MCSPI0_CFG | 2010 017Ch |
MCSPI1_CFG | 2011 017Ch |
MCSPI2_CFG | 2012 017Ch |
MCSPI3_CFG | 2013 017Ch |
MCSPI4_CFG | 2014 017Ch |
MCU_MCSPI0_CFG | 04B0 017Ch |
MCU_MCSPI1_CFG | 04B1 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-234 and described in Table 12-437.
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 | 2010 0180h |
MCSPI1_CFG | 2011 0180h |
MCSPI2_CFG | 2012 0180h |
MCSPI3_CFG | 2013 0180h |
MCSPI4_CFG | 2014 0180h |
MCU_MCSPI0_CFG | 04B0 0180h |
MCU_MCSPI1_CFG | 04B1 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-235 and described in Table 12-439.
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 | 2010 01A0h |
MCSPI1_CFG | 2011 01A0h |
MCSPI2_CFG | 2012 01A0h |
MCSPI3_CFG | 2013 01A0h |
MCSPI4_CFG | 2014 01A0h |
MCU_MCSPI0_CFG | 04B0 01A0h |
MCU_MCSPI1_CFG | 04B1 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. |