📄 dma_engine.asm
字号:
#include "defBF533.h"
#define SRCMEM1DCFG 0x6809
#define DSTMEM1DCFG 0x680B
.section L1_data_a;
.align 4;
.extern MemDMAQueue;
.section L1_code;
.align 4;
.global activate_dma_engine;
activate_dma_engine:
p0.h = HI(MDMA_S0_NEXT_DESC_PTR);
p0.l = LO(MDMA_S0_NEXT_DESC_PTR);
r0.l = MemDMAQueue; //Address of the Source Descriptor
r0.h = MemDMAQueue;
[p0] = r0;
ssync;
p0.l = LO(MDMA_D0_NEXT_DESC_PTR);
r0 +=16; //Address of the Destination Descriptor
[p0] = r0;
ssync;
//Enable MemDMA Source
p0.l = LO(MDMA_S0_CONFIG);
r0.l = SRCMEM1DCFG;
w[p0] = r0.l;
ssync;
//Enable MemDMA Destination
p0.l = LO(MDMA_D0_CONFIG);
r0.l = DSTMEM1DCFG;
w[p0] = r0.l;
ssync;
rts;
activate_dma_engine.end:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -