收藏 分销(赏)

单片机-实验-三-MCS.doc

上传人:二*** 文档编号:4509766 上传时间:2024-09-26 格式:DOC 页数:3 大小:23.04KB 下载积分:5 金币
下载 相关 举报
单片机-实验-三-MCS.doc_第1页
第1页 / 共3页
本文档共3页,全文阅读请下载到手机保存,查看更方便
资源描述
单片机 实验 三 MCS 大连理工大学实验报告 实验时间: 2014 年 7 月 1 日 星期 二 时间 : 13 :10 ~ 15 :00 实验室(房间号): 综420 实验台号码: 班级: 姓名: 指导教师签字: 成绩: 实验 三 MCS-51单片机中断系统及外部中断/INT0实验 一、实验目的和要求 学习、掌握单片机的中断原理。正确理解中断矢量入口、中断返回的概念及物理过程。学习编写软件“防抖程序”,了解软件防抖原理。 二、实验内容及步骤 1.INT0、INT1同一优先级运行实验: 保持上电复位时INT0、INT1默认为 “低优先级”的状态,且将SW1、SW2全部事先置于“0”电平(同时申请中断)后,再启动运行程序,按照表1要求填写结果。 表1 :INT0、INT1同一优先级时 运行记录 外部中断信号状态 Int0 0 1 0 0 0 1 Int1 0 0 0 1 0 0 状态0;状态0 状态1;状态1 状态1;状态1 状态0;状态0 状态0;状态0 状态1;状态1 PI口(LED状态) 结论一:保持上电复位时INT0、INT1默认为 “低优先级”的状态时:(1)同级中断同时申请中 断时,CPU按“自然优先级”响应,即INT0→T0→INT1→T1→ES。(2)一个中断一旦得到响应(无论什么优先级),与它同级的中断则“不能”再中断它。(3)每个中断都是下降沿或者低电平有效(由TCON设定)。 注:主程序:状态2,INT_0:状态0,INT_1:状态1。 2.将 INT1设定为高优先级(INT0保持为低优先级)的运行实验: 在程序中使用指令将INT1设定为“高优先级”状态,按照表2内容填写结果。 表2:INT1为高优先级(int0保持为低优先级)时运行状态记录 外部中断信号状态 (请按顺序操作并填写) Int0 1 1 0 0 1 0 0 0 Int1 1 0 0 1 1 1 0 1 状态2;状态2 状态1;状态1 状态1;状态1 状态0;状态0 状态2;状态2 状态0;状态0 状态1;状态1 状态0;状态0 PI口(LED状态) 结论二: 将 INT1设定为高优先级(INT0保持为低优先级)时:(1)低优先级的中断响应在执 行时“可被”高优先级中断所中断。(2)高优先级的中断响应在执行时“不可被”高优先级中断所中断。(3)两个中断都没有申请时程序正常执行主程序。(4)每个中断都是下降沿或者低电平有效(由TCON设定)。 三、实验算法和程序清单 ORG 8000H LJMP START ORG 8003H LJMP INT_0 ORG 8013H LJMP INT_1 ORG 8100H START: MOV SP,#60H SETB EX0 SETB EX1 SETB PX1 SETB EA MOV TCON,#00H MOV IP,04H MOV A,#00H LOOP: INT_0: CHR: MOV P1,A CPL A LCALL DELAY SJMP LOOP PUSH PSW PUSH ACC LCALL DELAY MOV A,#03H CPL A RR A MOV P1,A LCALL DELAY JNB P3.2,CHR LCALL DELAY POP PSW INT_1: CHL: POP RETI PUSH PUSH LCALL MOV CPL RL MOV LCALL JNB LCALL POP ACC PSW ACC DELAY A,#01H A A P1,A DELAY P3.3,CHL DELAY PSW POP RETI DELAY: PUSH PUSH MOV DELAY1: MOV DJNZ DJNZ POP POP RET END ACC 01H 02H R1,#00H R2,#00H R2,$ R1,DELAY1 02H 01H 四、实验电路 限流电阻1K×8 +5V MCS-51 P1.7 LED8 LED7 LED6 LED5 LED4 LED3 LED2 LED1 SW1 INT0 +5V SWINT1 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P3.2 SW2 +5V SW图1 :实验电路连接示意图 五、实验流程图 设置初始地址 INT0入口 初始化设置: SETB PX1 六、实验结果与分析 本次的中断实验共有四个大的模块。第一:主程序中完成LED灯全亮和全灭的循环显示;第二:INT_0中断程序中实现小灯连续俩个亮,并且只要中断没有撤销,且没有更高优先级中断打断就连续左移循环显示;第三:INT_1中断程序实现只有一个小灯亮,且只要中断没有撤销就连续右移循环显示;第四:延时子程序,用于防止前后抖动和小灯闪烁过快人眼无法识别。在主程序执行的任何时候只要有中断都会转去执行中断程序。另外,在程序中认为的设置了INT1为高优先级中断,在INT0中断是可以用INT1中断对其进行打断,改变小彩灯的显示形式,本次操作完成了实验要求的各种指标。 彩灯连续两个亮,循环左移显示,调用DELAY只有一个彩灯亮,并且循环右移显示,调用进入INT_0子程进入INT_1子程NYY INT1=0? INT0=0? N INT1=0? Y计数器取反并显示 调用DELAY子程N七、实验体会和建议 在老师的指导下,本次实验做得还是比较顺利,但是在实验过程中还是犯了一些比较低级的错误,在最开始编中断服务程序的时候,分析感觉都是正确的,但是就是无法进入中断服务程序,检查了一会才发现忘写了两句最重要的开中断语句即SETB EX0 、SETB EX1 、SETB EA,这就 要求我在做实验的时候要非常认真,在出现问题时从问题出发,分析可能的错误然后加以改正,就能够以最快的速度保质的完成任务。 八、主要仪器设备 名称 KeilC51调试软件 单片机综合仿真平台 型号 μVision DP-51PROC 备注 无 3 / 3
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

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

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服