Part Number:TMS320F28335Other Parts Discussed in Thread:C2000WARE
我将程序下载到Flash中,我希望程序在运行的情况下,可以对程序数据所在的Flash区域进行擦除和重写,完成Flash中程序数据的替换,并能成功运行替换的程序数据。请问一下这是可能实现的吗?
Green Deng:
你好,可以实现,就是会比单独的擦除扇区麻烦很多,要调用flashAPI函数。具体的你可以看一下flash API的使用指南以及例程:
C:\ti\c2000\C2000Ware_4_01_00_00\libraries\flash_api\f2833x\28335
,
yang huang:
我尝试过,程序在运行过程中,对程序所在的Flash区域进行擦除,程序会直接终止,开发板停止运行,怎样能够保持程序数据被擦出后还能够正常运行了?
,
Green Deng:
奥,不好意思没看仔细。你是要在程序运行的情况下擦除程序所在的flash扇区的话我确实没有这样操作的经验,因为flashAPI函数是搬移到ram运行的,我不确定搬移到ram后是否还需要保留flash中的程序才能运行。
这个问题我会咨询一下其他工程师后回复你。
,
yang huang:
好的,谢谢你了!请问这种方式可以实现嘛
,
Green Deng:
还在沟通,可能对方跟我一样一开始没有理解清楚意思
,
Green Deng:
你好,这边确认,因为FlashAPI本身是必须要从flash搬移到ram中运行的,所以运行期间是可以擦除整个flash的。