应用报告ZHCA441–August2008针针对对TMS320F28xxxDSC的的闪闪存存编编程程解解决决方方案案TimLoveandPradeepShinde............................................................................................................摘摘要要闪存编程过程出现在TMS320F28xxx数字信号控制器(DSC)开发周期中的所有阶段:固件调试、原型设计、生产、和现场重编程。提供了几个解决方案来适应所有这些开发阶段的需要。这个应用报告介绍了几个可用的解决方案以及这些解决方案用于开发周期的那个阶段。内内容容1简介...........................................................................................................................22JTAG解决方案..............................................................................................................23串行解决方案...............................................................................................................104嵌入式解决方案............................................................................................................115生产解决方案...............................................................................................................136调试、有用的文档、和注意事项.........................................................................................137结论..........................................................................................................................158参考..........................................................................................................................15图图片片列列表表1闪存API代码执行..........................................................................................................22CodeComposerStudio片载闪存编程器.................................................................................33时钟配置设置................................................................................................................44闪存编程器设置菜单........................................................................................................45调用片载闪存编程器........................................................................................................56示例时钟配置设置...........................................................................................................67示例闪存编程器设置........................................................................................................68SD闪存.......................................................................................................................79SD闪存目标方选项.........................................................................................................710SD闪存擦除选项............................................................................................................811SD闪存编程选项............................................................................................................912SD闪存验证选项............................................................................................................913闪存窗口....................................................................................................................1014切换断点....................................................................................................................14图图表表列列表表1ZHCA441–August2008针对TMS320F28xxx数字信号控制器(DSC)的闪存编程解决方案SPRAAL3—版权©2008,TexasInstrumentsIncorporatedUser’sApplicationFlashAPIFlashAlgosOTP/FlashArrayControlBootROMJTAGSARAMAPICodeExecutionOTPandFlashArrayCPUCTMS320F28xxxI2C-AeCAN-ASCI-AParallelCodeComposerStudioSDFlashBASPI-A简介的内部闪存存储器是一个巨大的优势,这是因为此存储器为非易失性内存,此类内存使得设计人员能够将应用代码存储在芯片内部,而无需连接外部内存来存储这个代码。闪存存储器由一排内存单元(由浮栅晶体管制成)组成。闪存的每个单元能够存储一位信息。一个在浮动栅极上带有一个电荷的单元包含一个为0的值,而在浮动栅极上只有很少或者无电荷的单元包含一个为1的值。这项技术要求为闪存一直提供电源电压。所有TMS320F28xxx器件包含VDD3VFL电压引脚,需要在此引脚上施加3.3V电压来进行编辑(写入)和读取闪存的操作。由于采用了这项技术,如果要将应用代码存储在内存中,闪存必须经历一个擦除、编辑、和认证的过程。针对这一功能所使用的算法是时间关键算法,此算法在DSC上从内部随机访问存储器(RAM)中执行。这些算法必须被配置为适当的中央处理单元(CPU)频率并且不应被中断以确保闪存的正确编辑。TI在[1],[2],[7]和[8]中提供了闪存应用编程接口(API)算法。所有在这个应用报告中讨论的闪存编程解决方案使用这些算法从您器件的接口来无缝编辑闪存。图1显示了a)JTAG,b)串行,和c)定制解决方案所采用的闪存API的总体配置。您首先要知道的是,TI提供的闪存工具可以从网站中下载。按照以下路径:TI主页→数字信号处理→处理器平台→C2000™高性能32位控制器→选择F28x代产品并点击FlashTools按钮。注注:有必要使用与F28x部件和其芯片版本相匹配的正确的闪存API版本。图图1.闪闪存存API代代码码执执行行2JTAG解解决决方方案案IEEE标准1149.1-1990,IEEE标准测试访问端口和边界扫描架构(JTAG)解决方案可被应用到开发周期的所有阶段,但是主要用于固件调试和原型设计阶段,这是因为这个方法使得设计人员能够编辑闪存并随后在CodeComposerStudio™集成开发环境(IDE)中对其进行调试。现有的几个解决方案包括CodeComposerStudio片载闪存编程器,安全数据(SD)闪存、和Flasher-C2000。闪存编程工具取决于所使用的仿真器。C2000,CodeComposerStudioaretrademarksofTexasInstruments.SignumisatrademarkofSignumSystemsCorp.eZdspisatrademarkofSpectrumDigital,Inc.Allothertrademarksarethepropertyoftheirrespectiveowners.2针对TMS320F28xxx数字信号控制器(DSC)的闪存编程解决方案ZHCA441–August2008SPRAAL3—版权©2008,TexasInstrumentsIncorporated的插件,此编程器可实现IDE内的闪存编程,此IDE使用支持eZdsp™开发板,并可与CodeComposerStudio直接对接的仿真器。在固件调试和原型设计阶段,这个编程器是最为便捷的JTAG选项,这是因为可通过CodeComposerStudio直接访问此编程器。可从CodeComposerStudio的ToolsMenu(工具菜单)中选择此编程器。如果使用的是CodeComposerStudio3.1或者更老的版本,那么可从F281x闪存工具[1],F280x闪存工具[2]或者CodeComposerStudio的更新导航(UpdateAdvisor)中获得这个编程器。如果使用CodeComposerStudio3.3,这个编程器与CodeComposerStudio的基础安装一起安装并且可通过更