Lemonade
Published on 2025-04-13 / 3 Visits
0
0

RH850 集成和调试寄录

Background: RH850F1K

系统启动

复位地址:* 0x0000 00000

中断向量表偏移:

SR2, 1(RBASE):复位中断向量表地址. READONLY

  • PSW.BEV0,它还作为异常中断向量表的地址。

  • If the exception handler address for interrupt servicing is reduced. 当PSW.BEV为0时有效。

  • Set the reset vector. Default is 0x0000 0000.

SR3, 1(EBASE):异常中断向量表地址.

  • PSW.BEV1,下列设置有效.

  • If the exception handler address for interrupt servicing is reduced.

  • Set the exception vector. Default is undefined.

SR4, 1(INTBP):Table reference方法下的(*一般)中断向量表地址.

  • 当中断设置为表格参考时有效。

  • Set the interrupt handler vector. Default is undefined.

GHS v7.1.6 - elxr链接器

See: MULTI: Building Applications for Embedded V850 and RH850.

Predefined Program sections

  • .secinfo - 由Linker生成相关数据,其中包含程序的Layout,主要用于确定上电时需要初始化(bss类型 or data类型)的section,本质上与section的属性有关。

Default Program sections

  • .text - 包含可执行代码段。

  • .data - 具有显式初始化非零数据的符号段。

  • .bss - 具有隐式初始化为零但不是COMMON类型的符号段(for example, static int j;)。

  • .rodata - 具有只读属性的符号段。

  • COMMON - 具有隐式初始化为零的全局符号段(无static)。

此处省略其它data和bss段的变种,例如sdata,sbss,zdata,zbss等。它们都是Linker默认定义的段,与data和bss段的行为类似。只不过具有相关的硬件优化。

User Program sections

  • 自定义的bss段- 不论section的名称,可以为该section增加section属性,例如'clear',在启动时会将该段清零。

  • 自定义的data段 - 不论section的名称,需要定义一段与之相关的具有'ROM(该RAM段名称)'属性的一个Rom段,在启动时该Ram段将会被初始化为Rom段中的内容。


Comment