




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录【任务要求】【学习目标】【知识链接】1.中断优先级-IP寄存器2.中断嵌套【任务实施】【任务小结】【复习思考】
任务要求制作一个单片机最小系统电路板要求同时使用两个外部中断INT0和INT1,初始时7段数码管显示“-”。外部中断INT0控制7段数码管从0加到9,之后恢复原来的显示“-”,外部中断INT1控制7段数码管从9减到0,之后恢复原来的显示“-”,并且要求INT1的优先等级比INT0高,即:在INT0中断从0加到9的过程中,INT1可以打断,变成从9减到0,之后恢复到原来的INT0的现场(原来从哪个数字打断就回到哪个数字)。学习目标进一步掌握单片机的外部中断INT0、INT1;掌握中断控制寄存器IP的设置方法;理解中断优先级和中断嵌套。知识链接-1.中断优先级-IP寄存器为什么要有中断优先级?这是因为CPU同一时间只能响应一个中断请求。若同时来了两个或两个以上中断请求,就必须有先后顺序。为此将MCS-51单片机的5个中断源分成高、低两个级别,高级优先,由IP寄存器控制。MCS-51单片机有2个优先级:“0”和“1”,可通过IP寄存器进行设置。
IP寄存器各位与IE寄存器的各位是相对应的知识链接-1.中断优先级-IP寄存器例如,单片机系统使用了INT0和INT1中断,现在要求INT1比INT0的优先等级高,可用如下语句实现:
IP=0x04; //00000100,设置INT1为高优先级,其它为低优先级其中0x04就是二进制00000100,相当于把IP寄存器中的PX1设置为1,等同于如下语句:PX1=1; //设置INT1为高优先级知识链接-1.中断优先级-IP寄存器若同一级(同为高级或同为低级)中的5个中断源同时向CPU申请中断,它们的优先顺序遵循中断的自然优先等级,它们的顺序与在IP寄存器中的位置是相对应的,IP.0为最高等级,IP.6是最低等级。在实际应用中,很少能够用到自然优先级,因为两个中断信号完全同时向CPU发出中断请求的几率非常小。
中断的自然优先等级
中断优先原则可以概括为四句话:①低级不打断高级;②高级不理睬低级;③同级不能打断;④同级同时中断按自然优先级。知识链接-2.中断嵌套中断嵌套是指中断系统正在执行一个中断服务时,有另一个优先级更高的中断提出中断请求,这时会暂时终止当前正在执行的级别较低的中断源的服务程序,去处理级别更高的中断源,待处理完毕,再返回到被中断了的中断服务程序继续执行,这个过程就是中断嵌套。其实就是更高一级的中断的“插队”,处理器正在执行着中断,又接受了更急的另一件“急件”,转而处理更高一级的中断的行为。
知识链接-2.中断嵌套
中断子程序(一)优先等级高于(或同级)中断子程序(二)的执行流程
中断子程序(一)优先等级高于(或同级)中断子程序(二)的时候,只有等先申请中断的子程序(一)执行完了之后才会响应后申请中断的子程序(二)。知识链接-2.中断嵌套
中断子程序(一)优先等级低于中断子程序(二)的执行流程
中断子程序(一)优先等级低于中断子程序(二)的时候,在先申请中断的子程序(一)执行过程中,也会优先会响应后申请中断的子程序(二),等子程序(二)执行完了之后再回到子程序(一),子程序(一)执行完了之后再回到主程序。任务实施1)准备元器件序号种类标号参数序号种类标号参数1电阻R110k6电容C310uF2电阻R210k7单片机U1STC89C523电阻R310k8排阻RN12204电容C130pF9晶振X111.0592M5电容C230pF任务实施2)搭建硬件电路仿真电路图与配套实验板对应的按键电路相同。该电路图可用于仿真和手工制作,前述任务已经将本次任务的电路制作完毕,本次任务无需另外再制作。任务实施3)程序设计主程序正常执行时,只需要让数码管静态显示一个减号“-”即可。只需要在初始化时让7段数码管显示“-”。其它不需要任何动作。外部中断INT0控制7段数码管从0加到9,用一个for循环,循环10次即可满足要求。同样,外部中断INT1控制7段数码管从9减到0,也可以用for循环实现。要求INT1的优先等级比INT0高给IP寄存器赋值00000100,即十六进制0x04即可。要在中断之后恢复现场,还需要执行中断动作前保存P0口原来的状态,这时需要一个中间变量saveSEG7,这样就能实现:从哪个数字打断就回到哪个数字了。任务实施3)程序设计用二个外部中断控制数码管加减计数程序流程任务实施3)程序设计用二个外部中断控制数码管加减计数主程序清单main()//主程序开始{P2=0xf7;//P2.3为0,让最右边数码管显示IE=0x85;//打开外部中断INT0和INT1IP=0x04;//设置INT1优先级高于INT0SEG7=0xbf;//数码管初始时显示“-while(1);//无穷等待,主程序无任何动作}//主程序结束任务实施4)使用Proteus仿真将“任务10.hex”加载(相同于实际单片机程序的下载)到仿真电路图的单片机中,在仿真中,我们将看到:仿真开始时7段数码管显示“-”。任何时候按一下外部中断INT0的按键,7段数码管就从0加到9,之后恢复原来的显示“-”。任何时候按一下外部中断INT1的按键,7段数码管就从9减到0,之后恢复原来的显示“-”。在中断程序显示从0加到9的过程中,可以被INT1打断,变成从9减到0,之后恢复到原来被打断的那个数字直到加到9之后又显示“-”。详细仿真演示可直接打开“任务10.用二个外部中断控制数码管加减计数.DSN”任务实施5)使用配套实验板调试所编写的程序将程序文件“任务10.hex”下载到单片机中,给实验板上电后,将看到与仿真中一样的现象。任务10详细的演示录像见随书光盘中的视频文件“\演示录像\任务10.用2个外部中断控制数码管加减计数.RMVB”和“\演示录像\任务10.用2个外部中断控制数码管加减计数-双面PCB板.RMVB”。任务小结通过单片机2个外部中断INT0和INT1的实验,让读者掌握了中断控制寄存器IP的设置方法,并加深了读者对中断优先级和中断
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电子足底保健器批发企业县域市场拓展与下沉战略研究报告
- 奶制品批发企业数字化转型与智慧升级战略研究报告
- 新能源汽车电机及控制器企业县域市场拓展与下沉战略研究报告
- 机器人汽车零部件瑕疵剔除企业制定与实施新质生产力战略研究报告
- 煮沸灭菌器具批发企业县域市场拓展与下沉战略研究报告
- 职业装企业县域市场拓展与下沉战略研究报告
- 颗粒盐企业ESG实践与创新战略研究报告
- 二零二五年度企业内部停车场车辆停放使用协议
- 2025年度美容院美容院加盟店技术投资入股协议
- 2025年度高空作业安全责任协议书(高空建筑加固与安装)
- 新版(七步法案例)PFMEA
- 临床护理重点专科建设项目评审标准
- 新苏教版科学五年级下册全套教学课件
- 审计部组织架构及岗位设置
- 流行性乙型脑炎PPT课件
- 深圳市轨道交通线网规划(2016_2035)(草案)
- 400V电缆分支箱生产实用工艺流程
- 四十二式太极剑剑谱
- 完整解读2021年《建设工程抗震管理条例》PPT教学讲座课件
- 新版小学英语PEP四年级下册教材分析(课堂PPT)
- 食用植物油生产许可证审查细则.doc
评论
0/150
提交评论