实验二:单片机中断与IO口控制流水灯

实验二:单片机中断与IO口控制流水灯

ID:46583863

大小:603.20 KB

页数:5页

时间:2019-11-25

实验二:单片机中断与IO口控制流水灯_第1页
实验二:单片机中断与IO口控制流水灯_第2页
实验二:单片机中断与IO口控制流水灯_第3页
实验二:单片机中断与IO口控制流水灯_第4页
实验二:单片机中断与IO口控制流水灯_第5页
资源描述:

《实验二:单片机中断与IO口控制流水灯》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验二中断与I/O控制实验要求:运用外部中断控制单片机I/O口,利用按键实现流水灯正反向流动,进而完成流水灯操作。实验要点:一、电路部分:Protues仿真单片机最小系统构建P0口上拉电阻设计利用8个LED构建P0口的8位流水灯外部中断电路设计二、C51程序部分中断函数的编写流水灯功能模块代码的编写实验原理解析:一:LED使用注意事项LED使用低压电源,供电电压在直流2-3V之间,设计仿真电路时可以使用Vcc供电一般的发光二极管的工作电流是20毫安,所以我们在绘制仿真图像的时候需要为LED灯管串联一个限流电阻。阻值计算如式(2-1)。???−????R

2、=(2-1)????(一般的缺省值为Vled=2-3V,Iled=20mA,Vcc=5V)LED发光二极管隶属于二极管大类,具有与一般二极管相同的特性:“正向导通,反向截至,过大电压反向击穿”,所以在使用时,应当按照二极管正常使用方法使用,正向导通:即V1>V2。图1LED正确的LED电路,如图2。图1LED电路二:单片机最小系统参考视频教程进行绘制,完成后如图3。图3流水灯硬件原理图三:引入中断(硬件+软件):如何引入中断呢?首先我们来看一下中断的流程图,如图4。图4流程图下面一步一步进行解释:第一步:CPU开放外部中断允许按照上课所用PPT所示,中

3、断原理硬件图如图5所示。图5中断原理图为了使得INT0与INT1处中断信号进入单片机中断源,需要依次闭合开关:EX0,EA决定什么信号(下降沿还是低电平)才是中断信号体现在C51中,代码如下voidint0Def(){EA=1;EX0=1;IT0=1;//利用TCON寄存器中的IT0决定了下降沿才是中断信号}第二步:引入中断信号前面提到,在该教程中,由于为IT0赋1,一概以下降沿为触发信号,那么如何引入下降沿呢?提及一点:单片机在初始化也就是刚刚开机的时候,各个IO口(P0-P3)皆是自动为高电平,所以我们为INT0口引入一个短时间的低电平就可以引入一

4、个下降沿了。电路如图6。图6外部中断INT0引入方法第三步:中断标志位置一此步由单片机系统自动完成,实验中不做要求。第四步:进入并执行中断程序在C51编程中,引入外部中断需要我们在main函数的下面按照格式写入中断函数:格式如下:void函数名()interruptn其中,n值对应如表1。表1中断号列表n的值意义0外部中断01定时器中断02外部中断13定时器中断14串行口中断以下例子为书写一个外部中断函数的例子voidmain(){//你的代码}voidname()interrupt0{//中断函数代码,执行完了返回中断发生处}第五步与第六步:恢复现场由单

5、片机自动执行,实验中不做要求实例:现象由同学们自行导入仿真工程,观察现象并思考原理。#include"reg52.h"typedefunsignedintu16;//对数据类型进行声明定义typedefunsignedcharu8;#defineLEDP0/*延时:利用单片机计算一次减法需要一定的时间通过大量的减法操作去造成一端时间的停顿*/voiddelay(u16i){while(i--);}voidint0Int(){EA=1;EX0=1;IT0=1;}voidmain(){LED=0x55;//01010101int0Int();while(1){

6、LED=~LED;delay(50000);}}voidledWater()interrupt0{if(LED==0x55)LED=0x0F;elseLED=0x55;delay(10000);//尝试理解一下此处的意义,涉及知识点:按键消抖}思考题改为INT1,如何实现?

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。