2410 bootloader中的2410init.s文件中定义中断向量表的时候,有一句^ _ISR_STARTADDRESS,这个^是什么意思?

xsmao520   2009-5-25 20:37 楼主

            ALIGN

    AREA RamData, DATA, READWRITE

    ^   _ISR_STARTADDRESS
HandleReset     #   4
HandleUndef     #   4
HandleSWI       #   4
HandlePabort    #   4
HandleDabort    #   4

1).这个^起什么作用的呢?

另外,
2). bootloader设定的中断向量表在启动win ce系统之后是不是就没用了?应该不会传给ce吧?
3). 那么是win ce在启动之后, 自己又重新设定了中断向量表?在哪个文件中设定的呢?又把向量表保存在哪了?

谢谢大家了……

回复评论 (6)

1就是获得ISR_STARTADDRESS的地址。在ARM官文上有讲只是很细,比较难找

2 没有用了,进入CE后会重新初始化中断向量的。
3. 你看startup.s看他跳到哪里了就找到了。
点赞  2009-5-25 20:55
我有翻ARM Architecture Reference Manual和ARM Developer Suite Assembler Guide,都没找到这个“^”是个啥作用……
HandleReset    #  4
HandleUndef    #  4
HandleSWI      #  4
HandlePabort    #  4
HandleDabort    #  4
这几句是给每个标号分配四个字节的空间么

我在我这份2410bootloader中没找到有startup.s,在微软提供的eboot例子里面倒是有一个startup.s,最后跳到KernelStart了。
这个KernelStart是Nk.exe的入口?
不过还是没发现进入系统之后中断向量表保存字哪…… @_@

能不能明示一下下...
点赞  2009-5-25 21:31
startup.s指的是OAL下的。

都说 1问难找了。我也是后来看到的。
点赞  2009-5-25 21:49
1).这个^起什么作用的呢?
2). bootloader设定的中断向量表在启动win ce系统之后是不是就没用了?应该不会传给ce吧?
3). 那么是win ce在启动之后, 自己又重新设定了中断向量表?在哪个文件中设定的呢?又把向量表保存在哪了?

1.
^,是ARM汇编中的一个伪操作,和MAP是同义词,用来定义一个结构化的内存表的首地址。
#,也是一个伪操作,和FIELD是同义词,用来定义结构化的内存表中的一个数据域。

2.
CE会再初始化中断向量表。
3.
OAL的startup.s中会调用KernelStart,里面会设置向量表。可以参考%_WINCEROOT%\PRIVATE\WINCEOS\COREOS\NK\KERNEL\ARM\armtrap.s。
点赞  2009-7-30 13:23
学习
点赞  2009-7-30 13:32
学习
点赞  2009-7-30 16:05
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复