我遇到的问题是这样的:
数据源是片外ram,共2574个字的数据,片外ram每一个存储单位能存储一个字(16bit)。
我要用DMA把片外ram的数据传输到片内,28335的片内ram存储单位也是一个字(16bit)的。请问我的DMA各项参数应该怎么设置??
我尤其没看懂WRAP寄存器怎么设置。
我的中断源来自外部的FPGA发出的dmaflag(存储完一线的数据后就会发出)----
以下是我目前的设置,机器总是抛锚。
DMACH1AddrConfig(ScanAD_Buf+4,(volatile Uint16*)ScanADV[ScanState.scancolor]);
DMACH1BurstConfig(15,1,1);
DMACH1TransferConfig(StFrame.Fm_DataLen-1,1,1);
DMACH1WrapConfig(100,100,100,100);
DMACH1ModeConfig(0,PERINT_ENABLE,ONESHOT_ENABLE,CONT_ENABLE,SYNC_DISABLE,SYNC_SRC,
OVRFLOW_DISABLE,SIXTEEN_BIT,CHINT_END,CHINT_ENABLE);
EALLOW;
DmaRegs.CH1.CONTROL.bit.PERINTFRC=1;
EDIS;
StartDMACH1();
请指教--- |