




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目四:
MCS-51单片机的中断系统《单片机原理及应用>
教师:张为宾“中断”——中途打断某一正在进行的工作,而去处理另外的事件,待处理完后,再继续原来的工作。中断包括意外中断和企望发生的中断。中断
MCS-51单片机51子系列具有5个中断源。1中断源这五个中断请求锁存信号分别锁存在特殊功能寄存器TCON(定时/计数控制寄存器)和SCON(串行口控制寄存器)中。8051中断系统的5个中断源为:
——外部中断0请求,通过P3.2引脚输入。
——外部中断1请求,通过P3.3引脚输入。T0——定时器/计数器0溢出中断请求。T1——定时器/计数器1溢出中断请求。TI/RI——串行口中断请求。一、MCS-51的中断系统及其管理
1)定时控制寄存器TCON(字节地址为88H)复位后,TCON被清“0”。位D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT0位地址8F8E8D8C8B8A8988IT0——选择外部中断请求0为边沿触发方式或电平触发方式的控制位。
IT0=0,INT0为电平触发方式,INT0低电平有效;
IT1=1,INT0为边沿触发方式,INT0输入脚上电平由高到低的负跳变有效。
IT0可由软件置“1”或清“0”。IT1——选择外部中断请求1为边沿触发方式或电平触发方式的控制位,和IT0类似。位D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT0位地址8F8E8D8C8B8A8988IE0——外部沿触发中断0请求标志,
当IT0=0即电平触发方式时,每个机器周期的S5P2采样INT0,若INT0为低电平,将直接触发外部中断,
当IT0=1即边沿触发方式时,当第一个机器周期采样到INT0为高电平,第二个机器周期采样到INT0为低电平时,由硬件置位IE0,并以此来向CPU请求中断,当CPU响应中断,转向中断服务程序时由硬件清“0”IE0。IE1——外部沿触发中断1请求标志,和IE0类似。外部中断输入信号INTX和中断申请标志IEX及外部中断申请触发方式控制位ITX三者关系。INTxITx10IEx位D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT0位地址8F8E8D8C8B8A8988TR0——定时/计数器0的运行控制位,由软件置位/清除来控制其开启/关闭。TF0——时/计数器0溢出中断申请标志,在启动T0计数后,定时/计数器0从初值开始加1计数,当最高位产生溢出时,由硬件置位TF0,向CPU申请中断,CPU响应TF0中断时清零该标志位,TF0也可用软件清零(查询方式)。TR1——定时/计数器1的运行控制位。由软件置位/清除来控制其开启/关闭。TF1——8031片内的定时/计数器1的溢出中断申请标志,和TF0类似。位D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IE1IT1IE0IT0位地址8F8E8D8C8B8A89882.串行口控制寄存器SCON(字节地址为98H)SCON的低二位锁存串行口的接收中断和发送中断标志(复位后,SCON被清“0”)位D7D6D5D4D3D2D1D0SCONSM0SM1SM2RENTB8RB8TIRI位地址9F9E9D9C9B9A9998TI——串行口的发送中断标志。在串行口以方式0发送时,每当发送完8位数据,由硬件置“1”TI;若以方式1、方式2或方式3发送时,在发送停止位的开始时置“1”TI。
TI=1表示串行口发送器正在向CPU申请中断。向串行口的数据缓冲器SBUF写入一个数据后就立即启动发送器继续发送。RI——串行口接收中断标志。若串行口接收器允许接收,并以方式0工作,每当接收到第8位数据时,置位RI;若以方式1、2或3工作,且SM2=0时,每当接收器接收到停止位的中间时置位RI;当串行口以方式2或方式3工作、且SM2=1时,仅当接收到的第9位数据RB8为1后,同时还要接收到停止位的中间时置位RI。RI为1表示串行口接收器正向CPU申请中断。注意:在CPU响应发送器中断请求,转向执行中断服务程序时并不清“0”TI或RI,TI或RI必须由用户在中断服务程序中清“0”,即在中断服务程序中必须有CLRTI或ANLSCON,#0FDH等清“0”TI或RI的指令。位D7D6D5D4D3D2D1D0SCONSM0SM1SM2RENTB8RB8TIRI位地址9F9E9D9C9B9A99982中断的开放,禁止及优先级中断源是否响应受中断允许寄存器IE的控制,只有开放某中断源时,该中断才会被响应。IE的每一位控制着一个中断源,当该位置位时,对应的中断源能够被CPU响应,清“0”则不被响应。中断的优先级受中断优先级寄存器IP的控制,由IP中相应位置“1”或清“0”决定其为高优先级还是低优先级。EA——中断允许总控位。如EA=0,则不响应中断;EA=1,每个中断源由各自的允许位控制。ES——允许串行通道中断。如ES=0,禁止串行通道中断;ES=1,允许串行通道中断。ET1——允许定时器1溢出中断。如ET1=0,则禁止定时器1中断;ET1=1,则允许定时器1中断。EX1——允许外部中断源1。如果EX1=0,则禁止外部中断1;EX1=1则允许外部中断1。ET0——允许定时器0溢出中断。如ET0=0,则禁止定时器0中断;ET0=1,则允许定时器0中断。EX0——允许外部中断源0。如果EX0=0,则禁止外部中断0;EX0=1则允许外部中断0。1.中断允许寄存器IE(字节地址为A8H)
位D7D6D5D4D3D2D1D0代号EA--ESET1EX1ET0EX02.中断优先级寄存器IP(字节地址为B8H)
位D7D6D5D4D3D2D1D0代号---PSPT1PX1PT0PX0PS——决定串行通道中断优先级。PS=1,则编程为高优先级PT1——决定定时器1中断优先级。PT1=1,则编程为高优先级PX1——决定外中断1优先级。PX1=1,则编程为高优先级。PT0——决定定时器0中断优先级。PT0=1,则编程为高优先级PX0——决定外中断0优先级。PX0=1,则编程为高优先级。如果让某中断源允许中断,必须同时使EA=1,使CPU开放中断,所以EA相当于中断允许的“总开关”。至于中断优先级寄存器IP,其复位清零或置位将把相应的中断源置为低优先级或高优先级中断,同样,用户也可对相应位置位或清零来改变各中断源的中断优先级。MCS-51单片机对中断优先级的处理原则是:①不同级的中断源同时申请中断时:先高后低;②处理低级中断又收到高级中断请求时:停低转高;③处理高级中断却收到低级中断请求时,高不睬低;④同一级的中断源同时申请中断时:事先预定。⑤对于同一优先级,单片机对其中断次序安排如下:中断源优先级外部中断0最高定时/计数器T0溢出中断外部中断1定时/计数器T1溢出中断串行口中断最低
中断系统结构外部中断请求0内部定时器0TRT—发送R—接收中断请求标志寄存器源允许总允许中断允许寄存器中断优先级寄存器查询硬件中断源标示符中断源标示符中断矢量低优先级中断请求INT1外部中断请求1内部定时器1内部串行口INT0中断矢量高优先级中断请求二中断响应过程
1.中断响应条件CPU响应中断的条件有:有中断源发出中断请求。中断总允许位EA=1,即CPU开中断。申请中断的中断源的中断允许位为1,即中断没有被屏蔽。无同级或更高级中断正在被服务。当前的指令周期已经结束。若现行指令为RETI或者是访问IE或IP指令时,该指令以及紧接着的另一条指令已经执行完毕。2.中断响应操作过程表5.1中断源及其对应的中断矢量中断源中断矢量外部中断00003H定时器T0中断000BH外部中断10013H定时器T1中断001BH串行口中断0023H5.3.2中断处理图5.8中断服务程序流程实现单步调试的程序如下。ORG 0000H LJMP MAIN ORG 0003H ;外部中断0的中断服务程序入口 LJMP INTSEV ORG 0030HMAIN: MOV SP,#70H CLR IT0 ;设INT0为电平方式 SETB EA ;开中断 SETB PX0 ;外部中断为高优先级 SETB EX0 ;允许外部中断0中断 …… ;用户程序 …… ……INTSEV: JNB P3.2,$ JB P3.2,$ RETI案例:4路数字显示抢答器
回首页项目任务应用AT89C51芯片及简单的外围电路,设计制作一个4人抢答器,当按下“开始”按键后,参赛选手进行抢答,使用1位数码管显示最先按键的选手的号码并保持到下一次抢答开始。项目分析由于选手的抢答对于单片机系统来说,是突发事件,因此本项目利用单片机的中断系统实现。返回一、硬件电路设计1、设计思路利用AT89C51芯片P1口控制1位数码管进行选手编号的显示,利用P2口的P2.0~P2.3引脚连接4只按键。使用74LS14N芯片实现按键信号的识别及选手间的屏蔽。2、数码管控制电路七段LED数码管由七个发光二极管做成条状,按图c所示排列而成,除显示数字的七段之外还有一个小数点dp,实为八段显示。根据LED的连接方式不同,分为共阴极和共阳极两种。对于共阴极连接,如图a所示,只有当公共端(COM)接低电平,阳极接高电平时对应的字段才点亮;而对于共阳极连接,如图b所示,只有当公共端(COM)接高电平,阴极接低电平时对应的段才点亮。公共端(COM)作为数码管的选通控制,称为位选码。3、抢答器控制电路
4只抢答按键分别连接到P2口的P2.0、P2.1、P2.2、P2.3引脚,通过按键是否动作控制对应引脚电平的变化;同时将电平的变化作为74LS14N芯片的输入信号。当有选手抢答而按下按键时,74LS14N芯片的对应输出变为低电平,同时作为单片机的外部中断信号引入INT0(P3.2)引脚。
下图给出了74LS14N芯片的外形、内部结构及输入/输出关系。由上图可知,此芯片为双列直插封装,共14个引脚。在使用时,将7号引脚(GND)接地,14号引脚(Vcc)接电源正极,其余各引脚根据需要成对连接即可。本设计使用A1~A4输入,Y1~Y4输出。
当有键被按下,芯片74LS14的输入端会得到一个高电位(1)信号,其对应输出端变为低电位(0),从而向单片机发出一个中断请求信号。单片机收到中断请求后,响应中断并到P2口查询哪个按键按下,然后将其号码显示在LED数码管上。电路如下图所示。4、控制电路
(2)INT0(P3.2)引脚单片机外部中断0的输入引脚,与74LS14N的输出连接。当有选手按下按键时,与非门有低电平输出,而INT0为低电平有效,此时单片机响应中断。(三)材料表序号元件名称元件型号元件数量备注1单片机芯片AT89C511片DIP封装2集成非门芯片74LS141片DIP封装3数码管ArkSM420501只共阴极4晶振12MHz1只5电容30pF2只瓷片电容22uF1只电解电容6电阻200Ω8只碳膜电阻,可用排阻代替10kΩ1只碳膜电阻7按键1只无自锁1只带自锁840脚IC座1片安装AT89C51芯片914脚IC座1片安装74LS14芯片10导线二、控制程序的编写
(一)绘制程序流程图
本控制显示的数字要根据按键的识别情况进行显示,因此程序的结构应使用分支程序结构。(二)编制汇编源程序标号操作码操作数指令意义(注释)ORG0000H;伪指令,指明程序从0000H单元开始存放LJMPMAIN5;控制程序跳转到“MAIN5”处执行ORG0003H;外部中断0的入口地址LJMPINTT0;控制程序跳转到“INTT0”处执行ORG0050H;主程序从0500H单元开始MAIN5:MOVP1,#0FFH;没有按键按下时,无显示SETBIT0;设置外部中断0为负边沿触发SETBET0;打开外部中断0SETBEA;打开所有中断SJMP$;等待按键INTT0:PUSHPSW;保护状态寄存器的内容PUSHACC;保护A的内容JBP2.0,XS1;1号键是否被按下JBP2.1,XS2;2号键是否被按下标号操作码操作数指令意义(注释)JBP2.2,XS3;3号键是否被按下JBP2.3,XS4;4号键是否被按下BACK:POPACC;弹出APOPPSW;弹出状态寄存器PSWCLREA;关所有中断RETI;中断程序返回XS1:MOVP1,#06H;1号键按下时,显示“1”AJMPBACKXS2:MOVP1,#5BH
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 健身器材用户参与度提升策略实践考核试卷
- 塑料鞋生产效率统计与分析考核试卷
- 数学空间想象力培养教具考核试卷
- 供应链大数据分析在供应链中的应用案例解析考核试卷
- 北京车牌借用合同范本
- 蔬菜购销合同范本
- 药店店员培训课件
- 冷库设备销售合同范本
- 静脉输液的基本操作流程
- 数据传输网络安全合作协议之数据传输保护服务合同
- 口腔科放射防护制度
- 2024年公开招聘事业单位工作人员报名登记表
- 微观经济学:绪论
- 2024年全国高考数学试题及解析答案(新课标Ⅱ卷)
- 2024年中考语文满分作文6篇(含题目)
- 2024年河南郑州航空港经济综合实验区招考高频500题难、易错点模拟试题附带答案详解
- 风动和电动工具市场洞察报告
- 苏教版一年级数学下册全册教案(完整版)教学设计含教学反思
- 10《传统美德源远流长》第2课时教学设计-2024-2025学年道德与法治五年级上册统编版
- 小学奥数-经济问题(二).教师版
- 2024统编版新教材道德与法治七年级全册内容解读课件(深度)
评论
0/150
提交评论