0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C2000 MCU flash报错的解决方案

电子设计 来源:电子设计 作者:电子设计 2022-06-30 17:01 次阅读

在使用C2000MCU产品的时候,有可能会碰到仿真器连上目标板以后报“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的所有操作(擦除,编程,校验,读取)都会报图一所示错误。

pYYBAGK9VZ-AK0YDAAAgs7vd5xc294.png

图一

出现这种情况的原因可能是芯片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代码。

pYYBAGK9VaGAZMG5AAAlMkZiS4Q528.png

图二

这时连上仿真器,可以正常读取芯片信息,不会报之前的错误,接下来如图三所示,我们通过“ToolsàOn-Chip Flash”,在“Erase Settings”里面选择“Entire Flash”,然后点击“Erase Flash”把芯片整个Flash 擦除掉,此时芯片将变成空片。

poYBAGK9VaOAWTuQAACTeDWzLNA646.png

图三

方法二:更改XML文件。

第一步:生成CCS logs 文件。

1a. 如图四所示,点击 “Help”,然后选择 “CCS Support”。

pYYBAGK9VaiAOGMKAABjTAGY-OY462.png

图四

1b. 如图五所示,选择“Debug Server Log”,然后点击“Properties”。

poYBAGK9VaqAIm-_AAB-pXBfCgs041.png

图五

1c. 如图六所示,勾上“Enable Debug Server Logging”,然后选择存储log 文件路径并命名,例如命名为test.log,然后点击OK。

pYYBAGK9VauAcemjAABWQYvKbvg250.png

图六

1d.启动CCS 仿真, 这时将生成log文件。

1f.用CCS 或者文本编辑器打开log 文件,如图七所示,查找Device ID, 把这个ID 号记下来,如(0x771923)。

poYBAGK9Va2AbYtGAABlu_p_J4w619.png

图七

第二步:更改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启动时才会生效)。

pYYBAGK9Va-AZRvxAAAk82dMDow084.png

图八

第三步:启动CCS,进入仿真界面。

这时CCS不再报之前的错误, Flash 可以正常操作了。接下来我们通过“ToolsàOn-Chip Flash”,在“Erase Settings”里面选择“Entire Flash”,然后点击“Erase Flash”把芯片整个FLASH 擦除掉,此时芯片将变成空片。

第四步:恢复xml 文件。

可以将2a步骤里备份的TMS320F28002x.xml文件恢复,或者把现有TMS320F28002x.xml 里的DeviceId 从0x771923改回0x771973。

至此,芯片已经可以正常操作Flash 了, 问题得到解决。相比第一种方法,第二种方法的好处在于不需要硬件跳线, 对于客户实际操作来说会更加便捷。另外,如果第一种方法无效的话,也可以尝试第二种方法。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16852

    浏览量

    349798
  • FlaSh
    +关注

    关注

    10

    文章

    1613

    浏览量

    147642
  • 仿真器
    +关注

    关注

    14

    文章

    1011

    浏览量

    83583
  • C2000
    +关注

    关注

    5

    文章

    193

    浏览量

    40102
收藏 人收藏

    评论

    相关推荐

    使用C2000 MCU对用于数字控制的双向降压/升压转换器进行建模

    电子发烧友网站提供《使用C2000 MCU对用于数字控制的双向降压/升压转换器进行建模.pdf》资料免费下载
    发表于 10-12 11:48 0次下载
    使用<b class='flag-5'>C2000</b> <b class='flag-5'>MCU</b>对用于数字控制的双向降压/升压转换器进行建模

    C2000™ MISRA-C策略

    电子发烧友网站提供《C2000™ MISRA-C策略.pdf》资料免费下载
    发表于 10-11 11:43 0次下载
    <b class='flag-5'>C2000</b>™ MISRA-<b class='flag-5'>C</b>策略

    C2000 F28004x系列MCU PLL锁相失败问题解决方案

    电子发烧友网站提供《C2000 F28004x系列MCU PLL锁相失败问题解决方案.pdf》资料免费下载
    发表于 09-27 11:24 0次下载
    <b class='flag-5'>C2000</b> F28004x系列<b class='flag-5'>MCU</b> PLL锁相失败问题<b class='flag-5'>解决方案</b>

    使用C2000 MCU的数字控制无桥式功率因数校正(BL PFC)

    电子发烧友网站提供《使用C2000 MCU的数字控制无桥式功率因数校正(BL PFC).pdf》资料免费下载
    发表于 09-23 11:51 0次下载
    使用<b class='flag-5'>C2000</b> <b class='flag-5'>MCU</b>的数字控制无桥式功率因数校正(BL PFC)

    第2代C2000实时MCU的EEPROM模拟

    电子发烧友网站提供《第2代C2000实时MCU的EEPROM模拟.pdf》资料免费下载
    发表于 09-20 09:34 0次下载
    第2代<b class='flag-5'>C2000</b>实时<b class='flag-5'>MCU</b>的EEPROM模拟

    在单个C2000MCU上使用FCL和SFRA进行双轴电机控制

    电子发烧友网站提供《在单个C2000MCU上使用FCL和SFRA进行双轴电机控制.pdf》资料免费下载
    发表于 09-14 09:40 0次下载
    在单个<b class='flag-5'>C2000</b>™<b class='flag-5'>MCU</b>上使用FCL和SFRA进行双轴电机控制

    C2000MCU的运行时堆栈大小监测

    电子发烧友网站提供《C2000MCU的运行时堆栈大小监测.pdf》资料免费下载
    发表于 09-11 09:30 0次下载
    <b class='flag-5'>C2000</b>™<b class='flag-5'>MCU</b>的运行时堆栈大小监测

    了解 C2000 实时控制 MCU 的安全特性

    电子发烧友网站提供《了解 C2000 实时控制 MCU 的安全特性.pdf》资料免费下载
    发表于 09-10 10:33 0次下载
    了解 <b class='flag-5'>C2000</b> 实时控制 <b class='flag-5'>MCU</b> 的安全特性

    C2000 MCU JTAG 连接调试

    电子发烧友网站提供《C2000 MCU JTAG 连接调试.pdf》资料免费下载
    发表于 09-09 09:30 0次下载
    <b class='flag-5'>C2000</b> <b class='flag-5'>MCU</b> JTAG 连接调试

    C2000 MCU的ADC输入电路评估(使用TINA-TI仿真工具)

    电子发烧友网站提供《C2000 MCU的ADC输入电路评估(使用TINA-TI仿真工具).pdf》资料免费下载
    发表于 09-07 11:18 1次下载
    <b class='flag-5'>C2000</b> <b class='flag-5'>MCU</b>的ADC输入电路评估(使用TINA-TI仿真工具)

    C2000实时MCU的ADC输入电路评估(使用PSPICE-FORTI)

    电子发烧友网站提供《C2000实时MCU的ADC输入电路评估(使用PSPICE-FORTI).pdf》资料免费下载
    发表于 09-06 09:55 0次下载
    <b class='flag-5'>C2000</b>实时<b class='flag-5'>MCU</b>的ADC输入电路评估(使用PSPICE-FORTI)

    显示C2000™控制MCU优化信号链的实时基准

    电子发烧友网站提供《显示C2000™控制MCU优化信号链的实时基准.pdf》资料免费下载
    发表于 09-05 11:31 0次下载
    显示<b class='flag-5'>C2000</b>™控制<b class='flag-5'>MCU</b>优化信号链的实时基准

    F2800x C2000™实时MCU系列硬件设计指南

    电子发烧友网站提供《F2800x C2000™实时MCU系列硬件设计指南.pdf》资料免费下载
    发表于 08-30 11:32 1次下载
    F2800x <b class='flag-5'>C2000</b>™实时<b class='flag-5'>MCU</b>系列硬件设计指南

    针对 C2000™ 微控制器的集成微控制器 (MCU) 电源解决方案数据表

    电子发烧友网站提供《针对 C2000™ 微控制器的集成微控制器 (MCU) 电源解决方案数据表.pdf》资料免费下载
    发表于 03-04 14:12 0次下载
    针对 <b class='flag-5'>C2000</b>™ 微控制器的集成微控制器 (<b class='flag-5'>MCU</b>) 电源<b class='flag-5'>解决方案</b>数据表

    32位C2000实时MCU电源管理解决方案

    电子发烧友网站提供《32位C2000实时MCU电源管理解决方案.pdf》资料免费下载
    发表于 11-16 11:24 0次下载
    32位<b class='flag-5'>C2000</b>实时<b class='flag-5'>MCU</b>电源管理<b class='flag-5'>解决方案</b>