社区导航

 

搜索
查看: 465|回复: 0

[资料分享] 2812的启动步骤(可参照理解28335)

[复制链接]

6562

TA的帖子

19

TA的资源

纯净的硅(初级)

Rank: 4

发表于 2018-7-10 22:35 | 显示全部楼层 |阅读模式
下面是2812的flash启动流程,可参照学习28335的启动


2812从内部flash启动的详细流程说明:


(a)上电复位


(b) 判断是否从flash启动


(c)复位向量是指向片内Flash的0x3FFFC0,2812有一块flash地址从0x3FF000-0x3FFFFF在出厂时已经固化好了引导程序。在0x3FFFC0处是一条跳转指令,跳到iniboot(地址0x3FFC00)函数处执行iniboot代码,该iniboot代码就是TI在dsp出厂时固化在flash中的


(d)InitBoot assembly Routine将选择SelectBootMode function启动模式函数。这个函数由GPIO 引脚的状态决定启动类型。一旦启动结束,选择启动模式函数返回一入口地址给InitBoot函数。入口地址是退出bootloader之后代码开始执行的起始点。InitBoot接着将会调用ExitBoot子程序,把CPU寄存器的状态恢复到复位状态。比如flash boot模式。


(e)那么initboot执行完后跳转到0x3F7FF6处(codestart处),此位置刚好在128位(CSM)密码位置之前。


(f)你要在0x3F7FF6处放置跳转指令,以跳转到你要去的地方,比如是boot loader或应用代码,通常的跳转去处是_c_int00。


(g)上面代码执行后跳到C初始化的入口_c_int00(0x3F6000) ,在C初始化的入口,_c_int00对一些变量,堆栈和寄存器进行必要的设置。


(h)调用main函数开始运行C程序。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 1/8 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

词云| Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-7-16 08:05 , Processed in 0.086967 second(s), 22 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表