收藏 分享(赏)

基于C51的流水灯设计课程设计.doc

上传人:精品资料 文档编号:10849800 上传时间:2020-01-14 格式:DOC 页数:13 大小:309KB
下载 相关 举报
基于C51的流水灯设计课程设计.doc_第1页
第1页 / 共13页
基于C51的流水灯设计课程设计.doc_第2页
第2页 / 共13页
基于C51的流水灯设计课程设计.doc_第3页
第3页 / 共13页
基于C51的流水灯设计课程设计.doc_第4页
第4页 / 共13页
基于C51的流水灯设计课程设计.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、学号 基于单板机的应用系统 课程设计报告题目: 基于 C51 的流水灯设计专业: 计算机科学与技术班级: 10(2)班姓名:指导教师:冯 康成绩:计算机与信息工程系年 月 日2013-2014 学年 第二学期计算机与信息工程系基于单板机的应用系统课程设计报告1基于 C51 的流水灯设计1 设计内容1.1 设计用途当今的社会是一个新技术层出不穷的时代,科技迅速发展,在电子领域的发展更是迅速,同时也在影响着我们的生活。单片机控制一直是电子领域中比较重要的一个方向,而流水灯就是单片机控制在日常生活中常见的一种应用。随着人民生活水平的提高,流水灯在现实生活中所起的作用越来越重要。例如:在人流拥挤繁忙的

2、交通路段,闪烁着的流水交通灯,提醒着我们要遵纪交通规则,在霓虹闪烁的繁华大街上,闪烁的流水灯无不吸引过路人的眼球,甚至在一些大型商场大厦的自动门上都装有自动流水灯,告诉人们的时间和日期。1.2 设计内容流水灯就是一组灯,在控制系统的控制下按照程序设定的顺序和时间来发亮和熄灭,有这样就能形成一定的视觉效果。本流水灯设计实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电子原器件构成的电路和控制单片机的程序组成的流水灯控制系统。通过编写程序可以做出从左向右,从右向左,从中间向两边,从两边向中间等等美轮美奂的效果。本设计涉及到了STC89C52 单片机,所有的

3、设计都是基于该单片机开发的。本设计主要设计的是从左到右依次点亮的流水灯设计,要实现这种发光效果,要将计算机与信息工程系基于单板机的应用系统课程设计报告2几个发光二极管依次点亮、熄灭,发光二极管便会一亮一灭地成为流水灯了。是最实用也是比较简洁的方法。2 原理及分析如图 1 所示即为流水灯设计的硬件原理图硬件原理: 图 1 流水灯硬件原理图从图 1 中可以看出,发光二极管 LED 的所有阳极连在一起,属于共阳极的连接方法,此时 LED 低电平有效,即如果要让接在 P10 口的 LED1 亮起来,那么只要把 P10 口的电平变为低电平就可以了;相反,如果要接在 P10 口的 LED1 熄灭,就要把

4、P10 口的电平变为高电平;同理,接在 P11P17 口的其他 7 个 LED 的点亮和熄灭的方法同 LED1。因此,要实现流水灯功能,我们只要将发光二极管 LED1LED8 依次点亮、熄灭,8 只 LED 灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制发光二极管亮灭的时候应该适当延时一段时间,否则我们就看不到“流水”效果了。实际开发板的流水灯布局如图 2 所示。图 2 实际开发板的流水灯布局计算机与信息工程系基于单板机的应用系统课程设计报告33 设计过程和程序代码3.1 总设计框图:总设计框图如图 3 所示图 33.2 L

5、ED流水效果设计单片机 I/O 的应用最典型的是通过 I/O 口与 LED 构成显示电路。利用单只 LED 组合排列成 “1 字型,图中共用八个 LED,从上到下依次显示采用动态显示。STC89C52单片机电源驱动按键控制流水灯显示时钟电路复位电路计算机与信息工程系基于单板机的应用系统课程设计报告43.3 按键控制按键处理设置为:初始状态,当按键 K2 没有按下时,标志位为 1,8 个 LED 灯按从上到下的顺序依次亮灭;当 K2 按下时,标志位取反,8 个 LED 首先按照从上到下的顺序依次亮灭,然后按照从下到上再从上到下的顺序来回亮灭。当 K2 再次被按下时,标志位再次取反,回到初始状态,

6、如此循环, K1 是复位键。3.4 复位电路按键电平复位,分压复位。计算机与信息工程系基于单板机的应用系统课程设计报告53.5 程序控制流程图程序控制流程图如图 10 所计算机与信息工程系基于单板机的应用系统课程设计报告6LED 灯从上至下亮灭,再从下至上循环亮灭否flag=0是主程序运行LED 灯一直从上到下亮灭开始流水灯显示K2 被按下flag=flag,消抖是否图 103.6 程序代码单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到流水灯循环点亮的现象,我们还需要告诉单片机怎么来进行工作,即编写程序控制单片机相应管脚电平的高低变化,来实现计算机与信息工程系

7、基于单板机的应用系统课程设计报告7发光二极管的一亮一灭。软件编程是单片机应用系统中的一个重要的组成部分,是单片机学习的重点和难点。“流水灯”的流向方式有很多种,有从 “上向下流“,有“下向上流“,也有“两边向内流 “、“ 内部向外流 “好多方法都可以实现这些功能,可是某些编程方法比较繁琐,本次课程设计的这种方法是比较常用,比较实用,也是比较简洁的方法,此方法实现的是发光二极管从上到下依次点亮,然后由按键控制流水灯有没有循环效果。控制 8 个发光二极管时,可以对 P1口直接赋值,8 个 LED 用 2 位 16 进制就可以表示其状态,例如让第一个灯亮,其他灯灭,用二进制表示为 1111 1110

8、B,即 16 进制的 0xfe。同理第二个灯亮则有 1111 1101B,即 0xfd,依此类推实现上述功能的程序代码如下:源代码:#include /52 单片机头文件,一般不要改动,里面包含特殊功能寄存器的定义#include /为下面使用其内部函数循环左移和循环右移添加的头文件#define uchar unsigned char /将 unsigned char 定义为 uchar,简化输写。提高编程速度 计算机与信息工程系基于单板机的应用系统课程设计报告8#define uint unsigned int /将 unsigned char 定义为 uint,简化输写。提高编程速度sb

9、it k2=P30; /按键 k2,连接在 P3.0 上uchar led;uint i,j;/*延时子程序*/void delayms(uint time)while(time-)for(j=0;j110;j+); /大约为 1ms,但不是很精确/*主程序*/void main()char flag=1; /用于标志按键,按键每按下一次取反while(1) /死循环,程序永远在循环里面运行。if(k2=0)flag=flag;计算机与信息工程系基于单板机的应用系统课程设计报告9delayms(200); /消除抖动,尽量避免一次按键当成几次按键if(flag=0)led=0xfe;for(i

10、=0;i8;i+)P1=led ;led=_crol_(led,1); /将 led 循环左移 1 位delayms(500); /延时一会才能看到流水效果,大约500msif(flag=1)led=0xfe;for(i=0;i8;i+)P1=led;led=_crol_(led,1); /循环左移delayms(500); 计算机与信息工程系基于单板机的应用系统课程设计报告10for(i=0;i8;i+)P1=led;led=_cror_(led,1); /循环右移delayms(500);编译及下载过程接下来,我们将上述程序编译,并用相应软件将.hex 文件烧写到单片机芯片中,在使用软件烧

11、写.hex 文件时注意单片机的选型及其他一些问题,烧写后的单片机电路板上可以看到 LED 的 “流水“ 效果,但源程序看起来更加简洁,直观。其实 STC89C52 单片机有的指令常用,有的指令不常用,只要遵守语法规则,可以用这些指令“组合” 成我们想象到的很多程序。当然,有时一条指令可以替代很多条指令,这样会使程序简洁,程序代码减少,在编写较大程序时可以让单片机的存储器放得下你需要的代码,这也是单片机高手所追求的“程序简洁高效 ”。计算机与信息工程系基于单板机的应用系统课程设计报告114 设计结果与分析4.1 设计结果打开安装好的 Uvison 4.0 软件,关闭之前打开的所有工程,重新新建一

12、个工程,并选择 Atmel 公司的 AT89C52 芯片,保存在相应位置,然后新建一个.C 文件,并将.C 文件添加进刚才新建的工程。再将上述 C 语言代码输入该文件,单击“编译”按钮,过程中出现一些小错误,经过我仔细检查进行反复调试,最终将程序编译成功。软件编写成功之后,输出.hex 文件。然后将单片机用连在电脑上,利用单片机专门的烧写程序通过串口将.hex 文件正确烧写进单片机打开单片机电源即可看到流水灯效果。4.2 设计结果分析该设计可以能看到单一方向的流水灯和循环流水灯的效果,可是也有待改进之处,例如 :延时的精确性方面,可以考虑用定时器对延时的精确性进行改进,而且流水灯是单一的颜色和

13、亮度,需要在发光二极管颜色的种类以及颜色的明暗的设置上再做改进。本程序实现的功能比较简单,其实我们可以在此基础上扩展更复杂的流水灯控制。比如再增加一排流水灯,同时显示不同的流水花样,控制流水灯显示数字或图案,以及可以通过流水灯做摇摇棒等等。用 STC89C52 单片机设计的该流水灯具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心即单片机。单片机的最明显的优势,就是便于植入到各种仪器,设备中。计算机与信息工程系基于单板机的应用系统课程设计报告12通过这次单片机课程设计,我不仅加深了对单片机理论知识的理解,而且能将单片机理论知识很好地应用到实践中去,使理论与实际相结合,

14、使我的理论知识得到了巩固,在查资料翻阅资料的过程中也丰富了我的知识阅历。与此同时,也学会了之前没怎么接触的硬件焊接工作,对构成单片机最小系统的一些元器件也有了进一步的认识。在这次课程设计中我看到了自己眼高手低的缺点,对一些基础知识掌握得还不是很好,而且以前所学的知识遗忘了很多,体会到了那种书到用时方恨少的感觉!鉴于此,以后我要不断充电,不断提升自己,经常回顾所学的知识,养成良好的学习习惯,争取让自己变得更强!5 参考文献1 张义和例说 51 单片机(C 语言版)人民邮电出版社2杨欣 ,王玉凤 ,刘湘黔 51 单片机应用从零开始清华大学社3 李建忠单片机原理及应用 西安电子科技大学4鲍祖尚 ,刘凯 ,谭永宏单片机原理与开发技术国防科技大学出版社,2011 年5陈海宴等 51 单片机原理及应用北京航空航天大学出版社,2010.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报