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

自己做的板子,程序在线仿真调试没问题,关键的烧写出问题了,运行在线FLASH烧写程序报错,如下

报错如下:

Trouble Reading Target Cpu memory:

Error 0x00000004/-1156

Error during:Register,

Invalid data was scanned by the emulation controller.

Verify the board setup to make sure the scan chain is properly defined.

不知道有没有人知道这可能是什么问题,我在实验箱上运行那个在线flash烧写程序可以,自己做的板子通过仿真器跑程序能正常工作。会不会是我的CPLD译码程序有错误导致flash不能正常工作,

noaming:

这个似乎不是CPLD等程序内容的错误。

连上了仿真器,加载.out文件后出现的问题?

因为自己的板子和EVM板设计有差别,检查一下GEL文件和cmd文件,注意修改一下。

wen liu:

回复 noaming:

我大体上是参照ICETEK的实验箱做的一个系统板,程序在仿真下能正常运行,就是不能烧写flash。在仿真器下能在线调试的话就应该不会是gel和CMD的问题吧。

noaming:

回复 wen liu:

程序在仿真情况下就不能写FLASH?

先别用\evm5509_MultiBoot\5509MultiBoot\FlashBurn烧写FLASH工具了。

需要先把Flash硬件读写调试通过了,再用上面这个工具下载程序。

\dsk5509a_v1\lib\dsk5509bsl里面有flash读写程序测试。

http://c5000.spectrumdigital.com/dsk5509a/

wen liu:

回复 noaming:

谢谢Titan,我之前可能没说清楚,那个错误就是在仿真情况下运行的flash读写测试程序时报的错,我后面单步运行,发现总是卡在擦除子程序那里,flash读写程序的我也仔细检查过没问题,所以我就在想会不会是cpld地址译码不正确造成的,检查了CPLD程序貌似没问题。

noaming:

回复 wen liu:

擦除程序部分\dsk5509a_v1\lib\dsk5509bsl:dsk5509_flash_erase.c:

/* Start sector erase sequence */ DSK5509_mset(DSK5509_FLASH_CTL555, 0xaa); DSK5509_mset(DSK5509_FLASH_CTL2AA, 0x55); DSK5509_mset(DSK5509_FLASH_CTL555, 0x80); DSK5509_mset(DSK5509_FLASH_CTL555, 0xaa); DSK5509_mset(DSK5509_FLASH_CTL2AA, 0x55);

/* Start erase at sector address */ DSK5509_mset(sector_end[i], 0x30);

/* Wait for erase to complete */ while (1) if (DSK5509_mget(sector_end[i]) & 0x80) break;

你可以自己建一个工程,直接调试库里的的原函数,单步运行测试一下。看看擦除这部分哪里出了问题。

赞(0)
未经允许不得转载:TI中文支持网 » 自己做的板子,程序在线仿真调试没问题,关键的烧写出问题了,运行在线FLASH烧写程序报错,如下
分享到: 更多 (0)