注意:下面答案适用于带F05 flash的器件。 参阅:[常见问题解答] F05 FlashC2000器件具有“F05 flash”吗?
问:什么是闪存扇区(flash sector)? 它们记录在哪里?
答:
- 每个扇区的存储位置记录于数据手册存储映射中。
- 一个flash bank由多个扇区组成。
- 扇区大小与闪存的物理架构相对应,且大小不能更改。
- 扇区是可擦除的最小闪存区域。例如,您可擦除整个扇区“A”,但无法擦除扇区A中的单字。
- 您可在链接器命令文件中合并扇区以创建更大的.text段。这不会改变扇区是可擦除的最小数量的事实。
问:为什么不能在闪存中设置两个以上的断点?为什么不能在闪存中单步执行代码?
答:
Code Composer Studio支持软件断点和硬件断点。调试从闪存运行的代码时,必须使用硬件断点。基于F05的器件可访问2个硬件断点。单步也需要设置硬件断点。
Code Composer Studio自动设置两个断点:(a)程序结束和(b)CIO(用于printf)。这样可防止您在调试Flash中的应用程序时遇到任何断点。可通过在debugger options->program/memory load选项中禁用“CIO”和“end of program”断点来更改此行为。 应该注意:如按照以下步骤操作,您将无法输出CIO文本(例如printf等)。 这也将防止程序在退出时自动停止。
注意:较新的C28x基器件(例如F28004x)没有此限制!!这些器件具有称之为ERAD的模块。有关更多详细信息,请查阅数据手册和TRM。
问:我想获得flash API源代码。 TI会分配吗?
答:
TI通常不会分配源代码。原因在于更改代码可能会损害器件中的闪存。更改的API不能在应用程序中使用。如要创建一个闪存编程解决方案,闪存API库的使用必须符合TI的规定。
当应用程序用于军事、航空或医疗领域且用户有正当理由需要使用源代码进行认证时,可通过与TI签署许可协议获得源代码。如果您的情况属于此类,请联系您的TI销售人员或分销代表或在这些论坛中发帖寻求帮助。
有关更多与F05相关的常见问题解答,请参阅 [常见问题解答] F05 Flash常见问题
Annie Liu:
我们建议您在发布新问题之前先搜索 E2E支持论坛,E2E支持论坛已经拥有数十万个已得到解答的话题。 这通常是解决问题的最快方法。