- 杂志
 搜 索: 
 论坛 » DSP系统 » DSP281X变量地址数组定位方法
广告招商
版主: sunshine0606 , QQDSP
 发表新贴 
 发表回复 
 DSP281X变量地址数组定位方法  发表于 2008-08-29 16:48:40 [您是本帖的第234位阅读者]     [1楼] 
呢称:shadowbetter
加我为好友


void FlashObj::ChipErase(void)
{
  Busy = true;
  FLASH[0x5555] = 0xaa; 
  FLASH[0x2AAA] = 0x55; 
  FLASH[0x5555] = 0x80;
  FLASH[0x5555] = 0xaa; 
  FLASH[0x2AAA] = 0x55; 
  FLASH[0x5555] = 0x10;
  Wait(FLASH[0x5555]);
  Busy = false;
}

在函数ChipErase中,Flash变量地址0x85555是用FLASH[0x5555]表达的.
这样用数组寻址比较直观~~~

实现方法如下:

1.在CMD文件中

MEMORY
{
PAGE 0:    /* Program Memory */

PAGE 1:    /* Data Memory */
   ERAM        : origin = 0x100000, length = 0x04000
   EFLASH      : origin = 0x080000, length = 0x10000
}

SECTIONS
{
   ERamRegsFile          : > ERAM,        PAGE = 1
   EFlashRegsFile        : > EFLASH,      PAGE = 1
}

2.在C/C++文件中
#pragma DATA_SECTION("ERamRegsFile")
volatile unsigned int RAM[0x4000];

#pragma DATA_SECTION("EFlashRegsFile")
volatile unsigned int FLASH[0x10000];

3.在应用程序中
extern unsigned int RAM[];
extern unsigned int FLASH[];


 
 RE: DSP281X变量地址数组定位方法  发表于 2008-09-26 14:22:12 [2楼] 
呢称:hotpower
加我为好友
 
 RE: DSP281X变量地址数组定位方法  发表于 2008-09-26 14:23:10 [3楼] 
呢称:hotpower
加我为好友
晕~~~菜农写的方法怎么全成了无头方法了???
 
共3条 1/1 1   
   快速回复主题
  用户名 : 匿名不能发帖!请先 [ 登陆 ]
  标 题:
  内 容 :
 
EEPW元器件搜索  强力提供
关于我们 | 广告服务 | 企业会员服务 | 新手上路 | 联系我们 | 友情链接
《电子产品世界》杂志社 版权所有 北京东晓国际技术信息咨询有限公司
Copyright ©2002 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
京ICP备060382号