下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、流水灯控制实验报告及程序Company Document number : WUUT-WUUY-WRgGB-BWYTT-1982GT姓名专业 通信工程 学号_成绩、实验目的1. 掌握Keil C51软件与protues软件联合仿真调试的方法;2. 掌握如何使用程序与查表等方法实现流水效果;3. 掌握按键去抖原理及处理方法。二、实验仪器与设备1. 微机1台 2. Keil C51集成开发环境3. Proteus仿真软件三、实验内容1. 用Proteus设计一流水灯控制电路。利用P1 口控制8个发光二级管LIL8。口 接一按键K1。参考电路如下图所示。其中74LS240为八反响三态缓冲器/线驱动
2、器。KEY=O:L1-L8全亮;KEY=1:L1-L8先全灭,KEY二2:L1-L8先全灭,KEY二3:L1-L8先全壳,KEY二4:L1-L8先全灭,KEY=5:自行设计效果。2. 用中断或查询方式编写程序,每按动一次K1键,演示不同的流水效果。若用KEY 表示按键的次数,则其对应的流水效果如下:然后自右向左单管点亮,如此循环 然后自右向左依次点壳,如此循环 然后自左向右依次熄灭,如此循环 然后整体闪烁,如此循环;以上移位及闪烁时间间隔均设置为秒,按动5次按键后,再按键时,流水效果从 头开始循环。四、实验原理1. 按键去抖原理:通常按键所用的开关为机械弹性开关,当机械触点断开、闭合 时,电压
3、信号波形如下图所示。由于机械触点的弹性作用,一个按键开关在闭 合时不会马上稳定的接通,在断开时也不会一下子断开。因而在闭合及断开的 瞬间均伴随有一连串的抖动。抖动时间的长短山按键的机械特性决定,一般为 5lOmso按键抖动会引起一次按键被误读多次。为了确保CPU对键的一次闭合 仅做一次处理,必须去除按键抖动。在键闭合稳定时,读取键的状态,并且必 须判别;在键释放稳定后,再作处理。按键的抖动,可用硬件或软件两种方法 消除。常用软件方法去抖动,即检测到按键闭合后执行一个510ms延时程 序;让前沿抖动消失后,再一次检测键的状态,如果仍保持闭合状态电平,则 确认为真正有按键按下。当检测到按键释放后,
4、也要给510ms的延时,待后 延抖动消失后,才能转入该键的处理程序。薛按下2. 74LS240:八反相三态缓冲器/线驱动器 引脚排列图:3中断原理:当某种内部或外部事件发生时,单片机的中断系统将迫使CPU暂停正 在执行的程序,转而去进行中断事件的处理,中断处理完毕后,乂返回被中断 的程序处,继续执行下去。每次按键是一次外部中断,按下按键后,CPU利用 switch case语句跳转到相应语句执行。五、实验步骤1. 用Proteus设计流水灯控制电路;2. 在Keil C51中编写流水灯控制程序,编译通过后,与Proteus联合调试;3. 按动K1键,观察是否达到演示效果;4. 试用中断和查询两
5、种方式编写程序,比较二者区别。六、电路设计及调试1.实验电路2. 程序设计与调试#include#define uchar unsigned char#define uint unsigned intuchar i=0, j, k, m, n;uchar code tablel = 0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01 ;/自右向左单个点亮二极管的代码uchar code table2 = 0x00, 0x80, OxcO, OxeO, OxfO, 0xf8, Oxfc, Oxfe, Oxff ;/自右向左依次点亮二极管的代码
6、uchar code table3 = 0xff, Oxfe, Oxfc, 0xf8, OxfO, OxeO, OxcO, 0x80, 0x00;自左 向右依次熄灭二极管的代码uchar code tabled = 0x00, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0xc0;双灯循环 右移void delay(uint a);void INT_1() interrupt 2EX1=O;delay(20);EXI二1;i+;if(i=6)i 二0;void main()EA二1;/打开总中断EXI二1; /打开外部中断1IT1二1; /设置中断触发方式为下降沿触
7、发方式while(1)switch(i)case O:Pl=Oxff;break;case 1 :Pl=tablel j ; delay (500) ; j+; if (j10) j=0;break;case 2:Pl=table2k;delay(500);k+; if(k=10) k=0;break;case 3:Pl=table3m;delay(500);m+; if(m=10) m=0;break;case 4:Pl二0x00;delay(300);Pl二、P1;delay(300);break;case 5:Pl=table4n:delay (500);n+; if(n=10) n=0
8、;break;default:break;void delay( uint a)uchar b;for (a; a > 0; a)/循环600*255次机器在这里执行需要一段时间也就达到了延时效果for(b = 255; b > 0; b一一);在"Options for target'的"debug"里选中"Proteus VSM Simulator"并选择输出"hex" 文件进行联合调试。分别进行全速调试与单步调试,看是否出现编程所想要实现的 效果。3. 实验结果按下不同的按键次数,执行不同的流水效果,自行设计效果为双灯循环右移。七、实验总结及问题通过本次流水灯控制实验,进一步掌握了 Ke订C51软件与proteus联合仿真调试 的方法,逐步熟练了单步调试的方法。自己用中断方法完成了本次实验,也尝试用查询 方法编写程序,知道中断方法是在有中断请求时CPU再去处理,之前可一直忙于其他事 情,而查询方法需一直查询标志位,CPU不能做其他事情,中断方法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美甲店VIP客户服务合同
- 智能交通信号智能化施工分包合同
- 体育场馆改造合同
- 铝单板体育馆施工合同
- 居民小区钢结构楼梯施工协议
- 住宅小区顶管安装服务合同
- 2024年高效协同发展合作合同书范例版B版
- 超市电气设备维护协议
- 商业活动现场制片管理合同
- 2024版股权激励协议模板
- 2025届陕西省咸阳市礼泉县数学高一上期末考试试题含解析
- 查理和巧克力工厂微课公开课获奖课件省赛课一等奖课件
- 附着式升降脚手架(爬架)安全技术交底
- 六年级下册道德与法治-【说课稿】9 日益重要的国际组织
- 2024年中国作家协会所属单位公开招聘工作人员14人历年高频难、易错点500题模拟试题附带答案详解
- 术后镇痛讲解
- 北师大版九年级数学上册期末考试题(带答案)
- 1输变电工程施工质量验收统一表式(线路工程)-2024年版
- 计算机应用基础
- 期末 (试题) -2024-2025学年人教PEP版英语六年级上册
- 五年级数学(小数四则混合运算)计算题专项练习及答案汇编
评论
0/150
提交评论