工具/软件:TI C/C++编译器
您好,
我有一些关于C6713 bootloader的问题。
1.从文件spra999a.pdf,表3。 复制表格式:
=>因此,从上表开始,复印表的第一个.字应该是第一部分的大小。 但在同一个文件中,给定的引导加载程序代码显示:
;************************************************************************
mvkl copy_table, a3 ;加载表指针
mvkh copy_table,A3
LDW * A3++,B1 ;加载入口点
问:最后一个指令如何加载入口点??? “这是不是Shouldñ 复制表格式的第一个指令的大小?”
2.假设我有一个链接器文件:
内存{
BootRam:org=0,len=400
iRAM:org=400,len=xyz
}
部分{
bootloader > BootRam
.text > IRAM
}
从生成的地图文件中,.text将被放置在0x400....如果我们想通过十六进制转换实用程序spru186p.pdf示例11.3 生成复制表,那么Copy表和.text部分是否应该在地址中重叠?? 我的hex6x生成的地图文件如下所示:
复制表设置: −bootorg 0x9000.04万
9000.04万..90000b0b启动9万启动表
text:btad=9000.04万 dest=400 size=6a0
我的意思是在0x400,复制表或.text处会存在什么?? 或.text将被六倍x下推??
3. 实际上我遇到了这些问题...所以我深入研究十六进制0和1,发现当复制表由十六进制转换实用程序创建时,此引导加载程序工作正常... 但是,如果这些复制表是根据 给定的复制表格式(Table-3)手动或通过链接程序脚本(图A−2,spra999)创建的,那么bootloader不应该工作,或者至少该bootloader不应该用于给定的复制表格式。我对吗?
此致,