利用外部中断实现清零_大工13春《嵌入式原理与开发》辅导资料十三
大工13春《嵌入式原理与开发》辅导资料十三
2013-08-29 07:08:34
905
有学员问关于大工13春《嵌入式原理与开发》辅导资料十三的题目的参考答案和解析,具体如下:
大工13春《嵌入式原理与开发》辅导资料十三
主 题: 第四章 基于ARM的硬件系统结构设计(第1节)
学习时间: 2013年6月24日-6月30日
内 容:
这周我们将学习第四章基于ARM的硬件系统结构设计,第四节通用输入/输出接口GPIO设计 、中断系统设计,下面整理出的理念框架供同学们学习。
4.4 处理器接口电路、中断系统的设计
4.4.1 通用输入/输出接口GPIO设计
嵌入式系统的GPIO接口引脚数量较多;
例如,S3C44BO有71个,S3C2410有117个,PXA255有84个GPIO管脚, PXA270有120个GPIO管脚。
它们与处理器之间的连接一般不使用系统总线,而是直接连接在处理器的引脚上;
每个I/O引脚可被编程设置成为普通的输入或输出状态。
如被作为输入端时,该GPIO管脚可被设置工作在中断方式或查询方式。但当系统被复位后,所有的GPIO管脚的默认值为输入状态。
有些GPIO管脚还通过设置具有第二功能。
每个处理器内的GPIO又分成若干个组(端口),每组称为一个I/O接口。每个接口含有10-20多个引脚不等。
2.编址形式
ARM采用存储器与I/O统一编址的方式,即把I/O端口当作为特殊的存储器地址来对待处理。
比如S3C44B0X微处理器芯片,芯片内部具有71个GPIO引脚,分别包含在如下7组端口中:
1个10位输出端口(端口A);
1个11位输出端口(端口B);
1个16位输入/输出端口(端口C);
2个8位输入/输出端口(端口D和G);
2个9位输入/输出端口(端口E和F)。
S3C2410处理器GPIO设计与应用
S3C2410X有8个端口,117个输入/输出引脚。这些端口是:
A口(GPA):23个输出口
B口(GPB):11个输入/输出口
C口(GPC):16个输入/输出口
D口(GPD):16个输入/输出口
E口(GPE):16个输入/输出口
F口(GPF):8个输入/输出口
G口(GPG):16个输入/输出口
H口(GPH):11个输入/输出口
端口寄存器及引脚配置
每一个端口都有4个寄存器,它们是:引脚配置寄存器、数据寄存器、引脚上拉寄存器等。其中,x代表具体端口号,如A~G
(1)端口A寄存器及引脚配置
GPADAT寄存器为准备输出的数据其值为23位[22:0]
注意:
(1)当A口引脚配置为非输出功能时,其输出无意义
(2)从引脚输入没有意义。
(3)端口C寄存器及引脚配置
GPCDAT---为准备输出或输入的数据
其值为16位[15:0]
GPCUP---端口C上拉寄存器,位[15:0]有意义。
0:对应引脚设置为上拉 1:无上拉功能
注意:当C口引脚配置为非输入/输出功能时,其寄存器中的值没有意义。
其他GPIO配置寄存器
对端口的特殊功能状态进行设置的寄存器:
GPDR(方向寄存器):负责设置GPIO的输入、输出功能。
GPSR(输出置位寄存器):在输出模式下,可以通过GPSR设置GPIO管脚上的高电平值。
GPCR (输出清零寄存器):在输出模式下,可以通过GPCR设置GPIO管脚为低电平值
GPIO的配置
GPLR(引脚状态寄存器):当某管脚设置为输入模式时,读GPLR(引脚状态寄存器)的内容可以反映当前GPIO管脚的状态。
GPER是探测上升沿使能的专用寄存器;
GFER是探测下降沿使能的专用寄存器;
GEDR是探测上升下降沿使能的专用寄存器;
GAFR是设置第二功能寄存器。
4.4.2 中断异常方式的设计
嵌入式系统中一般具有与硬件、软件相关的中断源、软件错误相关的中断源、为调试程序而设置的中断源和系统分时所用的中断源。还有具有快速中断源FIQ和一般I/O中断源IRQ。执行中断要经过三个环节:中断响应、中断处理和中断返回。
1. .中断方式处理过程
在系统对外部事件做出反应的过程中,中断响应是第一个环节,主要的任务是确定中断源。然后根据中断源指引CPU进入具体的中断处理程序。
由于芯片的引线数量受到的限制,因此很难为CPU芯片带足够多的中断请求线。这样一来,为了确定中断源的来源,就需要采用如下的辅助的手段,来实现这个功能。
辅助手段有以下二种形式:
(1)为了防止多个外设同时发出中断向量而形成冲突的情况,中断源通过数据总线提供 一个“中断向量”。并所有可能成为中断源的设备连接成一条“中断链”,在“中断链”的不同位置应具有不同的优先级。
(2)在外部提供一个“集线器”,称为“中断控制器”。它为外设提供多条中断请求线。并通过一个专用寄存器,记录当前的(综合)中断请求来自哪条外部中断请求线,而CPU则可以像访问外设一样读出这个寄存器的内容,以确定中断请求的来源。
1)GPIO中断接口分类
GPIO是一个通用的可编程的I/O接口,其接口寄存器中的每一位都可以分别在程序的控制下设置成用于输入或者输出。
当用于输入的时候,还可以让每一位的状态变化都引发一个中断请求。
例如:S3C44BOX具有30个中断源,包括1个看门狗定时器,6个定时器,6个UART,8个外部,4个DMA,2个RTC,1个ADC,1个IIC和1个SIO中断源。
2)控制中断的寄存器
(1)中断控制寄存器;
(2)中断请求寄存器;
(3)中断模式寄存器;
(4)中断屏蔽寄存器;
(5)IRQ矢量模式寄存器;
(6)IRQ/FIQ中断服务寄存器;
(7)外部中断控制寄存器;
(8)外部中断请求寄存器
3)系统异常中断种类
复位中断(reset)
未定义的指令中断
软件中断
指令预取中止
数据访问中止
外部中断请求
快速中断请求
异常是由内部或外部源产生的,需要处理器处理的一个事件。
4)外部中断的应用
(1) I/O口设置
首先对PG口的工作模式进行设置,要让PG4-7工作在外部中断输入状态。因此,要将PG口设置在功能3模式下,采用语句:
rPCONG= 11 11 11 11 xx xxxxxxB;
如果希望采用内部上拉,则语句为:
rPUPG= 0000xxxxB。
(2)外部中断触发模式设置利用外部中断控制寄存器来设置外部中断的触发模式。
①采用下降沿触发时:
rEXTINT= 01x 01x 01x 01x xxx xxxxxxxxxB;
②采用上升沿触发时:
rEXTINT=10x 10x 10x 10x xxx xxxxxxxxxB;
③采用边沿触发时:
rEXTINT=11x 11x 11x 11x xxx xxxxxxxxxB;
④采用低电平触发时:
rEXTINT=000 000 000 000 xxx xxxxxxxxxB;
2.S3C2410中断系统简介
S3C2410X中断控制器有56个中断源;
对外提供24个外中断输入引脚;
内部所有设备都有中断请求信号,例如DMA控制器、UART、IIC等等。
(2)中断优先级仲裁器及工作原理
(3)中断控制器专用寄存器
本节习题
1. ARM采用什么样的编址方式?
ARM采用存储器与I/O统一编址的方式,即把I/O端口当作为特殊的存储器地址来对待处理。
2,执行中断要经过哪三个环节?
中断响应、中断处理和中断返回。
3,系统异常中断分为哪几类?
复位中断(reset)
未定义的指令中断
软件中断
指令预取中止
数据访问中止
外部中断请求
快速中断请求
上面就是题目内容,学校没有给相关的资料,自己做的大都没有把握
请老师帮忙给出正确答案,谢谢!
利用外部中断实现清零_大工13春《嵌入式原理与开发》辅导资料十三相关推荐
- 大工17春计算机基础,[方案]大工10春《计算机基础》辅导资料五
[方案]大工10春<计算机基础>辅导资料五 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 计算机基础辅导资料五主 题:恥 ...
- python语言与c语言相比在分支结构上有什么不同_大工20春 C/C 语言程序设计 在线作业3 - 百度文库...
大工20春<CC++语言程序设计>在线作业3答案 大工20春<C/C++语言程序设计>在线作业3 红字部分为答案! 单选题 1.C语言中,下列合法的字符型常量是(). A.&q ...
- python数据挖掘例题_大工20春《数据挖掘》在线作业1题目【标准答案】
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 大工20春<数据挖掘>在线作业1 试卷总分:100 得分:100 一.单选题 (共 10 道试题,共 50 分) 1.下面标识符中不是Pyth ...
- 大工20春计算机原理在线作业二,大工20春《计算机原理》在线作业【答案满分】...
大工20春<计算机原理>在线作业1 共20道题 总分:100分 答题中 单选题 判断题 一.单选题 共10题,50分 1 5分 下列说法正确的是(). A微处理器就是一台微机 B微处理器为 ...
- 大工20春计算机原理在线作业二,大工20春《电力电子技术》在线作业2(答案100分)...
[奥鹏]-[大连理工大学]大工20春<电力电子技术>在线作业2 试卷总分:100 得分:100 第1题,单相半波可控整流电路带电阻负载情况下,晶闸管VT的触发角的移相范围为( )度 ...
- 微型计算机作为载体的部件是,大工11秋《计算机应用基础》辅导资料二
计算机应用基础辅导资料二 主题:计算机基础知识的辅导资料 学习时间:2011年10月10日-10月16日 内容: 这周我们主要学习课件 ..第二章计算机的基础知识,本章的学习要求及需要掌握的重点内容如 ...
- 51单片机:利用外部中断实现按键按一下数码管数字加1直到加到99,另一个按键实现清零
51单片机:利用外部中断实现按键按一下数码管数字加1直到加到99,另一个按键实现清零 题目要求: 利用外部中断实现按键按一下数码管数字加1,实现00-99的循环,另一个按键实现清零,不管数码管数字是多 ...
- Arduino UNO利用外部中断测量RC接收器PPM脉宽
Arduino UNO利用外部中断测量RC接收器PPM脉宽 PPM信号 PPM信号是将多个控制通道(一般10个控制通道)集中放在一起调制的信号.也就是一个PPM脉冲序列里面包含了多个通道的信息.如下图 ...
- 计算机组成原理_在线作业_2,大工18春《计算机组成原理》在线作业2辅导资料.docx...
大工18春<计算机组成原理>在线作业2辅导资料.docx 大工 18 春计算机组成原理在线作业 2 1. C 2. D 3. D 4. A 5. D 一.单选题共 10 题, 50 分 1 ...
最新文章
- 侠客风云传服务器维护,《侠客风云传online》4月20日服务器数据互通公告
- Java多线程之死锁编码及定位分析
- 摆成“吉”字的一万响鞭炮
- java boxplot_java – 具有多个类别的Boxplots的JFreeChart缩放
- CAP定理(CAP theorem)
- Python概率编程库PyMC应用案例二则
- Android异常总结---ActivityManager: Warning: Activity not started,its current task has been brought to th
- sql 自定义函数 示例_SQL Server SESSION_CONTEXT()函数与示例
- 用脚踹?地震火灾中,如何快速打开人脸识别闸机门?
- android studio聊天跳转_android app跳转到微信的示例
- ewebeditor高版本=5.50day
- np.c_和np.r_
- stdio.h库函数
- 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何让不同的PLC程序分线程运行 TC2
- DRM之Widevine学习入门
- fcm算法的MATLAB实现
- 如何选择一款合适的福禄克数字万用表?FLUKE
- Instagram 账号被封如何申诉拿回账号?ins账号解封经验分享
- MySQL的缓存机制
- python 循环控制语句结束_孤荷凌寒自学python第十五天python循环控制语句
热门文章
- Android 12.0 rom定制专栏系列解读
- 鸿蒙BETA版脱离安卓了吗,华为鸿蒙OS手机开发者Beta版来了,UI无变化,兼容安卓...
- 【2019年04月03日】A股最便宜的股票
- webpack的一些常用打包配置
- Palm OS Develop Suite 入门配置
- C++第4章第2题:移位密码-解密
- Redis(二十四)-秒杀案例之库存遗留问题解决
- 使用计算机软件进行电视剪辑称为,影视制作中计算机技术的创新应用
- 华中师范大学计算机学院杨青,杨青(实力派影视演员)_百度百科
- netcore NPOI