4064|8

66

帖子

1

TA的资源

一粒金砂(初级)

楼主
 

在2410的Eboot中的中断如何挂接? 中断向量表如何设置? 为什么是ADS中编译没问题的程序在PB中编译不通过? [复制链接]

1.在2410的Eboot中的中断如何挂接?
2.中断向量表如何设置?
3.为什么在ADS中编译没问题的程序在PB中编译不通过?

最新回复

没解决呢,虽然编译过去了,可是中断还是挂不上啊,唉,愁  详情 回复 发表于 2007-2-9 17:05
点赞 关注

回复
举报

76

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
哪位大师能帮着指点一下啊?
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
没有人了解么?愁死了
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

4
 
不是很清楚.
给你找的.
ARM中断向量两种设置方法

在32位ARM系统中,一般都是在中断向量表中放置一条分支指令或PC寄存器加载指令,实现程序跳转到中断服务例程的功能。例如:

IRQEntry B HandleIRQ ;跳转范围较小

B HandleFIQ

或IRQEntry LDR PC,=HandleIRQ ;跳转的范围是任意32位地址空间

LDR PC,=HandleFIQ

LDR伪指令等效生成1条存储读取指令和1条32位常数定义指令。32位常数存储在LDR指令附近的存储单元中,相对偏移小于4KB。该32位数据就是要跳转到的中断服务程序入口地址。

之所以使用LDR伪指令,是因为ARM的RISC指令为单字指令,不能装载32位的立即数(常数),无法直接把一个32位常数数据或地址数据装载到寄存器中。下面一般程序与上述伪指令功能等效,但中断向量表描述得更为清晰。其中VectorTable为相对LDR指令的偏移量:

IRQEntry LDR PC,VectorTable+0

;与LDR PC,=HandleIRQ等效

LDR PC,VectorTable+4

;与LDR PC,=HandleFIQ等效

……

VectorTable DCD HandleTRQ

DCD HandleFIQ

……

HandleIRQ

……

HandleFIQ

一般ARM嵌入式系统的程序都是固化在从00000000H开始的低端ROM空间中,中断向量表VectorTable也是固化在ROM中,所以上述两种方法都无法在程序运行时动态随机修改中断向量表。不论对于初学ARM处理器的程序员还是有经验的程序员,设置中断向量都相当繁琐,必须修改ARM的C程序的启动代码。一段晦涩的汇编代码很不方便,比较容易出错。

 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

5
 
blueoceanli(谋定而动)
首先谢谢你的支持,你帮我找的我也好过了,这些内容我在别的地方也看过,并且关于USB的中断,我在NBOOT中已经测试过了,可以挂接,但是移植到EBOOT中首先是编就不通过,所以非常郁闷,但还是要谢谢你.
继续请教.
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

6
 
用PB编译后的错误为:
c:\wince420\platform\smdk2410\kernel\hal\cvtres() : error CVT1107: 'obj\ARMV4\retail\fw.obj' is corrupt
c:\wince420\platform\smdk2410\kernel\hal\obj\armv4\retail\fw.obj() : error LNK1123: failure during conversion to COFF: file invalid or corrupt

我是在fw.s中修改中断量向表,不知道这是因为什么呢?
请各位大师指点一下啊
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

7
 
顶顶顶顶顶
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

8
 
楼主解决了,告诉方法了,偶也学习中.........
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

9
 
没解决呢,虽然编译过去了,可是中断还是挂不上啊,唉,愁
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表