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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

3

主题

8

帖子

164

积分

注册会员

Rank: 2

积分
164
跳转到指定楼层
楼主
发表于 2016-9-27 08:47:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

; r. S% l1 E, t& ]' G. M7 v    用的创龙TL138-A3开发板,裸机,例程是EDMA3。$ T) U1 z$ W9 ?. U5 I

/ S! p6 e! f8 R6 _    例程中可以看到数据的传输,但是貌似没有找到在哪里配置的SRC和DST。 # O& i7 R) h# D' q. H8 \& u

) |" k0 }, e# ]9 P, g% f    看了工程编译后的map文件,发现编译完后就已经分配好了,如下:2 N' R% d7 o7 i" m
.bss       0    c000c500    000002ec     UNINITIALIZED7 h; @; N2 R. n' h) n, w4 x! c
                  c000c500    00000194     system_config.lib : interrupt.obj (.bss:fnRAMVectors); J( |: O6 s6 ~% n3 G
                  c000c694    00000080     (.common:cb_Fxn)# y, M. F9 [, J* W% c& l
                  c000c714    00000064     (.common:_dstBuff)
  j( ~. z, b9 G7 S, q" z                  c000c778    00000064     (.common:_srcBuff)" j# D: d$ [+ f6 m8 }
                  c000c7dc    00000004     (.common:dstBuff), M; u# x. z8 a) }: ~0 Z! ]4 L
                  c000c7e0    00000004     (.common:irqRaised)
! H$ ^2 @: G& q                  c000c7e4    00000004     (.common:regionId)
& d  R( @  }) V4 {  X: V  i                  c000c7e8    00000004     (.common:srcBuff)
4 y9 |" s$ v$ d/ H, _4 |5 y2 }7 ^, Q
* a# Q2 x& b; j2 w
     如果我想人为的设置源地址和目的地址应该怎么做?. _) m& |' k) T5 Y; v( {
  & O" {. v" _# v) J7 w3 i
    .init:{system_config.lib<init.obj> (.text)} > 0xC0000000  [6 o! ?+ h9 X
    .bss                >  DDR2   RUN_START(bss_start), RUN_END(bss_end)
8 J2 f1 X) H# n; U: N* `    .far                        >  DDR2# w% q! I% M, v

, A) a6 Y. X- o  T    还有一个问题就是想请问一下cmd文件中.bss里在DDR2后面的RUN_START(bss_start), RUN_END(bss_end)是什么意思?   
/ ?  s/ ]2 \" ^/ {6 Y6 H
. k6 t6 W  H7 m4 L+ F5 _
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

3

主题

852

帖子

3538

积分

创龙

Rank: 8Rank: 8

积分
3538
推荐
发表于 2016-9-29 09:42:18 | 只看该作者
默认的自动分配地址,你想人为的设置源地址和目的地址,在定义时指定地址就好
  q7 @! d2 Y0 h7 x8 E; Z$ G; ]volatile char   _srcBuff[MAX_BUFFER_SIZE];3 ~, ~0 w* n/ y: j7 @
volatile char   _dstBuff[MAX_BUFFER_SIZE];
8 q" i) J# e4 ]* s2 Y! U
' L, ~- x  x. p; Y! V' F5 Pvolatile char *srcBuff;
) X% m2 j7 L( g- h2 n' i5 A9 _) ?volatile 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,* R3 `, e# {" o, Y1 e% S4 M6 d
地址在定义时如何具体指定? 4 H7 C$ [. W4 I9 J' v$ {
我这样写是错的。。。
& T# p. P) d3 ?. Mvolatile char   _srcBuff[MAX_BUFFER_SIZE] = (char*)0xc000c878;
( v4 J/ K& n" b* y. z8 |' N
: s. I: J" t+ }( w# N6 s$ B
回复 支持 反对

使用道具 举报

0

主题

10

帖子

58

积分

QQ游客

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

使用道具 举报

3

主题

8

帖子

164

积分

注册会员

Rank: 2

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

RE: liyulin


: O, h- B- r" u2 Q4 e
& C; A2 M( U1 D+ H: A& x# e     嗯,我刚才试了一下,用#pragma DATA_SECTION,然后在cmd文件中来指定数组地址是可以实现的。2 m, A. ^8 b0 U3 @
   
6 `, R" n% U; Q! K' X     然而我真正的意图是你说的第二种,我看了参数RAM的配置,程序如下:
, }& Q) {3 B+ L' @/ D7 g- _. |        
3 k- g3 k: W& w$ M' _1 @        // 给参数 RAM 赋值/ H5 ]0 L$ E* ?$ c' `9 ?( @
        paramSet.srcAddr    = (unsigned int)(srcBuff);2 k0 ]7 D- ?$ t( o9 \! p7 `7 F
        paramSet.destAddr   = (unsigned int)(dstBuff);1 V/ T: ^0 w3 E: d
   
+ I$ \9 t, x, `        paramSet.aCnt = (unsigned short)acnt;" a/ k- b9 d8 a* v, y+ @* k) C5 _
        paramSet.bCnt = (unsigned short)bcnt;) g: _9 W5 q$ o- r% k, L) z# u
        paramSet.cCnt = (unsigned short)ccnt;' K! L! V% p  ?

5 Z0 Z5 [  U0 G1 N, m

4 S8 a; z# [6 m. f  F' C        // 设置 SRC / DES 索引! \6 o. T* v' [2 ]# p5 n
        paramSet.srcBIdx = (short)acnt;5 W3 ~$ W; X, p6 p& S: p
        paramSet.destBIdx = (short)acnt;
( v( y* r) b/ A. H% s; L! z& A8 Q* \! P" a/ b
  5 j3 N7 ~$ o% T* m5 U
      还没想好在这里怎么人为的把地址给srcAddr和destAddr
. H0 `* B. X- z4 z; T
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-5 03:12 , Processed in 0.050384 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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