[其他ST产品] str7 中断问题!急!急!在线

[复制链接]
2633|5
 楼主| abcdefghijklmn 发表于 2009-8-21 08:59 | 显示全部楼层 |阅读模式
我使用的是str711

本来我的程序都是在FLASH中运行的,现在想把中断移到ram中运行。我把0x40000000前64byte复制到0X20000000。然后remap使ram地址为0。

现在碰到的问题是,当发生中断时可以跳转到中断向量中,但是在IRQ中跳到每个分支的时候出现错误,得到的地址是错误的,从而造成程序跑飞了。Fiq是可以的。

希望各位大侠给个帮助!!在线等,急
 楼主| abcdefghijklmn 发表于 2009-8-21 09:07 | 显示全部楼层
 楼主| abcdefghijklmn 发表于 2009-8-21 10:28 | 显示全部楼层
香水城 发表于 2009-8-21 10:55 | 显示全部楼层
请仔细看看,你复制的中断向量表中的向量是绝对地址跳转还是相对地址跳转,如果是绝对地址跳转则可以直接复制,如果是相对地址跳转则需要变换之后才能使用。
 楼主| abcdefghijklmn 发表于 2009-8-21 11:12 | 显示全部楼层
;*******************************************************************************
;                        Exception vectors
;*******************************************************************************

        LDR     PC, Reset_Addr
        LDR     PC, Undefined_Addr
        LDR     PC, SWI_Addr
        LDR     PC, Prefetch_Addr
        LDR     PC, Abort_Addr
        NOP                             ; Reserved vector
        LDR     PC, IRQ_Addr
        LDR     PC, FIQ_Addr

;*******************************************************************************
;               Exception handlers address table
;*******************************************************************************

Reset_Addr      DCD     Reset_Handler
Undefined_Addr  DCD     UndefinedHandler
SWI_Addr        DCD     SWIHandler
Prefetch_Addr   DCD     PrefetchAbortHandler
Abort_Addr      DCD     DataAbortHandler
                DCD     0               ; Reserved vector
IRQ_Addr        DCD     IRQHandler
FIQ_Addr        DCD     FIQHandler




是开发板带的例子,应该是绝对地址跳转。
 楼主| abcdefghijklmn 发表于 2009-8-21 11:13 | 显示全部楼层
如果没错的话,应该是可以中断,但是实际上我的不行
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

9

帖子

0

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