您的位置 首页 新品

ARM裸机开发222440中止原理

1CPU与外设之间的数据传送控制方式(I/O控制方式)通常有以下三种方式1.查询方式2.中断方式3.DMA方式(在独立开辟的一个空间不由CPU控制,…

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

一般有以下三种方法

1.查询方法

2.中止方法

3.DMA方法(在独立拓荒的一个空间不由CPU操控,有DMA自己进行办理。完结存储器与外设的高速的数据传输方法)

主要讲中止:

中止请求—->中止裁定—->中止呼应—->中止处理—->中止回来(要保存现场)

中止处理流程:

1.中止操控器捕获当时外设宣布的中止信号,告诉SOC(中央处理芯片:片上体系)

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

3.在ISR中经过读取中止操控寄存器、外设的相关寄存器来辨认那一个中止触发,获取硬件中止号IRQ,跳转到相应的处理程序(具体完好的处理程序)来完结中止处理

4.铲除中止:经过读写相关寄存器

5.康复被中止的环境,持续履行(现场)

2440有60个中止源

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

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

悬挂寄存器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设置中止的触发方法低电平,高电平,上升沿,下降沿,边缘触发

EINTMASK

EINTPEND中止悬挂寄存器(相应中止触发,相应的方位1)读取此寄存器能够知道是那一个寄存器被触发了

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/325898.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部