31.4.5.1 Transmit by DMA
Transmit by DMA is supported only when TXDMAE is set. A transmit DMA request is
asserted when both SPE and SPTEF are set. Then the on-chip DMA controller detects
this request and transfers data from memory into the SPI data register. After that, TX
DMA DONE is asserted to clear SPTEF automatically. This process repeats until all data
for transmission (the number is decided by the configuration register[s] of the DMA
controller) is sent.
When the FIFO feature is supported: In FIFO mode (FIFOMODE=1) and when a data
length of 8 bits is selected (SPIMODE=0), the DMA transfer for one transmit DMA
request can write more than 1 byte (up to 8 bytes) to the DL register because the TX
FIFO can store 8 bytes of transmit data. In FIFO mode (FIFOMODE=1) and when a data
length of 16 bits is selected (SPIMODE=1), the DMA transfer for one transmit DMA
request can write more than 1 word (up to 4 words) to the DH:DL registers because the
TX FIFO can store 4 words of transmit data. A larger number of bytes or words
transferred from memory to the SPI data register for each transmit DMA request results
in a lower total number of transmit DMA requests.
When FIFOMODE is 0: Cycle Steal (DMA_DCRn[CS] = 1) should be enabled when
using the DMA controller to transfer data from memory to the SPI data register. The
DMA performs a single data transfer per DMA request in cycle steal mode. Therefore, a
single byte/word is written to the SPI data register from memory and transmitted by the
SPI module for each DMA request, as long as the BCR value is greater than zero
(DMA_DSR_BCRn[BCR] > 0). Once the BCR has reached zero, software must
reconfigure the DMA controller if more data is to be transmitted. If a configuration error
occurs (DMA_DSR_BCRn[CE] = 1) when the BCR is equal to 0, software must:
• disable peripheral requests when the BCR is equal to 0,
• perform 16-bit transfers (SPIMODE = 1), or
• decrease the SPI baud rate.
Software can disable peripheral requests by setting DMA_DCRn[D_REQ] = 1 when
initializing the DMA controller, or by clearing DMA_DCRn[ERQ] once the BCR is
equal to zero. Also, to continue transmitting data software must re-enable peripheral
requests (DMA_DCRn[ERQ] = 1) after reconfiguring the DMA controller.
31.4.5.2 Receive by DMA
Receive by DMA is supported only when RXDMAE is set. A receive DMA request is
asserted when both SPE and SPRF are set. Then the on-chip DMA controller detects this
request and transfers data from the SPI data register into memory. After that, RX DMA
DONE is asserted to clear SPRF automatically. This process repeats until all data to be
Functional description
MKW01Z128 MCU Reference Manual, Rev. 3, 04/2016
602
Freescale Semiconductor, Inc.
Содержание MKW01Z128
Страница 7: ...MKW01xxRM Reference Manual Rev 3 04 2016 viii Freescale Semiconductor Inc...
Страница 11: ...MKW01xxRM Reference Manual Rev 3 04 2016 xii Freescale Semiconductor Inc...
Страница 31: ...MKW01Z128 Pins and Connections MKW01xxRM Reference Manual Rev 3 04 2016 2 8 Freescale Semiconductor Inc...
Страница 129: ...MKW01Z128 Transceiver MCU SPI Interface MKW01xxRM Reference Manual Rev 3 04 2016 8 6 Freescale Semiconductor Inc...
Страница 130: ...MKW01xxRM Reference Manual Rev 3 04 2016 Freescale Semiconductor Inc A 1 Appendix A MKW01Z128 MCU Reference Manual...
Страница 131: ...MKW01Z128 MCU Reference Manual MKW01xxRM Reference Manual Rev 3 04 2016 A 2 Freescale Semiconductor Inc...
Страница 133: ...MKW01Z128 MCU Reference Manual Rev 3 04 2016 2 Freescale Semiconductor Inc...
Страница 221: ...Private Peripheral Bus PPB memory map MKW01Z128 MCU Reference Manual Rev 3 04 2016 90 Freescale Semiconductor Inc...
Страница 233: ...Module clocks MKW01Z128 MCU Reference Manual Rev 3 04 2016 102 Freescale Semiconductor Inc...
Страница 255: ...Module operation in low power modes MKW01Z128 MCU Reference Manual Rev 3 04 2016 124 Freescale Semiconductor Inc...
Страница 279: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 148 Freescale Semiconductor Inc...
Страница 305: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 174 Freescale Semiconductor Inc...
Страница 325: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 194 Freescale Semiconductor Inc...
Страница 379: ...Application information MKW01Z128 MCU Reference Manual Rev 3 04 2016 248 Freescale Semiconductor Inc...
Страница 387: ...Memory map register descriptions MKW01Z128 MCU Reference Manual Rev 3 04 2016 256 Freescale Semiconductor Inc...
Страница 465: ...Functional Description MKW01Z128 MCU Reference Manual Rev 3 04 2016 334 Freescale Semiconductor Inc...
Страница 501: ...Initialization Application information MKW01Z128 MCU Reference Manual Rev 3 04 2016 370 Freescale Semiconductor Inc...
Страница 513: ...Interrupts MKW01Z128 MCU Reference Manual Rev 3 04 2016 382 Freescale Semiconductor Inc...
Страница 517: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 386 Freescale Semiconductor Inc...
Страница 611: ...Application information MKW01Z128 MCU Reference Manual Rev 3 04 2016 480 Freescale Semiconductor Inc...
Страница 633: ...CMP Trigger Mode MKW01Z128 MCU Reference Manual Rev 3 04 2016 502 Freescale Semiconductor Inc...
Страница 643: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 512 Freescale Semiconductor Inc...
Страница 671: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 540 Freescale Semiconductor Inc...
Страница 803: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 672 Freescale Semiconductor Inc...
Страница 843: ...Functional description MKW01Z128 MCU Reference Manual Rev 3 04 2016 712 Freescale Semiconductor Inc...
Страница 877: ...Initialization application information MKW01Z128 MCU Reference Manual Rev 3 04 2016 746 Freescale Semiconductor Inc...