如何用华大单片机在IAR中分配地址,可实现bootloader和app调用成功
·
针对芯片华大HC32F002进行boot和app的分层,app的程序更改需要2个步骤才能使用,在开发工具的KEIL和IAR中都是偏移中断向量表和起始地址。
步骤一:修改起始地址
以IAR开发工具为例,修改项目的options-->linker-->config的xxx.icf文件。具体看图1和图2来修改链接配置文件(.icf)的起始地址。


步骤二:修改中断向量表的偏移地址
以上中断偏移未成功,需要修改startup_hc32f002.s文件中的LDR R2,=0(中断向量表的偏移地址); 改为0x2000(想要的偏移地址),如图3所示。

针对芯片华大HC32F448进行boot和app的分层,app的程序更改需要2个步骤才能使用,在开发工具IAR中通过修改中断向量表和起始地址。
步骤一:修改起始地址
修改本程序连接的xxx.icf文件,改起始地址rom1_base_address为想要的地址。同时options->linker-->config勾选“Linker configuration file”。具体设置如图所示。


步骤二:修改中断向量表的偏移地址
修改system_hc32f448.c文件中的SCB->VTOR=VECT_TAB_OFFSET;
将VECT_TAB_OFFSET修改为想要的地址,设置地址和步骤一的起始地址相同。


更多推荐

所有评论(0)