单片机
返回首页

ARM裸机开发222440中断原理

2016-06-06 来源:eefocus

1CPU与外设之间的数据传送控制方式(I/O控制方式)

通常有以下三种方式

1.查询方式

2.中断方式

3.DMA方式(在独立开辟的一个空间不由CPU控制,有DMA自己进行管理。实现存储器与外设的高速的数据传输方式)

 

主要讲中断:

中断请求---->中断仲裁---->中断响应---->中断处理---->中断返回(要保存现场)

 

中断处理流程:

1.中断控制器捕获当前外设发出的中断信号,通知SOC(中央处理芯片:片上系统)

2.SOC保存当前程序的运行环境,调用中断服务程序(ISR:一小段代码)进行处理中断

3.在ISR中通过读取中断控制寄存器、外设的相关寄存器来识别那一个中断触发,获取硬件中断号IRQ,跳转到相应的处理程序(详细完整的处理程序)来完成中断处理

4.清除中断:通过读写相关寄存器

5.恢复被中断的环境,继续执行(现场)

 

 

2440有60个中断源

一级中断源,二级中断源等的概念

ARM裸机开发222440中断原理
 

图片中的所指示的单元为相应的寄存器

悬挂寄存器source pending(SUBSRCPND、SRCPND)清零方式为向相应的位写1.与 常规的清零方式不同。INTPND也是通过写1进行清0操作

 

INTOFFSET:这个寄存器用来表示INTPND寄存器中哪位被置1了,即INTPND寄存器中位为1时,INTOFFSET寄存器的值为x(x为0~31)

在清除SRCPND、INTPND寄存器时,INTOFFSET寄存器被自动清除。

具体内容详见芯片手册S3C2440

 

外部中断:

外部中断也有相关的寄存器EXTINTx,EINTMASK,EINTPEND三个寄存器

EXTINTx设置中断的触发方式低电平,高电平,上升沿,下降沿,边沿触发

 

ARM裸机开发222440中断原理
 

EINTMASK

ARM裸机开发222440中断原理
 

EINTPEND中断悬挂寄存器(相应中断触发,相应的位置1)读取此寄存器可以知道是那一个寄存器被触发了

ARM裸机开发222440中断原理
 

 

 

 

进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • PIC单片机控制的遥控防盗报警器电路

  • 红外线探测报警器

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 开关电源的基本组成及工作原理

  • 用NE555制作定时器

    相关电子头条文章