ADSP2116中DMA的应用
A
RX2A,TX2A
串口2A
5
II2B,IM2B,C2B,CP2B,GP2B
RX2B,TX2B
串口2B
6
SPCTL3
II3A,IM3A,C3A,CP3A,GP3A
RX3A,TX3A
串口3A
7
II3B,IM3B,C3B,CP3B,GP3B
RX3B,TX3B
串口3B
8
LCTLSPICTL
IILB1,IMLB1,CLB1,CPLB1,GPLB1 IISTX,IMSRX,CSRX,GPSRX
LUBF0 SPIRX
Link0口SPI发送口
9
IILB1,IMLB1,CLB1,CPLB1,GPLB1 IISTX,IMSTX,CSTX,GPSTX
LUBF1 SPITX
Link1口SPI发送口
10
DMAC10
IIEP0,IMEP0,CEP0,CPEP0,GPEP0,EIEP0,EMEP0,ECEP0
EPB0
外部接口0
11
DMAC11
IIEP1,IMEP1,CEP1,CPEP1,GPEP1,EIEP1,EMEP1,ECEP1
EPB1
外部接口1
12
DMAC12
IIEP2,IMEP2,CEP2,CPEP2,GPEP2,EIEP2,EMEP2,ECEP2
EPB2
外部接口2
13
DMAC13
GPEP3,EIEP3,CEP3,CPEP3,GPEP3,EIEP3,EMEP3,ECEP3
EPB3
外部接口3
本文链接地址:http://www.oyaya.net/fanwen/view/174745.html
2.3 ADSP2116x中DMA一般传输过程的设置
DMA一般传输过程的设置步骤如下:
(1)设置对应通道的参数寄存器?
(2)设置对应通道的DMA控制寄存器,并将其中的DMA使能位设为有效?
(3)开始DMA数据传输?
(4)DMA传输结束后,产生对应的中断,并通过程序对中断进行处理。
2.4 ADSP2116x中的链式DMA
为了减少由DMA引起的中断,ADSP2116x中的DMA控制器提供了链式DMA功能。所谓链式DMA,是指在当前的DMA结束时,I/O处理器能够自动加载DMA参数并开始下一个DMA传输。利用这种特性,程序能够设置多个具有不同属性的DMA传输。在链式DMA过程中,通常先把每次DMA传输的有关参数写成一个传输控制块(TCB),并把它们存储在片内。传输过程中,在当前的DMA结束时,I/O处理器将对链式指针寄存器(CPx)进行控制以使其指向存储在片内的下一个TCB。
表2 TCB中各相关参数寄存器的排列顺序
CPx在链式DMA中具有非常重要的作用,它是一个19位的寄存器,其中低18位是偏移地址,在ADSP2116x中,这组偏移地址加上0x00040000后才是片内存储器中的实际地址,其中最高一位为中断控制位。该位在被设置的情况下,I/O处理器将在链式DMA结束时产生一个中断,实际上CPx指向的是TCB的最大地址,在TCB中,各有关DMA参数寄存器的排列顺序如表2所
《ADSP2116中DMA的应用(第2页)》