f28335微计算机模式启动过程,F28335BOOTROM引导模式和程序

本文详细介绍了如何使用串口对TI的F28335 DSP进行程序烧录,包括BootROM引导模式、数据流结构和烧录流程。讲解了从CCS编译生成.out文件到使用hex2000工具转换为Intel格式hex文件的过程,并提供了配置串口烧录工具的步骤,以及烧录后的启动设置。
摘要由CSDN通过智能技术生成

《F28335BOOTROM引导模式和程序》由会员分享,可在线阅读,更多相关《F28335BOOTROM引导模式和程序(19页珍藏版)》请在人人文库网上搜索。

1、28335使用串口烧写程序串口烧写是一种相对较方便的烧写方式,相对于仿真器或是CAN烧写,相对于仿真器或是USB转CAN的设备,串口是一种非常廉价的烧写方式,而且也不需要安装 专业的集成开发环境 CCS等,但是不能实现在线调试,因此也只适用于程序基本不用 再调整或大批量的场合。F28335的存储器映射图如下:PhOCfcStart Addma-S4B33 -CIE4WwmpDxw!一H才 OntKl (DCiQh04 00轴加如MMihcw mooonoo CEoe04 3QQOwM整対DWtaJF A4MI$iRartpharl Frnm4 羊 P*MWd fCM此 AccoHFPertph。

2、erHi Frmv 1曲aglwl FrsHMi 2CPYfirtMlfid.l!B-XZeSDF Accni-iiMiU SAAARt (4K n.14, SfiCiM Zne Dual Mapped 1LI &ARAM |4K rt 1ft. Swura Zan Dual Mdppf3|L2 SALAMI I-4KK-1E, Sfiuifira 2Arw, tlusl Happed|L3 aARAKI MKkIB. 3w*Dual MappedlU MFUM MMk1 DMAAcc4lHt|U IWFtAM0MAAcwimL4 MFEAH HKMlfi, DMA 島笔awl聊巒|L7 SA。

3、IUMpnu Ac pnBlbl9|Rj?5RESET0x3F FFCOinntBootRTOSINTOxJF FFEO0*00 DG60INTI0x3F FFC20x00 0042R唤阿0恤护FFE20x00 0062INT20x3F FFC4amo 004NM)0k IF FFE3F FFFAflrflC DCTA(NT14Qx3F FFDGOnOO noseUSFR11OaF FFFCOlfOC 007CDLOGINT0x3F FFDE0x00 OT5EUSER12OxJF FFFE0: to XINTF Jt320111JurniplQOTF601110Paratel GPIO 1/0。

4、 boo5010iPnm 同 XlhTTF Itirwi401口0tv 31RAW30aii&Fancri to ctwck &oosk-LSE制S讥 deLnidtiDtl adiJibw.ur d L-ClK Add-123 丨白MSB. MSWadciess, second blockftadr31:24|-LSB.LSA dUnallon aiJdei., s&cmd b ock. A.:dr17:0;MSB. LSW dUnjbcn add阳汕.second bkek AdJf*5:SLMPFirst wamd of Hie weend biock be ng loadedMSB- 。

5、Finsl word oF th? s-pcnndl bkek bpmg loadedILSB1 -iftf wnnrl cf the rond nadkMSRr LfiiM word of Ni尸 styinrt block1LSbBlockof tno tact blockM&B: Block sixo of tho lace block-LSBUSW cf dHsUnalkoii( last Qtodk Addr23.10MSB. M&W desUriaiion adtkflu,扫就 Mock Addrpi4)LSLLSW deshfiation acki-sEi, last biock。

6、 Aj_dr|7 0|MSB: LSW desbnahen address lat blozk Addr15 BLSPFir 就 iTOr(j of Ire -i3t heck being os decMSB- First word of the test OlocA bemg tosdedList wom of tno blockVIS8: Jit word o*lhc last Weeknlt+1LSBOOhMSB. D0h indiGatsfi Uis vrud q( the kou-w上图就是BootLoader数据流的结构,数据流的第一个16位字称为键值,该键值用来指向Bootloa。

7、der指示流入的数据流的宽度:8位或16位(在这里SCI就是8 位),对于8位数据流,键值为0X08AA,如果bootloader收到一个无效的键值,加 载则中止。则直接跳转到FLASH开始执行。接下来的8个字(2-9 )用于初始化寄存器直,如果 bootloader不使用这些值, 则将这些值留作将来使用。第10个和第11个字组成了 22位应用起点地址,此地址用于在完成引导加载 后初始化PC,也就是我们程序的起点。第12个字表示传输的第一个数据块的大小。对于8位和16位数据流格式,该数据块的大小均定义为块中的16位字个数,例如,要从8位数据流中传输一个包含第13和14个字表示程序的目的地址,后。

8、面跟的就是程序的字,直到遇到数据 块长度为0的则传输结束。B bi Mil rmd. Uhe L3B Of lhe wod 稚 nad Aral Followed by ths IMSB.上图为BOOTLoader传输流程,如果不相等会自动退出引导程序,系统会从内 部FLASH存储器执行程序。这里需要讲一下,我们的 Bootloader数据流如何得到,我们正常的使用CCS编译链接得到了 xx.out 文件,然后使用 hex2000.exe-boot-sci8 -map=xx.map-o xx.hex -i xx.out(详细解释可参考 TMS320C28x-Assembly- Language。

9、-Tools-Users-Guide-v6.1.pdf),当然你可以将这些命令参数写成脚本xx.cmd ,然后直接执行hex2000.exe xx.cmd即可。这就会生成In tel格式的hex文件,我们需 要自己对这个hex文件解析,对于生成的 Hex文件都是以冒号开始,后面一个字节是 数据长度,2-3字节是地址,第4字节是数据类型(00表示数据记录,01表示文件结 束记录,02表示扩展段地址记录,04表示扩展线性地址记录)首先需要一个将两个字符转换为一个字节量函数:Void CharToByte(char *pChar,BYTE *pByte)char h,l;h=pChar0;l=pCh。

10、ar1;if(l= 0& l= a& l= A& l= 0& h= a& h= A& hhtodc-a taAt%!; 阪 out J.c in i t%砧呱(mt/1f,uS500.iuL1Rrauf upicsv5翳(!(texrsseo.out即可生成hex文件配置自己的申口烧 写曙自己要焼写的血龙文4牛舞目悔芯片还有晶振频率在按照上图所示根据自己实际情况配置完成后,我们要将我们板子DSP的启动方式更改为SCI-A启动方式,然后才能进行烧写。D:mcduledspfifcduargydspfifoEx21_ZQ28S35_PWM_DeadBandP)ebugL .FLASH启动方烧写成功如上图所示。在烧写完成之后,将拨码开关重新切换至式,重新启动DSP,这时可以观察程序的运行情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值