This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

在使用F021 Flash API时如何将flash程序搬到RAM

Other Parts Discussed in Thread: TMS570LS1224

您好!

       我在使用官方的TMS570LS1224的LaunchPad时,使用官方提供的F021 Flash API 对内置的flash进行操作,在Fapi_setActiveFlashBank( Fapi_FlashBank0) 时,会出现错误异常,进入undefEntry 状态。 然后将Fapi_FlashBank0 改为Fapi_FlashBank7 程序就完好,并且擦写都正确。

      我想问: 1.  是不是因为程序存储在Flash Bank 0 中,所以使用API 不能对BANK0进行操作?

                       2.  如果要对Bank0进行擦写操作,有什么办法?  需要将Flash API程序 弄到RAM中,然后在RAM中执行flash API 对 BANK0 进行擦写操作?

                       3.  问下如何才能将FLASH API 或程序 弄到RAM中进行操作,有没有相关例程 或文档支持?

       麻烦回答了,再这先感谢回答的各位!

  • 应该第一个是的,就好比在Windows下你想格式化C盘一样。

    需要编程的时候重新配置吧。没怎么用过这个。

  • 你好 1.这个具体的要看你的cmd文件中的伪指令都对内存分配做了哪些操作,如果可以的话把你的cmd文件截图上来就容易对症下药。

             2.这个问题是你伪指令不熟的原因,在cmd文件模块中可以通过load 和run定位程序的烧写和运行位置。

  • 谢谢两位,我在官网找到了关于如何在.cmd文件中将Falsh搬运到Ram的方法,并能成功使用F021 Flash API 擦写Bank 0 .   

    但是,我配合使用RTI定时中断时,使用Flash API 进行擦写 会进入 prefetchEntry, 如果使用查询RTI定时器中断标志位的方法的话,Flash API 擦写又正确。

    不知道有么有人有相关的TMS570开发经验或解答下什么问题

  • 已经解决了,封贴,谢谢各位

  • 你好 我也遇到同样的问题了  请问你是怎么解决的。

  • 楼主能否讲解一下具体方法,多谢。

  • 怎么解决的都不说下,还好意思舔着脸来问别人问题?