收藏 分享(赏)

S3C44B0X 中断控制器功能及应用.pptx

上传人:nacm35 文档编号:5937761 上传时间:2019-03-21 格式:PPTX 页数:30 大小:1.45MB
下载 相关 举报
S3C44B0X 中断控制器功能及应用.pptx_第1页
第1页 / 共30页
S3C44B0X 中断控制器功能及应用.pptx_第2页
第2页 / 共30页
S3C44B0X 中断控制器功能及应用.pptx_第3页
第3页 / 共30页
S3C44B0X 中断控制器功能及应用.pptx_第4页
第4页 / 共30页
S3C44B0X 中断控制器功能及应用.pptx_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、S3C44B0X 中断控制器功能及应用,第16小组 SA11011910 王涛 SA11011913 张海博,主要内容,S3C44B0X 中断概述 S3C44B0X 中断控制器 S3C44B0X 中断控制寄存器 S3C44B0X 中断控制器应用,S3C44B0X 的中断控制器概述,S3C44B0X中断源(30个): 1个看门狗定时器;6个定时器;6个UART; 8个外部中断EINT0-7;4个DMA; 2个RTC; 1个ADC; 1个IIC;1个SIO 中断控制器的功能 响应来自FIQ(快速中断请求)或IRQ(普通中端请求)的中断,并请求内核对中端进行处理;当有多个中断同时发生时,中断控制器要

2、决定首先处理哪一级中断。,S3C44B0X中断控制器,特点概述 支持30个中断源,包括8个外部中断源 中断控制器支持26个中断信号,其中外部中断4/5/6/7复用到一个中断信号上(读EXTINTPND寄存器来判断) 每个中断信号处理均可独立设置成FIQ (快速中断请求)或者IRQ (普通中断请求)模式 中断信号处理均可采用矢量处理方法或者非矢量处理方法 支持中断优先级排队,中断模式,ARM7TDMI有2种类型的中断模式: FIQ和IRQ。 两种模式之间的区别: FIQ必须尽快处理事情并离开这个模式; IRQ可以被FIQ中断,但IRQ不能中断FIQ; 为使FIQ跟更快,FIQ模式具有更多的私有寄

3、存器。,PSR的F位和I位,PSR 指 ARM7TDMI处理器的程序状态寄存器 PSR7:I=1,处理器不接收来自IRQ的中断; PSR8:F=1 处理器不接收来自FRQ的中断 为了使能中断机制,PSR的I或F位必需清零,同时中断屏蔽寄存器(INTMSK)的相应位也必须清零。,中断源,有26个中断源提供给中断控制器。 4个外部中断(EINT4/5/6/7)相或送中断控制器。 2个UART错误中断(UERRO/1)相或送中断控制器。 中断源的详细信息见下表。,中断源详细列表,中断源列表说明,EINT4、EINT5、EINT6、EINT7共用一个中断请求源; 中断程序通过读寄存器EXTINTPND

4、3:0,来区别4个中断源; 在中断处理程序结束时,EXTINTPND3:0必须清除。,中断源矢量地址,30个中断源,26个中断矢量; EINT4/5/6/7 共用一个中断矢量地址; INT_UERR0/1共用一个中断矢量地址。 详细见下表。,中断源矢量地址表,中断优先级模块,中断优先级模块,中断优先级产生模块包含5个单元,1个主单元,4个辅助单元; 每个辅助单元有4个可编程的优先级源(sGn)和2个固定的优先级源(sGKn); 2个固定的优先级源在6个中断源中优先级是最低的。 主单元决定了4个辅单元和2个中断源 (INT_RTC、INT_ADC)之间的优先级排列;,中断优先级,FIQ中断比IR

5、Q中断有更高的优先级; 位于sGA,sGB,sGC,sGD的优先级总是高于位于sGKA,sGKB的中断优先级; 在sGA,sGB,sGC,sGD之间的优先级高低是可编程的或通过轮转方式来决定; 在sGKA和sGKB之间, sGKA总是拥有更高的优先级; mGA,mGB,mGC,mGD组中的优先级总是高于 mGKA和mGKBmGKA和mGKB在所有中断源中优先级是最低的; mGA,mGB,mGC,mGD组中的优先级是可编程的或通过轮转方式决定的; mGKA和mGKB之间, mGKA总是有更高的优先级。,中断控制寄存器INTCON,地址:0x01E00000, 初值:0x7 选择中断的模式,IRQ

6、及FIQ的使能设置,中断控制寄存器INTPND,地址:0x01E00004 某个中断发生时,INTPND中的相硬位置1; 清除INTPND的方式是向I_ISPC/F_ISPC的相应位置1; INTPND中的 pending位不能被INTMSK屏蔽。 INTPND寄存器的位定义表如下:,INTPND寄存器位定义,中断模式寄存器INTMOD,地址:0x01E00008 相应位置1选FIQ模式,位清除选IRQ模式。 具体位定义见下图,INTMOD寄存器位定义,中断屏蔽寄存器INTMSK,地址:0x01E0000C 除全局屏蔽位,其余26位依次对应着每个中断源; 屏蔽位为0,则CPU将对中断请求响应;

7、 全局屏蔽位置1,所有中断请求都不会被响应。 INTMSK的位定义如下表:,INTMSK寄存器位定义,IRQ矢量模式寄存器,与IRQ矢量模式相关的寄存器如下表,1.主单元优先级寄存器I_PMST,地址:0x01E00014 优先级产生模块包括5个单元:1个主单元,4个辅单元; 主单元管理4个可编程优先级的辅单元和2个中断源。 辅单元优先级通过对I_PMST寄存器设置决定; 2个中断源INT_RTC和 INT_ADC在26个中断源中优先级最低。,2.辅单元优先级寄存器I_PSLV,地址:0x01E00010 每个辅单元管理6个中断源:4个可编程优先级中断 源(sGn)优先级通过I_PSLV寄存器

8、设定; 2个固定优先级中断源(Kn)在6个中断源中优先级最低。,3.当前辅单元中IRQ中断优先级寄存器I_CSLV 地址:0x1E00018 I_CSLV表明辅单元中断源中当前的优先级状态 当前主单元中辅单元和IRQ中断源的优先级寄存器 I_CMST 地址: 0x01E0001C I_CMST表明当前主单元中辅单元和IRQ中断源的优先级。,5. IRQ/FIQ中断挂起清零寄存器I_ISPC/F_ISPC,地址:0x01E00024/0x01E0003C 主要作用:在某个中断结束时,通过向I_ISPC/F_ISPC相应位写1来清除中断挂起寄存器INTPND中的中断挂起位。,I_ISPC/F_IS

9、PC的位定义,S3C44B0X 中断控制器应用,使用按钮SB2触发EINT6,LED1亮,同时8段数码管由0到F显示1次,8段数码管显示完后,LED1熄灭。 使用按钮SB3触发EINT7,LED2亮,同时8段数码管由F到0显示1次,8段数码管显示完后,LED2熄灭。,中断的产生分别来自按钮SB2和SB3,当按钮按下时,EXINT6或EXINT7和地连接,输入低电平,从而向CPU发出中断请求。当CPU接受中断后,进入相应的中断服务程序,实现LED1或LED2的显示功能。 由于EXINT6和EXINT7是共用一个中断控制器,所以在同一时间内CPU只能受理其中一个中断,也就是说,当按钮SB2按下进入中断后,再按SB3是没用的,CPU在处理完EXINT6中断前是不会受理来自EXINT7的中断。,谢谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 大学论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报