EDMA3中源地址和目的地址设置问题 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8182|回复: 5
打印 上一主题 下一主题

[已解决] EDMA3中源地址和目的地址设置问题

[复制链接]

3

主题

8

帖子

164

积分

注册会员

Rank: 2

积分
164
跳转到指定楼层
楼主
发表于 2016-9-27 08:47:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
" e+ Z* Q5 @+ j4 j5 l! Q# E* c- [
    用的创龙TL138-A3开发板,裸机,例程是EDMA3。
+ \9 G* \7 H* m8 I, M! k* S- E; H/ z; f2 L6 g, T9 x7 I
    例程中可以看到数据的传输,但是貌似没有找到在哪里配置的SRC和DST。
+ O0 _, ^2 `1 m$ y; L7 Q: \* L! M/ ~5 V  x
    看了工程编译后的map文件,发现编译完后就已经分配好了,如下:$ D5 N7 S, l. V( r: K
.bss       0    c000c500    000002ec     UNINITIALIZED5 x: f1 c1 x6 M, m: m$ l- Y
                  c000c500    00000194     system_config.lib : interrupt.obj (.bss:fnRAMVectors)
7 p: r2 }! I( F4 E                  c000c694    00000080     (.common:cb_Fxn)
' f% D; ]# N2 J5 L                  c000c714    00000064     (.common:_dstBuff)
0 }/ y  W- B( Z5 Q: t, n( P                  c000c778    00000064     (.common:_srcBuff)
  ^/ I; A& C- q" D1 V, _* o  `' d                  c000c7dc    00000004     (.common:dstBuff)! n+ I9 i$ \( J( d/ G
                  c000c7e0    00000004     (.common:irqRaised)4 Z) R* M( ~% \7 g, m
                  c000c7e4    00000004     (.common:regionId)
% |  v+ F" t# F4 d                  c000c7e8    00000004     (.common:srcBuff)9 q# Z% u3 s$ f+ h1 O
# L  \: q2 u+ a5 c
/ K* Y; _# W. ]
     如果我想人为的设置源地址和目的地址应该怎么做?
, t! V% Z- r& c+ _2 `3 S  
) H! v7 z: x( D1 z- Z    .init:{system_config.lib<init.obj> (.text)} > 0xC0000000
  J6 X  I. B/ U5 u    .bss                >  DDR2   RUN_START(bss_start), RUN_END(bss_end). |+ w& B! e: X) T$ K; ^. U' |
    .far                        >  DDR21 X( u4 U, k# L7 D9 ^( v) ~1 q

1 `2 `9 o. R5 r5 X    还有一个问题就是想请问一下cmd文件中.bss里在DDR2后面的RUN_START(bss_start), RUN_END(bss_end)是什么意思?   $ G# H9 G. f) `
! u) C7 L4 M4 H. p* _$ d
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

3

主题

852

帖子

3538

积分

创龙

Rank: 8Rank: 8

积分
3538
推荐
发表于 2016-9-29 09:42:18 | 只看该作者
默认的自动分配地址,你想人为的设置源地址和目的地址,在定义时指定地址就好
/ J% w, k" A( F/ w1 {) p0 a- Vvolatile char   _srcBuff[MAX_BUFFER_SIZE];+ w2 n' \& A/ a% ^
volatile char   _dstBuff[MAX_BUFFER_SIZE];
0 P( h! B1 g5 W* D  ~( o9 B% N0 G5 h# y4 I
volatile char *srcBuff;
% m& E! w4 v% t' cvolatile char *dstBuff;
回复 支持 1 反对 0

使用道具 举报

3

主题

852

帖子

3538

积分

创龙

Rank: 8Rank: 8

积分
3538
板凳
发表于 2016-9-29 10:17:45 | 只看该作者
CMD文件的相关介绍,请关注http://51dsp.net/forum.php?mod=v ... &extra=page%3D1
回复 支持 反对

使用道具 举报

3

主题

8

帖子

164

积分

注册会员

Rank: 2

积分
164
地板
 楼主| 发表于 2016-9-29 13:48:08 | 只看该作者

RE: human

请问human,' i, }  h5 @8 d! A& s
地址在定义时如何具体指定? % b$ ~0 A" C) |1 \
我这样写是错的。。。
5 i4 j) @+ @5 m8 tvolatile char   _srcBuff[MAX_BUFFER_SIZE] = (char*)0xc000c878;
8 O5 F2 w" {+ c, \. m3 j9 O' `2 i2 U; t
回复 支持 反对

使用道具 举报

0

主题

10

帖子

58

积分

QQ游客

积分
58
5#
发表于 2016-9-29 14:18:16 | 只看该作者
如果数组地址的话,可以用#pragma DATA_SECTION来指定 ,放到CMD中定义的字段中。
0 n9 w4 e/ p$ N4 G! f如果是配置EDMA的目的和原地址 在EMDA 参数RAM里面配置。
回复 支持 反对

使用道具 举报

3

主题

8

帖子

164

积分

注册会员

Rank: 2

积分
164
6#
 楼主| 发表于 2016-9-29 16:11:53 | 只看该作者

RE: liyulin


% n! c3 f5 R- C: `" ^  K" _7 X  _+ p1 j- g. H
     嗯,我刚才试了一下,用#pragma DATA_SECTION,然后在cmd文件中来指定数组地址是可以实现的。
  u1 I! C$ x' Z0 \   
) s2 D# ?5 m: L+ G+ Q( L( \* |% _     然而我真正的意图是你说的第二种,我看了参数RAM的配置,程序如下:# _* }' I! Q) O3 G5 m/ P( m0 K
        
9 k- x+ ]+ C6 `6 F- ?        // 给参数 RAM 赋值
: k( e0 H- l6 ^. F8 k        paramSet.srcAddr    = (unsigned int)(srcBuff);7 {/ e7 K# J* A( m8 U
        paramSet.destAddr   = (unsigned int)(dstBuff);2 {! x9 o, H3 |* J8 y3 R9 U
   
# ~" Q5 U/ `) {$ Y  ]# S* u        paramSet.aCnt = (unsigned short)acnt;
4 V4 f; k; D) _4 ~8 T        paramSet.bCnt = (unsigned short)bcnt;
' s( j8 K; C/ x7 d$ g        paramSet.cCnt = (unsigned short)ccnt;
$ }- N7 I% n) f7 _7 f2 n0 j4 K" z; m8 n# q: U2 j. y. B  @

0 m, s" h2 |) ]        // 设置 SRC / DES 索引' z* N% X/ L( s% \( a. ~, l
        paramSet.srcBIdx = (short)acnt;
3 O$ X% M% y& g9 t        paramSet.destBIdx = (short)acnt;
# A1 h9 A: i& c! [* M0 y3 S6 ^+ V0 B# l5 D
  
1 g* k8 S4 ]9 z2 _  K      还没想好在这里怎么人为的把地址给srcAddr和destAddr. o, I, a2 l1 _8 H9 h5 I) c0 @2 M
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2025-4-30 20:00 , Processed in 0.038686 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表