微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > 请教版主,我用的dec33的评估板,想问个bootload的问题?

请教版主,我用的dec33的评估板,想问个bootload的问题?

时间:10-02 整理:3721RD 点击:
我用的dec33的评估板,我看了它的例子,bootloader.asm和主程序代码没有联系,生成了一个out文件,把这个文件烧进去后,bootloader.asm是怎么运行的啊,没看到对这个程序的调用什么的,是通过什么实现的啊?请高手指教!万分感谢!

这是通过_c_int00调用的,初始化运行环境

_c_int00:
;
; Set up the initial stack pointer
;
LDI MMR1,AR0
LSH 9,AR0
LDI PBCR_VAL,R0 ;Init STRB Control Register
STI R0,*+AR0(PBCR)
LDP stack_addr ;get page of stored address
LDI @stack_addr,SP ;load the address into SP
LDI SP,FP ;and into FP too
IACK *AR1
;
; Do autoinitialization
;
LDP init_addr ;get page of stored address;
LDI @init_addr,AR0 ;get address of init tables
CMPI -1,AR0 ;if RAM model, skip init
BEQ done
LDI *AR0++,RC ;get first count
BZD done ;if 0, nothing to do
LDI *AR0++,AR1 ;get dest address
LDI *AR0++,R0 ;get first word
SUBI 1,RC ;count - 1
do_init:
RPTB init ;block copy
init: STI R0,*AR1++
|| LDI *AR0++,R0
LDI R0,RC ;move next count into RC
OR R0,R0 ;test r0 for zero
BNZD do_init ;if there is more, repeat
LDI *AR0++,AR1 ;get next dest address
LDI *AR0++,R0 ;get next first word
SUBI 1,RC ;count - 1
done:
;
; For the small model, set up the DP to point to the .bss section
;
LDP .bss
;
; Call main()
;
CALL _main
CALL _exit
RETI
.end
这里面那几句是关于调用bootloader。a\'sm的啊,请高手指教!

我看到_c_int00只是对一些变量进行初始化,没看到怎么调用bootloader往flash写程序的啊,请指教!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top