单片机中断和矩阵键盘_第1页
单片机中断和矩阵键盘_第2页
单片机中断和矩阵键盘_第3页
单片机中断和矩阵键盘_第4页
单片机中断和矩阵键盘_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机中断和矩阵键盘第一页,共二十九页,2022年,8月28日MCS51的中断系统一.中断的概念二.中断的分类三.外部中断的处理过程四.外部中断的系统控制五.外部中断的应用实例第二页,共二十九页,2022年,8月28日学习目标掌握中断的基本概念学会配置中断学会使用外部中断第三页,共二十九页,2022年,8月28日一、中断的概念在单片机中,当CPU在执行程序时,由单片机内部或外部的原因引起的随机事件要求CPU暂时停止正在执行的程序,而转向执行一个用于处理该随机事件的程序,处理完后又返回被中止的地方1.1中断的概念中断是一个过程!第四页,共二十九页,2022年,8月28日1.2中断优先级与嵌套1.2.1中断优先级

通常单片机有多个中断源,我们可以按照轻重缓急给各个中断源赋予不同的中断优先级。当两个或以上中断源同时请求中断时,CPU可以根据优先级首先处理优先级较高的中断请求,再处理优先级较低的中断请求。1.2.2中断嵌套

当CPU在执行某一中断处理程序时,若有优先级别更高的中断源发出中断请求,CPU会暂停去执行新的中断处理程序,结束后再继续执行被暂停的中断服务程序。第五页,共二十九页,2022年,8月28日1.3中断的特点1.3.1提高CPU的工作效率

中断功能解决了高速工作的CPU与低速工作的外设之间的矛盾。CPU分时启动多个外设之后,各外设与CPU并行工作,待外设完成工作之后发出中断请求,从断点转去执行相应的中断服务程序,结束后再继续执行主程序。1.3.2实现实时处理在实时控制系统中,被控对象的各种实时参数和信息会随时间不断变化,单片机必须及时得到这些参数和信息并进行分析处理,有了中断系统,这些参数和信息就可以通过中断请求的方式要求CPU及时处理。1.33处理故障第六页,共二十九页,2022年,8月28日二.中断的分类单片机的类型不同,其中断源的数量和类型也不同。51单片机的中断源有5个,可分为3类,分别是2个外部中断,2个定时器中断,以及1个串行口中断。2.1外部中断2.2定时器中断(内部中断)2.3串行口中断第七页,共二十九页,2022年,8月28日2.1外部中断外部中断是由外部原因(打印机,键盘,控制开关,外部故障)引起的,可以通过两个固定的引脚将信息输入到单片机内。在物理层面讲,经常是通过“边沿触发”,“电平触发”,“脉冲触发”等实现的。第八页,共二十九页,2022年,8月28日2.2定时器中断

2.3串行口中断定时中断是由定时器对单片机内部定时脉冲进行计数而发生计数溢出时或定时器对单片机外部计数脉冲进行计数而发生计数溢出时引起的中断。51内部有两个定时器,定时器0及定时器1串行口中断是为接收或发送串行数据而设置的,单片机接收或发送完一帧数据时,硬件会自动发出中断请求。第九页,共二十九页,2022年,8月28日三.外部中断的处理过程3.1中断请求

在中断允许的情况下,单片机收到外部的低电平或者下降沿时,可认为外部发出了中断请求。外电路如何发出低电平信号或者下降沿信号呢?第十页,共二十九页,2022年,8月28日3.11中断响应条件在满足以下2个条件时,CPU将响应中断。1)有中断源发出中断请求;2)中断允许a中断总允许位EA=1;b发出请求的中断源被允许中断;cCPU没有在执行一个同级或者优先级更高的中断服务程序。第十一页,共二十九页,2022年,8月28日3.12中断优先级裁决如果没有重新设置中断源的优先级,则按照自然优先级进行裁决,如果通过中断优先级寄存器重新设置中断源的优先级,则按照重新设定的进行裁决第十二页,共二十九页,2022年,8月28日3.13中断的响应过程优先级状态触发器置1,屏蔽同级别以及低级别的中断源的中断请求;生成长调用指令(LCALL),把断点地址压入堆栈保护,将中断源的中断入口地址装入程序计数器PC中,开始执行中断子程序。中断入口地址称为中断矢量第十三页,共二十九页,2022年,8月28日3.2中断处理

保护现场(在此之前关中断,在此之后开中断)处理中断源请求恢复现场(在此之前关中断,在此之后开中断)第十四页,共二十九页,2022年,8月28日3.3中断返回1.中断返回:CPU返回程序断点处继续执行原来的程序RETI指令:置零优先级状态触发器,取出断点处地址送回到PC2.中断请求的撤除硬件清除定时器中断请求标志TF0和TF1软件清除串口中断请求标志T1和R1(硬件无法完成)外部中断的清除:硬件自动清除第十五页,共二十九页,2022年,8月28日响应条件中断请求优先级裁决响应过程保护现场中断处理处理中断的请求恢复现场中断返回中断返回中断请求的撤除第十六页,共二十九页,2022年,8月28日四.外部中断系统控制模块概念一个模块的应用离不开两个东西,一个是硬件电路,个是寄存器的配置。例如:中断控制系统外围电路控制寄存器TCON串行口控制寄存器SCON中断允许寄存器IE中断优先级控制寄存器IE第十七页,共二十九页,2022年,8月28日4.1控制寄存器TCON定时器控制寄存器TCON的作用是控制定时器的启动与停止,保存定时器0,定时器1的溢出中断标志,以及选择外部中断的触发方式,保存外部中断0,外部中断1的溢出中断标志。第十八页,共二十九页,2022年,8月28日定时器控制位TF1:定时器1溢出标志位。当定时器计数满溢 出之后,硬件自动使TF1置1,申请中断。TR1:定时器1的启动与停止控制位。TF0:定时器0溢出标志位,功能如TF1。TR0:定时器1的启动与停止控制位,功能如TR1。第十九页,共二十九页,2022年,8月28日外部中断控制位IE1:外部中断1请求中断标志位。IT1:外部中断1触发方式选择位。当IT1=0时, 外部中断1为低电平触发方式。当IT1=1 时,外部中断1为下降边沿触发方式。IE0:外部中断1请求中断标志位,功能如IE1。IT0:外部中断1触发方式选择位,功能如IT1。第二十页,共二十九页,2022年,8月28日4.2中断允许寄存器IE

中断允许寄存器IE的作用是控制CPU对中断的开放或屏蔽以及每个中断源是否允许中断。第二十一页,共二十九页,2022年,8月28日EA:CPU中断总允许位。EA=1时,CPU开放中断,EA=0时,CPU屏蔽所有中断。ES:串行口中断允许位。ES=1时,允许串行口中断,ES=0时,禁止串行口中断。ET1:定时器1中断允许位。ET1=1时,允许定时器1中断,ET1=0时禁止定时器1中断。EX1:外部中断1中断允许位。EX1=1时,允许外部中断1中断,EX1=0时禁止。ET0:定时器0中断允许位。ET0=1时,允许定时器0中断,ET0=0时禁止定时器0中断。EX0:外部中断0中断允许位。EX0=1时,允许外部中断0中断,EX0=0时禁止。第二十二页,共二十九页,2022年,8月28日4.3中断优先级寄存器IP中断优先级寄存器IP的作用是设定各中断源的优先级别。PS:PS=1时,串行口中断为高优先级中断。PT1:PT1=1时,定时器1中断为高优先级中断。PX1:PX1=1时,外部中断1中断为高优先级中断。PT0:PT0=1时,定时器0中断为高优先级中断。PX0:PX0=1时,外部中断0中断为高优先级中断。第二十三页,共二十九页,2022年,8月28日自然优先级:

低高串口中断外部中断0定时器中断0外部中断1定时器中断1第二十四页,共二十九页,2022年,8月28日中断系统结构图第二十五页,共二十九页,2022年,8月28日五、中断的应用初始化步骤:a.开放CPU中断并允许有关中断源中断(IE)b.确定中断优先级(IP)c.确定中断触发方式(TCON)配置实例:voidinit_int1(void)//初始化INT1{ IP=0x00;//使用自然中断优先级 EX1=1;//INT1中断开 IT1=1;//INT1下降沿触发(为0则为低电平触发)}

第二十六页,共二十九页,2022年,8月28日矩阵键盘一、按键的抖动与消抖

为什么要消抖按键按下瞬间会产生一段时间的毛刺(持续10mS左右)然后才稳定的现象,如果不加消抖措施会在程序中误判为多次按下按键通常采取软件消抖的方法,即程序检测到按键按下后,延时10mS以上再次检测按键状态,如果状态仍然按下则为一次可靠的按下。第二十七页,共二十九页,2022年,8月28日二、矩阵键盘电路与扫描第二十八页,共二十九页,2022年,8月28日三

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论