欢迎来到天天文库
浏览记录
ID:61459139
大小:50.50 KB
页数:5页
时间:2021-02-01
《bell单片机实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、大连理工大学实验报告(三)实验时间:2014年7月1日星期二时间:13:00~15:00实验室(房间号):420实验台号码:18指导教师签字:成绩:实验三外部中断/INT0实验(1)实验目的学习掌握单片机的中断原理。正确理解中断矢量入口,中断调用和中断返回的概念及物理过程。学习编写“软件防抖”程序,了解“软件防抖”原理。(2)实验要求要求:对/int0、/int1两个外部中断进行编程,其中:l主程序的功能:LDE灯“全亮”、“全灭”交替进行--------(状态2);lInt0中断服务程序功能:2
2、个相邻的LED灯被点亮且循环左移(状态0);lInt1中断服务程序功能:1个LED灯被点亮且循环右移---(状态1);【注意】:实验仪上的LED灯物理位置最左侧为d0;最右侧为d7。(3)算法流程:(4)实验电路:MCS-51P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0P3.2P3.3LED6LED7LED8+5V+5VINT0图1:实验电路连接示意图LED3LED4LED5LED2LED1SW1限流电阻1K×8+5VSW2SW2INT1SW1(5)程序清单:ORG8000HL
3、JMPSTARTORG8003HLJMPINT_0ORG8013HLJMPINT_1ORG8100HSTART:MOVSP,#60HSETBEX0SETBEX1SETBEA;SETBPX1;将INT1设定为高优先级MOVTCON,#00HMOVR3,#00HMOVA,R3LOOP3:MOVP1,ACPLACPLP3.4LCALLDELAYAJMPLOOP3INT_0:PUSHACC;INT_0中断服务程序PUSHPSWSETBP3.4MOVA,#0FCH;两相邻灯亮STATE0:MOVP1,ALC
4、ALLDELAYRLAJNBP3.2,STATE0;INT_0有中断时则循环左移LCALLDELAYPOPPSWPOPACCRETIINT_1:PUSHACCPUSHPSWSETBP3.4MOVA,#0FEH;一个灯亮STATE1:MOVP1,ALCALLDELAYRRAJNBP3.3,STATE1;INT_1有中断时则循环右移LCALLDELAYPOPPSWPOPACCRETIDELAY:PUSH01HPUSH02HMOVR1,#00HDELAY1:MOVR2,#00HDJNZR2,$DJNZR
5、1,DELAY1POP02HPOP01HRETEND(6)实验结果与分析:1.INT0、INT1同一优先级运行实验:保持上电复位时INT0、INT1默认为“低优先级”的状态,且将SW1、SW2全部事先置于“0”电平(同时申请中断)后,再启动运行程序,按照表1要求填写结果。表1:INT0、INT1同一优先级时运行记录外部中断信号状态PI口(LED状态)Int0Int1000010110011010000001011当两个同级同时响应时,响应int0中断;同级中断来时不会打断2.将INT1设定为高优先
6、级(INT0保持为低优先级)的运行实验:在程序中使用指令将INT1设定为“高优先级”状态,按照表2内容填写结果。表2:INT1为高优先级(int0保持为低优先级)时运行状态记录外部中断信号状态(请按顺序操作并填写)PI口(LED状态)Int0Int111221011001101001122010000110100(7)实验体会:本次实验让我理解了有关中断程序的编写,在编写程序时,首先要思路清晰,写好主程序和从程序。在写主程序的时候,主要是注意中断有效与触发方式,中断服务程序要注意对累加器A的入站保
7、护。
此文档下载收益归作者所有