实验三——-LED指示灯循环控制.doc

实验三——-LED指示灯循环控制.doc

ID:61784442

大小:221.50 KB

页数:7页

时间:2021-03-20

实验三——-LED指示灯循环控制.doc_第1页
实验三——-LED指示灯循环控制.doc_第2页
实验三——-LED指示灯循环控制.doc_第3页
实验三——-LED指示灯循环控制.doc_第4页
实验三——-LED指示灯循环控制.doc_第5页
资源描述:

《实验三——-LED指示灯循环控制.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验课程:单片机原理及应用实验名称:实验三——LED指示灯循环控制实验日期:2013年4月10日一、实验目的熟悉μVision3编译软件、掌握C51编程与调试方法。二、实验内容1、按照教材P227的图A.32,绘制实验三电路原理图2、根据功能要求,编写C51程序3、练习μVision3程序动态调试方法,并最终实现8个LED灯依次点亮的功能:P0.0→P0.1→P0.2→P0.3→┅→P0.7→P0.6→P0.5→┅→P0.0的顺序,无限循环,间隔约50ms4、观察仿真结果,完成实验报告。三、实验要求1、采用proteus+Keil联合仿真法运行C51程序,并练习采用单步、断点以及监视窗等手

2、段进行程序调试2、提交的实验报告中应包括:电路分析及原理图、编程思路及C51源程序、调试过程简述,仿真运行效果以及实验小结。3、提交实验报告的电子邮件主题及存盘1、电路分析及原理图图1LED指示灯循环控制电路原理图图中LED指示灯外接于P0口。由于P0口作为I/O口使用时是漏极开路的,需要外接上拉电阻因而图中还加有8只100的电阻。此外,还包括时钟电路和复位电路图中的时钟电路和复位电路与实验1计数显示器相同。 2、编程思路及C51源程序编程要求:程序启动后8只发光二极管做循环点亮控制其中灯亮顺序为P0.0→P0.1→P0.2→P0.3→……P0.7→P0.6→P0.5→……→P0.0

3、无限循环两次LED灯亮的时间间隔约为0.5秒。根据题目要求程序中应该有一个延时子程序用来每次延时0.5秒还要有两个循环结构分别控制由上到下和由下到上还应该有一个控制LED发光的数据。LED指示灯循环控制程序如下:#include"reg51.h"//预处理命令单片机头文件charled[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//LED灯花样数据voiddelay(unsignedinttime)//延时函数delay声明{unsignedintj=0;//定义无符号整形变量初值为0for(;time>0;time--)//采用for结构

4、的外层循环for(j=0;j<125;j++);//采用for结构的内层循环}voidmain()//主函数{chari;while(1)//采用while结构的无限循环体{for(i=0;i<=7;i++)//由上向下循环控制{P0=led[i];delay(200);//调用函数delay延时50ms}for(i=7;i>=2;i--)//由下向上循环控制{P0=led[i-1];delay(200);//调用函数delay延时50ms}}}3、调试过程简述采用proteus+Keil联合仿真法运行C51程序基本方法:输入源程序→建立工程→对工程进行详细设置→将源程序变为目标代码→运行

5、调试。(1)建立工程文件点击“Project->NewProject…”菜单在编辑框中输入一个名字。选择目标CPU,Intel系列的80C51BH:。(2)源文件的建立点击新建文件按钮打开一个新的文本编辑窗口输入程序源代码以*.c保存该文件。(3)添加源程序(右击“SourceGroup1”→点击“AddfiletoGroup”SourceGroup1”→添加生成的.c文件)如图2。图2添加源程序(4)工程设置右击Project窗口的Target1→选择“Project->Optionfortarget‘target1’”→工程设置对话框,设置对话框中的OutPut页面:勾选“Creat

6、Hexfile”)如图3。图3设置对话框中的OutPut页面 (5)在Keil软件里控制Proteus仿真运行下载→运行→停止。也可以用调试工具栏分步调试。4、仿真运行效果LED指示灯循环控制仿真运行效果如图5图5LED指示灯循环控制仿真运行效果效果程序启动后8只发光二极管做循环点亮控制)其中灯亮顺序为P0.0→P0.1→P0.2→P0.3→……P0.7→P0.6→P0.5→……→P0.0,无限循环,两次LED灯亮 的时间间隔约为0.5秒。达到了实验的要求。5、实验小结通过本次实验)我熟悉uVision3编译软件)了解软件的结构组成与功能)学习C51语言的程序设计方法)学会在uVision3中

7、进行C51程序录入、编译、和调试)理解Proteus与Keil联合的仿真原理)实现LED指示灯循环控制功能。更好的将C语言和C51语言联系在了一起)学到的知识能准确的利用了出来)这次实验不仅是动手能力的锻炼)更是脑力的锻炼)经过这次实验)让我们对单片机这门课有了更充分的认识。

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

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

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