📄 main.c
字号:
#include<csl.h>
#include<csl_edma.h>
unsigned int i;
unsigned int TEST_RD_DATA_ADDR[32]=
{
0x12345678,0x87654321,0x12345678,0x87654321,
0x00000000,0x00000000,0x00000000,0x00000000,
0x12345678,0x87654321,0x12345678,0x87654321,
0x00000000,0x00000000,0x00000000,0x00000000,
0x12345678,0x87654321,0x12345678,0x87654321,
0x00000000,0x00000000,0x00000000,0x00000000,
0x12345678,0x87654321,0x12345678,0x87654321,
0x00000000,0x00000000,0x00000000,0x00000000
};
unsigned int TEST_WR_DATA_ADDR[32]=
{
0x00000000,0x00000000,0x00000000,0x00000000,
0x00000000,0x00000000,0x00000000,0x00000000,
0x00000000,0x00000000,0x00000000,0x00000000,
0x00000000,0x00000000,0x00000000,0x00000000,
0x00000000,0x00000000,0x00000000,0x00000000,
0x00000000,0x00000000,0x00000000,0x00000000,
0x00000000,0x00000000,0x00000000,0x00000000,
0x00000000,0x00000000,0x00000000,0x00000000,
};
void Delay(unsigned int uw_DelayCnt)
{
int i;
for (i = 0; i < 6 * uw_DelayCnt; i++)
{
asm(" nop 8");
}
}
EDMA_Config edmaCfg_0 = {
//0x61200001, /* Option */
0x20000000, /* Option */
(Uint32)TEST_RD_DATA_ADDR, /* Source Address - Numeric */
0x00000020, /* Transfer Counter - Numeric */
(Uint32)TEST_WR_DATA_ADDR, /* Destination Address - Extern Decl. Obj */
0x00000000, /* Index register - Numeric */
0x000b0000 /* Element Count Reload and Link Address */
};
void main(void)
{
unsigned int i;
EDMA_Handle hEdmaCha_0;
CSL_init();
hEdmaCha_0 = EDMA_open(EDMA_CHA_ANY, EDMA_OPEN_RESET);
EDMA_config(hEdmaCha_0, &edmaCfg_0);
EDMA_enableChannel(hEdmaCha_0);
//trigger EDMA by CPU
for(i = 0; i < 32; i++)
{
EDMA_setChannel(hEdmaCha_0);
Delay(1);
}
Delay(1);
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -