ARM汇编的程序标号

[复制链接]
4724|15
 楼主| sunshitao 发表于 2011-9-23 16:19 | 显示全部楼层 |阅读模式
Default_Handler PROC
                EXPORT  WAKEUP_IRQHandler         [WEAK]
                EXPORT  CAN_IRQHandler            [WEAK]
                EXPORT  SSP1_IRQHandler           [WEAK]
                EXPORT  I2C_IRQHandler            [WEAK]
                EXPORT  TIMER16_0_IRQHandler      [WEAK]
                EXPORT  TIMER16_1_IRQHandler      [WEAK]
                EXPORT  TIMER32_0_IRQHandler      [WEAK]
                EXPORT  TIMER32_1_IRQHandler      [WEAK]
                EXPORT  SSP0_IRQHandler           [WEAK]
                EXPORT  UART_IRQHandler           [WEAK]
                EXPORT  USB_IRQHandler            [WEAK]
                EXPORT  USB_FIQHandler            [WEAK]
                EXPORT  ADC_IRQHandler            [WEAK]
                EXPORT  WDT_IRQHandler            [WEAK]
                EXPORT  BOD_IRQHandler            [WEAK]
                EXPORT  FMC_IRQHandler            [WEAK]
                EXPORT  PIOINT3_IRQHandler        [WEAK]
                EXPORT  PIOINT2_IRQHandler        [WEAK]
                EXPORT PIOINT1_IRQHandler        [WEAK]
                EXPORT PIOINT0_IRQHandler        [WEAK]

WAKEUP_IRQHandler
CAN_IRQHandler
SSP1_IRQHandler
I2C_IRQHandler
TIMER16_0_IRQHandler
TIMER16_1_IRQHandler
TIMER32_0_IRQHandler
TIMER32_1_IRQHandler
SSP0_IRQHandler
UART_IRQHandler
USB_IRQHandler
USB_FIQHandler
ADC_IRQHandler
WDT_IRQHandler
BOD_IRQHandler
FMC_IRQHandler
PIOINT3_IRQHandler  
PIOINT2_IRQHandler
PIOINT1_IRQHandler
PIOINT0_IRQHandler



想请教一下高手  程序标号不是代表的一段代码的首地址吗?上面的程序标号怎样代表一段代码的首地址?请懂ARM汇编的指点一下呃。。。
 楼主| sunshitao 发表于 2011-9-23 17:31 | 显示全部楼层
求解答与讨论。。。
老鱼探戈 发表于 2011-9-23 17:34 | 显示全部楼层
中断向量地址
 楼主| sunshitao 发表于 2011-9-23 17:40 | 显示全部楼层
3# 老鱼探戈
这个我知道,但是他后面为什么没有代码段呢?那么他们各自到底指的是哪一个代码?或者说是哪一个地址?
 楼主| sunshitao 发表于 2011-9-23 17:40 | 显示全部楼层
4# sunshitao
请赐教呃。。。
 楼主| sunshitao 发表于 2011-9-23 19:50 | 显示全部楼层
3# 老鱼探戈
大师
请赐教啊
HWM 发表于 2011-9-23 20:05 | 显示全部楼层
to LZ:

这是中断向量(地址)表,中断系统会根据具体的中断源选取其中的一个向量(地址)然后转入到此地址所指定的地方——中断服务程序ISR。

具体参看ARM和特定器件的手册说明。
 楼主| sunshitao 发表于 2011-9-23 21:26 | 显示全部楼层
7# HWM
不好意思  
前辈我还是不很明白
既然是地址表  ,那他们应该代表一个地址。。假如说在别的地方定义了这个标号的话,那他就代表那个地方的地址,如在c程序里定义中断服务函数void  I2C_IRQHandler(void) ,那中断向量表里存放的就是这个c程序的地址。这个我理解,因为是        EXPORT  USB_IRQHandler            [WEAK]
这是弱声明的意思。
但是假如说我c程序里没有定义中断服务函数,但是在中断发生时,他们代表的是哪一个地址?中断向量表里存放的又是什么?
  请前辈指点一下
HWM 发表于 2011-9-23 22:48 | 显示全部楼层
to 8L:

若无定义,则是一个缺省值。
 楼主| sunshitao 发表于 2011-9-24 07:27 | 显示全部楼层
9# HWM
哦,有点懂了,谢谢。arm汇编   。。。。。。。。
armmage 发表于 2011-9-24 12:46 | 显示全部楼层
泪流满面的告诉LZ  你用ADS 开 AXD 进到汇编模式下看 一目了然
 楼主| sunshitao 发表于 2011-9-24 13:04 | 显示全部楼层
11# armmage
谢谢  睡醒觉看一下,困的不行了,先睡觉了
armmage 发表于 2011-9-24 13:11 | 显示全部楼层
先泡杯茶 午睡半小时 洗个冷水脸   下午有精神 你懂的
 楼主| sunshitao 发表于 2011-9-24 14:17 | 显示全部楼层
13# armmage
MDK可看否?ADS木有用过啊。。。
armmage 发表于 2011-9-24 19:04 | 显示全部楼层
MDK 我也刚在学 估计也可以吧  就是用JTAG连上板子 进入在线调试环境 然后找 assemble 一类的窗口 就是你的C语言被编译成汇编的窗口  找到启动代码段  你就能很清楚的看到 汇编标号 和对应地址 以及用跳转指令跳到这个标号 等等······ 我用AXD看的很明白  MDK应该也行
 楼主| sunshitao 发表于 2011-9-24 19:21 | 显示全部楼层
15# armmage
我找到了,但是传不上图片来  哎
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

111

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部