5628|3

9

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

API F021中调用ERASE 功能时FAIL [复制链接]

各位:



        最近用570调F021的API时发生问题:




        Fapi_initializeFlashBanks(SYS_CLK_FREQ); /* used for API Rev2.01 */

            Fapi_setActiveFlashBank(Fapi_FlashBank0);



        Fapi_enableMainBankSectors(0xFFFF);        /* used for API 2.01*/

        while( FAPI_CHECK_FSM_READY_BUSY == Fapi_Status_FsmBusy );




        根据流程图,以上几步都正常,下一步

        Fapi_issueAsyncCommandWithAddress(Fapi_EraseSector, eraseStartAddr);

        失败,指定位置eraseStartAddr 的扇区已被清空.但处理器发生fetch 异常。




        单步进入TI提供的LIB文件, 单步执行到0x4862后会自动调LIB 中另一个

程序 _fapi_issueFsmCommand, 再单步到0x486C后又会调一下该子程序,之后一切

正常.

        但不单步而连续运行就会发生fetch错误,貌似0x4862与0x486C处thumb指令

都不是跳转命令,也不知道是怎么发生跳转的,困扰多日,望有大侠给解药,多谢.




      

最新回复

Hi msnhjy,     抱歉,首先,还是建议到E2E或者Deyisupport寻求进一步帮助。         另,如果按照描述,我觉得就是前面说的问题了,即不应该操作同一个BANK.     请参考Flash API User Guide中的注意事项:   详情 回复 发表于 2015-6-11 11:58
 
点赞 关注

回复
举报

40

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
Hi msnhjy,
    一时间可能很难找到问题根源,可能需要你提供完整的工程你的调试步骤。
    但一个比较重要的注意点是,使用Flash API时,不能操作与Flash API库同一个BANK。
    即,要注意不要用API来擦写自己。
  
    如果上面提到的注意点已经考虑到了,那么就需要深入分析了。
    建议你到德仪社区把问题详细描述一下吧:
    http://www.deyisupport.com/quest ... /hercules/f/70.aspx
 
 

回复

9

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
Hi renton:

    目前调试的这片芯片只有BANK0 和BANK7,请参考
以下两图







通常我确认程序段位于BLOCK0最高地址不超过0x8000,即占用SECTOR 0 ,1, 2,

然后我调API去擦BLOCK2(即起始地址为0x80000)的APP地址,通常情况下当进入

API汇编后连续单步执行一点问题都没有,但连续执行一定会报FETCH异常(此时

LR寄存器一定为0x10).

同样情况发生在调用API的Fapi_BlockProgram()函数中,单步一定可以执行且将

数据写入指定位置,而连续执行则一定FETCH异常,查下来的理由同样是因为调

_fapi_issueFsmCommand 子程序过程中产生错误.

同样我参考了以下网页:

https://e2e.ti.com/support/micro ... ules/f/312/t/427434

这同样是F021应用在570系列的处理器上,貌似从根源上讲应该是一样的问题,

好像还没有解决.由此我越来越怀疑是HERCULES提供的API中存在问题.






 
 
 

回复

40

帖子

0

TA的资源

一粒金砂(高级)

4
 
Hi msnhjy,
    抱歉,首先,还是建议到E2E或者Deyisupport寻求进一步帮助。
   
    另,如果按照描述,我觉得就是前面说的问题了,即不应该操作同一个BANK.
    请参考Flash API User Guide中的注意事项:

Capture.PNG (109.77 KB, 下载次数: 0)

Capture.PNG
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表