中断控制LED流水灯_第1页
中断控制LED流水灯_第2页
中断控制LED流水灯_第3页
中断控制LED流水灯_第4页
中断控制LED流水灯_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中断控制LED花样流水灯姓名:杨凡

学号:1题目内容介绍实验效果:LED先自高位向低位依次亮。中断效果:按键一次会中断当前效果,执行反效果定时和按键,都采用了中断方式。即采用定时器0中断来控制延时时间,用外部中断0进行方向控制;

2硬件原理图3程序#include<reg52.h>#include<intrins.h>unsignedchari=0,temp;unsignedcharbdataj;//在位寻址区定义字节变量sbitj0=j^0;//定义位变量//-------------------------------------------voidmain(void){TMOD=0x01;//设定T0定时方式1TH0=(65536-10000)/256;//定时10ms@12MHzTL0=(65536-10000)%256;TR0=1;ET0=1;//允许T0中断

PT0=1;//设定T0为高优先级4

IT0=1;//外部中断输入下降沿有效

EX0=1;//允许X0中断

EA=1;//开放总中断

temp=0xfe;P1=temp;while(1);}voidT0_int(void)interrupt1//每隔10ms执行一次{TH0=(65536-10000)/256;//定时10ms@12MHzTL0=(65536-10000)%256;i++;5

if(i>=100){i=0;if(j0==0)temp=_crol_(temp,1);if(j0==1)temp=_cror_(temp,1);P1=temp;}}//-------------------------------------------voidX0_int(void)interrupt0using1{unsignedchark;j0=~j0;//改变运动方向

for(k=200;k>0;k--);//延时一会再退出,以避免抖动}6主程序流程图子程序流程图7关键程序代码(一)voidmain(void){TMOD=0x01;//设定T0定时方式1TH0=(65536-10000)/256;//定时10ms@12MHzTL0=(65536-10000)%256;TR0=1;ET0=1;//允许T0中断

PT0=1;//设定T0为高优先级

IT0=1;//外部中断输入下降沿有效

EX0=1;//允许X0中断

EA=1;//开放总中断

temp=0xfe;P1=temp;while(1);}8关键程序代码(二)voidX0_int(void)interrupt0using1{unsignedchark;j0=~j0;//改变运动方向

for(k=200;k>0;k--);//延时一会再退出,以避免抖动}9单片机中的中断CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生或中断请求);CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回)。中断请求→中断响应→中断服务→中断返回中断过程事件B的处理过程事件A事件B什么是中断?10中断源80C51单片机有5个中断源。见下表中断源

说明

外部中断从P3.2引脚引入的外部中断申请定时器T0中断定时器T0溢出时引发中断申请外部中断从P3.3引脚引入的外部中断申请定时器T1中断定时器T1溢出时引发中断申请串行口中断一次串行发送或接收完成后,发出中断申请11调试手段KEIL的使用画仿真硬件图KEIL与proutes联机调试12实训心得由于时间仓促,知识使用能力范围有限,对中断理解不够,此次PPT效果不是很好,但还是自己课后时间做出来的,实训过程中,多次出现错误调试不出来也很着急,着急是没用的,于是请教了同学,看了上学期的中断内容,自己运用的是外部中断利用按键的,首先确定INT0是P3.2口,还有就是延时时间用计数次数乘上定时时间。如延时0.5S=50次*10000次*1uS,这些设定好了还有注意的是要去除按键的消抖。13抖动时间抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。这是一个很重要的时间参数,在很多场合都要用到。按键按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几秒至数秒。键抖动会引起一次按键被误读多次。为确保CPU对键的一次闭合仅作一次处理,必须去除键抖动。在键闭合稳定时读取键的状态,并且必须判别到键释放稳定后再作处理。14硬件消抖和软件消抖硬件消抖用RS触发器软件消抖如果按键较多,常用软件方法去抖,即检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论