Texas Instruments Development Kit for TM4C129x,Tiva™ ARM® Cortex™ -M4 Microcontroller DK-TM4C129X DK-TM4C129X 데이터 시트

제품 코드
DK-TM4C129X
다운로드
페이지 2182
If the trigger peripheral generates another uDMA request while the prior one is being serviced and
that particular channel is the highest priority asserted channel, the second request will be processed
as soon as the handling of the first is complete. If two additional trigger peripheral uDMA requests
are generated prior to the completion of the first, the third request is lost.
9.2.9
Software Request
A transfer is initiated by software by first configuring and enabling the transfer, and then issuing a
software request using the DMA Channel Software Request (DMASWREQ) register. For
software-based transfers, the Auto transfer mode should be used.
It is possible to initiate a transfer on any available software channel using the DMASWREQ register.
If a request is initiated by software using a peripheral μDMA channel, then the completion interrupt
occurs on the interrupt vector for the peripheral instead of the software interrupt vector. Any peripheral
channel may be used for software requests as long as the corresponding peripheral is not using
μDMA for data transfer.
Note:
Channels designated in the table as only "Software" are dedicated software channels. When
only one software request is required in an application, dedicated software channels can
be used. If multiple software requests in code are required, then peripheral channel software
requests should be used for proper µDMA completion acknowledgement.
9.2.10
Interrupts and Errors
Depending on the peripheral, the μDMA can indicate transfer completion at the end of an entire
transfer or when a FIFO or buffer reaches a certain level (see Table 9-2 on page 711 and the individual
peripheral chapters). When a μDMA transfer is complete, a
dma_done
signal is sent to the peripheral
that initiated the μDMA event. Interrupts can be enabled within the peripheral to trigger on μDMA
transfer completion. Please refer to the individual peripheral chapters for more information on
peripheral μDMA interrupts. If the transfer uses the software μDMA channel, then the completion
interrupt occurs on the dedicated software μDMA interrupt vector (see Table 9-6 on page 723).
If the μDMA controller encounters a bus or memory protection error as it attempts to perform a data
transfer, it disables the μDMA channel that caused the error and generates an interrupt on the μDMA
error interrupt vector. The processor can read the DMA Bus Error Clear (DMAERRCLR) register
to determine if an error is pending. The
ERRCLR
bit is set if an error occurred. The error can be
cleared by writing a 1 to the
ERRCLR
bit.
Table 9-6 shows the dedicated interrupt assignments for the μDMA controller.
Table 9-6. μDMA Interrupt Assignments
Assignment
Interrupt
μDMA Software Channel Transfer
44
μDMA Error
45
9.3
Initialization and Configuration
9.3.1
Module Initialization
Before the μDMA controller can be used, it must be enabled in the System Control block and in the
peripheral. The location of the channel control structure must also be programmed.
The following steps should be performed one time during system initialization:
1.
Enable the μDMA clock using the RCGCDMA register (see page 401).
723
December 13, 2013
Texas Instruments-Advance Information
Tiva
TM4C129XNCZAD Microcontroller