TI中文支持网
TI专业的中文技术问题搜集分享网站

EDMA3中源地址和目的地址设置问题

  我用的CCS6.1

  导入OMAPL138_StarterWare_1_10_04_01\build\armv5\cgt_ccs\omapl138\lcdkOMAPL138\edma中的例程

  然后在程序中好像没有找到源地址和目的地址的配置程序,但是编译程序后,在map文件中就已经分配好了地址:

.bss 0 c10844e4 00001624 UNINITIALIZED
c10844e4 00000a00 (.common:_dstBuff)
c1084ee4 00000a00 (.common:_srcBuff)
c10858e4 00000194 system_config.lib : interrupt.obj (.bss:fnRAMVectors)
c1085a78 00000080 (.common:cb_Fxn)
c1085af8 00000004 drivers.lib : edma.obj (.bss)
c1085afc 00000004 (.common:dstBuff)
c1085b00 00000004 (.common:irqRaised)
c1085b04 00000004 (.common:srcBuff)

我想请教一下,这个地址是自动分配的么,如果想人为的设置源地址和目的地址应该怎么做?

还有就是在cmd文件中:

.bss : load > DDR_MEM /* GLOBAL & STATIC VARS */
RUN_START(bss_start),
RUN_END(bss_end)

RUN_START和RUN_END这两句是什么意思?

Tony Tang:

#1. 参考文档spru187里关于DATA_section的说明。

#2. 参考文档spru186里相应的说明。

fanxuchao:

回复 Tony Tang:

 关于第一个问题, 我把程序改了一下,

C中:

#pragma DATA_SECTION(_srcBuff, "my_sect1")#pragma DATA_SECTION(_dstBuff, "my_sect2")volatile char _srcBuff[MAX_BUFFER_SIZE];volatile char _dstBuff[MAX_BUFFER_SIZE];

.cmd中:

MEMORY spacename1  o = 0xD000000   l = 0x64 spacename2  o = 0xD100000   l = 0x64

SECTIONS

.my_sect1 > spacename1 .my_sect2 > spacename2

这样编译会给警告,

Description Resource Path Location Type#10247-D creating output section "my_sect1" without a SECTIONS specification EDMA3 C/C++ Problem

Description Resource Path Location Type#10247-D creating output section "my_sect2" without a SECTIONS specification EDMA3 C/C++ Problem

而且好像也没有映射成功,我哪里写的有问题么?

赞(0)
未经允许不得转载:TI中文支持网 » EDMA3中源地址和目的地址设置问题
分享到: 更多 (0)