可控流水灯单片机课程设计报告c语言
EDA课程设计报告
流水灯
专业:电子信息工程
学号:xxx
姓名:xxx
2012-6-27
目 录
1 引言1
2 课题综述1
2.1 课题的来源1
2.2 课题的意义1
2.3 预期的目标1
2.4 面对的问题1
2.5 课题的技术2
3 系统分析2
3.1 涉及的基础知识2
3.2 89C51单片机引脚图及引脚功能介绍2
3.3 解决问题的基本思路3
3.4 总体方案3
4 系统设计3
4.1 硬件设计3
4.2 软件设计4
4.3 元件清单4
4.4 硬件原理图5
4.5 硬件焊接图5
4.6 设计主要功能5
5 代码编写6
6 程序调试9
结 论10
致 谢11
参考文献12
1 引言
单片机课程设计主要是为了让我们增进对89C51单片机电路的感性认识,加深对理论方面的理解。了解软硬件的有关知识,并掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目的。
2 课题综述
2.1 课题的来源
当今社会,这种由单片机芯片控制各种硬件工作的技术也日益成熟,并普及在交通、化工、机械等各个领域。而流水灯这项技术在生活中的应用更是广泛,较为贴近生活。而流水灯控制的设计所需要的知识也正好吻合了我们本学期对于单片机这门课程的学习,所以设计流水灯控制的这个课题让我们对知识的学习和巩固都有了进一步的加深。
2.2 课题的意义
这次单片机课程设计是为了通过对流水灯控制的设计加强学生团队配合的能力和创造力;综合运用专业及基础知识,解决实际工程技术问题的能力。能够让学生深入真是的体会到所学的理论知识和实践相结合的过程。找出自身的不足并加以改正。
2.3 预期的目标
对8个LED灯设计5种流水灯显示方式,用一个按键进行方式选择,并用一个数码管显示方式编号;用两个键来控制流水灯流动的速度。
2.4 面对的问题
这次课程设计是通过8951位单片机实现。但面对的问题却是两方面的:一个是软件的设计,也就是实现流水灯控制功能的程序编辑;另一个是硬件的设计,需要我们自己连接、焊接电路板。而更为严峻的就是设计的最后还要将软硬件相结合。首先我们需要通过protel将设计的实物的电路图画出来,再根据电路图连接实物电路。
2.5 课题的技术
LED灯的显示方式、模式切换按钮的控制、亮灯速度的按键控制等技术。
3 系统分析
3.1 涉及的基础知识
电路焊接:制造电子产品的重要手段。
89C51单片机指令系统:规定89C51单片机内操作的语句或命令。
LED数码管的显示:向数码的显示送数,控制系统的显示部分。
3.2 89dC51单片机引脚图及引脚功能介绍
本次实习的目的在于加深89C51单片机的理解,首先来简单认识一下,它的引脚如图3-1所示:
图3.1 80C51的引脚图
单片机的39个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
1.电源:
(1)VCC:芯片电源,接+5V;
(2)VSS:接地端;
2.时钟:
XTAL1、XTAL2 :晶体振荡电路反相输入端和输出端。
3.控制线:控制线共有4根,
(1)ALE/PROG:地址锁存允许/片内EPROM编程脉冲
ALE功能:用来锁存P0口送出的低8位地址
PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
(2) PSEN:外ROM读选通信号。
(3)RST/VPD:复位/备用电源。
RST(Reset)功能:复位信号输入端。
VPD功能:在Vcc掉电情况下,接备用电源。
(4)EA/Vpp:内外ROM选择/片内EPROM编程电源。
EA功能:内外ROM选择端。
Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
4.I/O线
89C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
3.3 解决问题的基本思路
因为选定用循环移位法来实现亮灯程序的,所以在一种设计好一种亮灯方式的前提下编程实现一个循环结构体,分别来实现五种不同的亮灯方式。另外再编一个实现延时控制的调用程序,来提供亮灯速度的控制。
3.4 总体方案
在做本次课程设计之前将小组内人员分为两小组:一组分负责硬件设计,另一组负责软件编程。硬件小组负责实物的连接和焊接,并进行硬件测试;软件小组负责实现流水灯的各部分程序设计,并进行软件的仿真测试。最后将完成的软硬件相结合,从而达到实现课程设计的效果。
4 系统设计
4.1 硬件设计
按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典