关于ADI DMA操作的学习1-关于标准DMA操作
ADI 的DSP 操作有几种模式,这是模式1,标准操作,将数据从内存一搬到另外一个地方;
#include<def21489.h>
#include<cdef21489.h>
#define Val 20
void initPLL_SDRAM(void);
int Internal_buf[Val] = { 0 };
#pragma section ("seg_sdram1")
int External_buf[Val] = { 0 };
void main(void)
{
int i;
for (i = 0; i < Val; i++)
{
Internal_buf[i] = i + 1;
}
initPLL_SDRAM();
*pIIEP0 = (int)Internal_buf; //起始地址,要拷贝的地址
*pIMEP0 = 1;
*pICEP0 = Val; //要拷贝的数量
*pCPEP0 = 0;
*pEIEP0 = (int)External_buf; //目的地址
*pEMEP0 = 1;
*pDMAC0 = DEN | TRAN; // Enable DMA
while (1)
{
asm("nop;");
}
}