dma_engine.asm

来自「blackfin开发板 BF533-sdram_memdma开发代码 包括sdr」· 汇编 代码 · 共 42 行

ASM
42
字号
#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 + =
减小字号Ctrl + -
显示快捷键?