jessie9940509 发表于 2011-11-30 16:07:57

大家帮忙看看,2812 程序下载到FLASH 运行怎么回事?

各位好,我今天刚焊好的板子,想烧程序试试。在RAM里运行都好的,一个灯一秒一闪。就这么简单。但是下载到FLASH里就没反应了。什么反应都没有。CMD文件我都用的时TI的标准的,一个字也没改啊。各位看看,第一,跳线的地方我改了。第二CMD文件改了,第三下载程序用“云型”的烧录 。这几点我都注意了。还需要注意哪些?还有个图给大家看看,下载的时候也没有抱任何错误。
http://cache.amobbs.com/bbs_upload782111/files_48/ourdev_700303QPWCUB.GIF
(原文件名:未命名.GIF)

jessie9940509 发表于 2011-11-30 16:08:26

在线等候啊!!

jessie9940509 发表于 2011-11-30 17:21:24

找到原因了是这个 ConfigCpuTimer(&CpuTimer0, 100, 1000000);函数老外写的 我用了后根本就不是一秒,比一秒钟长。我外部晶振20M ,PLL给的10.怎么不对呢?按照老外这个程序应该是1秒=1000000*1微妙中间100是CPU频率100M吧?

jessie9940509 发表于 2011-11-30 21:10:57

不好意思,我刚才在RAM里跟了,1秒钟是对的。我的程序在RAM里没有问题。但是一烧到FLASH里有没有反应了?怎么回事啊????

./emotion/em073.gif./emotion/em073.gif./emotion/em073.gif

jessie9940509 发表于 2011-11-30 21:12:53

大家帮我想想办法吧。就一个用TIMER点一个灯都不行啊!!!!55555555555555555555

jessie9940509 发表于 2011-12-1 10:42:59

所有该加的我都加了   关于C文件的配置。
首先在F2812.CMD文件中,我们可以看到有关于加载FLASH到RAM的内容:

ramfuncs         : LOAD = FLASHD,
                      RUN = RAML0,
                      LOAD_START(_RamfuncsLoadStart),
                      LOAD_END(_RamfuncsLoadEnd),
                      RUN_START(_RamfuncsRunStart),
                      PAGE = 0
以及在C文件中调用FLASH 到RAM的函数memcpy,将它放在系统初始化(InitSystem();)之后即可:
InitSystem();

memcpy(&RamfuncsRunStart,
&RamfuncsLoadStart,
&RamfuncsLoadEnd - &RamfuncsLoadStart);

Initflash();
所以,我们需要定义所用变量:

extern Uint16 RamfuncsLoadStart;
extern Uint16 RamfuncsLoadEnd;
extern Uint16 RamfuncsRunStart;
我都都加了为什么还是不行啊?我就想在FLASH里运行个简单程序 没有那么难吧?

jessie9940509 发表于 2011-12-1 17:29:21

哈哈问题已经解决,差点冤枉了TI了,是本人的低级错误导致的。是在难为情啊。

linmin418 发表于 2011-12-8 20:37:48

想跟你交流,加QQ:(1770825419);
页: [1]
查看完整版本: 大家帮忙看看,2812 程序下载到FLASH 运行怎么回事?