欢迎来到天天文库
浏览记录
ID:56772032
大小:56.50 KB
页数:4页
时间:2020-07-08
《实验3 外部中断实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验三定时中断实验一、实验目的1.掌握51单片机外部中断的应用。2.掌握中断函数的写法。3.掌握定时器的定时方法。4.掌握LED数码管的显示。二、实验内容1.用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来。2.用外部中断改变流水灯的方式。3.用定时器T1的方式2控制两个LED以不同周期闪烁。使用定时器T1的方式2来控制P0.0、P0.1引脚的两个LED分别以1s和2s的周期闪烁。三、实验仿真硬件图在Proteus软件中建立如下图所示仿真模型并保存。1.用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来(用中断方式做计数器
2、)。2.用外部中断改变流水灯的方式。中断前:开始时,P0.0~P0.7的8个灯依次点亮。外部中断0:P0.0~P0.7的左右4个灯闪烁亮8次外部中断1:P0.0~P0.7的8个灯间隔闪烁8次改变中断优先级和保护现场,观察运行结果四、编程提示外部中断0请求,由P3.2管脚输入,通过IT0位来决定是低电平有效还是下降沿有效。一旦输入信号有效,即向CPU申请中断,并建立IE0中断标志。以外部中断0为例,开放中断源采用以下语句:EA=1;//开放中断总允许位EX0=1;//开放外部中断0允许位IT0=1;//置外部中断为边沿(下边沿)触发方式中断函数结构如下:
3、voidint_0()interrupt0//interrupt0表示该函数为中断类型号0的中断函数{}同级自然优先级:外部中断0→定时器T0中断→外部中断1→定时器T1中断→串行口中断。中断优先级别的设定:实验二要求:初始状态为P0.0~P0.7的8个LED显示灯依次循环点亮;外部中断0服务程序为8个LED灯,左4个,右4个闪烁8次,外部中断1服务程序8个LED灯,间隔闪烁8次。⑴设定外部中断0为高优先级,先执行外部1中断,过程中用外部0中断来将其中断,反之不行。注意保护现场。⑵设定外部中断1为高优先级,先执行外部0中断,过程中用外部1中断来将其中断
4、,反之不行。注意保护现场。实验三(调试下列程序,在错误行后面注明错误及改正方法):#include#defineucharunsignedchar;sbitD0=P1^0;sbitD1=P1^1;uchara,b;voidmain(){EA=1;ET1=1;TMOD=0x20;TL1=6;TR0=1;a=0;b=0;while(1);}voidt1()interrupt1{a++;b++;if(a=1000){D0=~D0a=0;}if(b=4000){D1=~D1;b=0;}写出源程序,并注释实验报告格式实验三定时中断实验学院:专业
5、:年级:实验时间:姓名:学号:指导教师:一、实验目的1.掌握51单片机外部中断的应用。2.掌握中断函数的写法。3.掌握中断优先级别的使用。4.掌握LED数码管的显示。二、实验内容1.用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来。2.用外部中断改变流水灯的方式。三、电路图(贴Protues仿真图)四、程序与注释1)程序12)程序23)程序3六、简答题1)电平触发和下降沿触发在程序中如何设置?2)如何设置INT1为优先级?何谓优先?3)中断服务函数的interrupt后面的数字表示什么?七、体会
此文档下载收益归作者所有