TI 28035启动过程

DSP上电复位后,会触发RESET中断,中断指向固化在片内ROM中的Bootloader代码。这是出厂就存在的引导程序,不可修改。
RESET向量位于固化在boot ROM中的CPU Vector Table。TMS320x2803x的CPU Vector Table位于地址0x3F E000 - 0x3F FFFF。
在这里插入图片描述
在这里插入图片描述
RESET以后,启动Initboot。Initboot位于BootLoader function区,在程序debug运行时候查看内存图。
在这里插入图片描述
地址位于0X003FF8A1.
然后执行这段程序,程序逻辑如下
图:TMS320x2803x Piccolo Boot ROM Reference Guide
当仅使用一次引导的程序跳转功能,不使用一次引导复制程序时,上图中条件判断“Call Get_Mode()?”和“Call Boot Loader?”将不被满足,从而执行“No”分支,最终默认配置将进入FLASH区域的BEGIN区(地址0x3F 7FF6)。
在利用仿真器运行程序时候,我们能看到的最开始的起始程序地址就是0x3F 7FF6
在这里插入图片描述
然后运行跳转到codestart,
程序位于DSP2803x_CodeStartBranch.asm,这段程序可以自己改,最终这段程序运行完就跳转到_c_int00

_c_int00为了c语言运行做准备。主要完成了
1) 定义系统栈.stack,并初始化栈指针,配置相关寄存器
2) 初始化全局变量(.cinit)
3) 若使用C++,还会完成全局对象构造(.pinit)
4) 调用main函数运行C程序
5) 当main函数return时,调用exit函数
之后就跳转到main函数

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值