cathy 在 提交
作者:JOHNSON CHEN
在使用C2000Tm MCU产品的时候,有可能会碰到仿真器连上目标板以后报“flash is not available on this device”,详细报错信息如下,而事实上芯片本身是有Flash的。
C28xx_CPU1: GEL Output:
RAM initialization done
C28xx_CPU1: GEL Output:
Memory Map Initialization Complete
C28xx_CPU1: GEL Output: ... DCSM Initialization Start ...
C28xx_CPU1: GEL Output: ... DCSM Initialization Done ...
C28xx_CPU1: Error initializing flash programming: Interface returned from dll, but flash is not available on this device.
这时针对芯片Flash的所有操作(擦除,编程,校验,读取)都会报图一所示错误。
出现这种情况的原因可能是芯片Flash的代码不完整或者有错误,导致CPU工作不正常。虽然能连上仿真器,但仿真器读取到的芯片信息可能会出错,从而导致上面的报错。
如果没有有效办法去解决这个错误,则针对芯片Flash的所有操作都无效,只有换芯片才能让板子正常工作。
本文将以C2000 F28002x系列及CCS11为例,介绍针对“flash is not available on this device”问题的两种解决方案。其它C2000系列芯片如F28003x/F28004x/F2837x/F2838x遇到这个问题,也可以使用本文方法来解决。
方法一:更改引导模式。
如图二所示,将引导模式管脚跳线为Wait Boot Mode, 这样上电时CPU会停留在芯片内部自带的BOOT ROM区,而不会进入到用户自己的Flash代码。
这时连上仿真器,可以正常读取芯片信息,不会报之前的错误,接下来如图三所示,我们通过“ToolsàOn-Chip Flash”,在“Erase Settings”里面选择“Entire Flash”,然后点击“Erase Flash”把芯片整个Flash 擦除掉,此时芯片将变成空片。
方法二:更改XML文件。
第一步:生成CCS logs 文件。
1a. 如图四所示,点击 “Help”,然后选择 “CCS Support”。
1b. 如图五所示,选择“Debug Server Log”,然后点击“Properties”。
1c. 如图六所示,勾上“Enable Debug Server Logging”,然后选择存储log 文件路径并命名,例如命名为test.log,然后点击OK。
1d.启动CCS 仿真, 这时将生成log文件。
1f.用CCS 或者文本编辑器打开log 文件,如图七所示,查找Device ID, 把这个ID 号记下来,如(0x771923)。
第二步:更改xml 文件。
2a. 在下面路径下找到TMS320F28002x.xml 文件。建议先备份好这个文件,后面需要用到这个备份文件。
C:\ti\ccs1100\ccs\ccs_base\c2000\nowFlash\configs
2b.用文本编辑器或者CCS打开TMS320F28002x.xml文件, 如图八所示,查找DeviceId,,将1f步骤里面记录下来的Device ID 号替换TMS320F28002x.xml文件里的DeviceId值。也就是将0x771973改成0x771923。然后保存更改并关闭CCS(记得一定要关闭CCS,因为xml更改只有在下一次CCS启动时才会生效)。
第三步:启动CCS,进入仿真界面。
这时CCS不再报之前的错误, Flash 可以正常操作了。接下来我们通过“ToolsàOn-Chip Flash”,在“Erase Settings”里面选择“Entire Flash”,然后点击“Erase Flash”把芯片整个FLASH 擦除掉,此时芯片将变成空片。
第四步:恢复xml 文件。
可以将2a步骤里备份的TMS320F28002x.xml文件恢复,或者把现有TMS320F28002x.xml 里的DeviceId 从0x771923改回0x771973。
至此,芯片已经可以正常操作Flash 了, 问题得到解决。相比第一种方法,第二种方法的好处在于不需要硬件跳线, 对于客户实际操作来说会更加便捷。另外,如果第一种方法无效的话,也可以尝试第二种方法。
来源:德州仪器 (TI)
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。