TMS320F28335: CCS调试时的Load memroy 和 Fill Memory功能使用

Part Number: TMS320F28335

CCS调试时,Load memory功能从外部文件向地址写入数据时,使用ram的地址可以修改数据,使用flash的地址显示Memory map prevented writing,修改gel文件,增加写权限后出现Memory verification failed. 我想请教一下,这个问题该怎么解决,还是说此功能只能在SRam的地址空间内操作
比如下图所示,我在ram申请了20 int大小的空间,使用Load Memory功能正常,数据可以更改

但是如果将地址改为Flash地址(这里使用的是FLASH B),则出现Map Prevented wirting error。

如果我修改gel文件,增加写权限(这里使用的是Flash F),会显示verification failed ,Fill memory 和 Load Memory都是一样的问题。

所使用的文件都是通过save memory功能生成的,然后手动修改其中某个数据值。Load的时候可以正确识别。只是最终修改失败

  • 您好

    已经收到了您的案例,调查需要些时间,感谢您的耐心等待

  • 好的,我又补充了一些细节信息

  • Flash存储器使用Flash API或库函数来执行擦除和写入操作,而不是直接通过内存访问,不能像RAM那样直接通过调试接口修改。

    具体方法请参考用户手册等资料。

  • 感谢回复,意思是说,这个功能只能使用ram的地址,Flash的地址空间是不能使用这个功能的吧。但是FLASH应该是可以把1改成0的吧?进入debug时已经擦除好了,查看memory,目标FLASH地址里的数据都是65535,如果功能支持的话,直接写应该没问题才对。还是说,只要是涉及到FLASH的操作,都要使用库函数的擦和写来完成?没有其他途径?

  • 是的,不能这么操作。