Chinaunix首页 | 论坛 | 博客
  • 博客访问: 520641
  • 博文数量: 85
  • 博客积分: 1797
  • 博客等级: 上尉
  • 技术积分: 1236
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-02 08:53
个人简介

职位:技术总监 1、精通c++(linux平台、vc++Mfc、qt)、java、php、unity3d,略懂python 2、用c++开发过嵌入式产品,用c++开发过大型银行运维产品 3、用java开发大型银行运维产品,学校教务系统 4、用php开发进销存系统(在销售中),用php开发淘宝小程序 5、用unity3d开发衣柜设计软件,在运营中

文章分类

全部博文(85)

分类: 嵌入式

2011-09-21 22:19:26

㈠首先中断来了,芯片会把程序指针指到这
非向量中断模式
    b HandlerIRQ
    b HandlerFIQ
中断向量模式:
    ldr pc,=HandlerEINT0    ;mGA    H/W interrupt vector table
    ldr pc,=HandlerEINT1    ;
    ldr pc,=HandlerEINT2    ;
    ldr pc,=HandlerEINT3    ;
    ldr pc,=HandlerEINT4567 ;
    ldr pc,=HandlerTICK     ;mGA
    b .
    b .
    ldr pc,=HandlerZDMA0    ;mGB
    ldr pc,=HandlerZDMA1    ;
    ldr pc,=HandlerBDMA0    ;
    等等
(注:这只说向量中断模式)
㈡以HandlerTIMER5为例
   执行这个函数宏HandlerTIMER5 HANDLER HandleTIMER5
HANDLER 宏的作用是把ip指针指到HandleTIMER5处,HandleTIMER5是flash中的一个地址,有着一句分配HandleTIMER5 # 4,基址这样定义 ^ _ISR_STARTADDRESS
㈢这个地址中存的应该就是中断函数的地址。到c语言中找这个地址,这一句就是
#define pISR_TIMER5 (*(unsigned *)(_ISR_STARTADDRESS+0x40))
㈣pISR_TIMER5 看到它就像看到希望一样, 把我们的中断函数赋给它就大功告成了
pISR_TIMER5=(U32)Timer5Int;

阅读(1494) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~