80C51可控流水灯单片机课程设计报告

上传人:M****1 文档编号:432887234 上传时间:2023-10-05 格式:DOC 页数:17 大小:591KB
返回 下载 相关 举报
80C51可控流水灯单片机课程设计报告_第1页
第1页 / 共17页
80C51可控流水灯单片机课程设计报告_第2页
第2页 / 共17页
80C51可控流水灯单片机课程设计报告_第3页
第3页 / 共17页
80C51可控流水灯单片机课程设计报告_第4页
第4页 / 共17页
80C51可控流水灯单片机课程设计报告_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《80C51可控流水灯单片机课程设计报告》由会员分享,可在线阅读,更多相关《80C51可控流水灯单片机课程设计报告(17页珍藏版)》请在金锄头文库上搜索。

1、80C51单片机流水灯实训和 调试报告 班级: 姓名: 学号:1 目的单片机课程设计主要是为了让我们增进对80C51单片机电路的感性认识,加深对理论方面的理解。了解软硬件的有关知识,并掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目的。2.2 课题的意义这次单片机课程设计是为了通过对流水灯控制的设计加强学生团队配合的能力和创造力;综合运用专业及基础知识,解决实际工程技术问题的能力。能够让学生深入真是的体会到所学的理论知识和实践相结合的过程。找出自身的不足并加以改

2、正。2.3 预期的目标对8个LED灯设计5种流水灯显示方式,用一个按键进行方式选择,并用一个数码管显示方式编号;用两个键来控制流水灯流动的速度。2.4 面对的问题这次课程设计是通过80C51位单片机实现。但面对的问题却是两方面的:一个是软件的设计,也就是实现流水灯控制功能的程序编辑;另一个是硬件的设计,需要我们自己连接、焊接电路板。而更为严峻的就是设计的最后还要将软硬件相结合。首先我们需要通过protel将设计的实物的电路图画出来,再根据电路图连接实物电路。2.5 课题的技术LED灯的显示方式、模式切换按钮的控制、亮灯速度的按键控制等技术。3 系统分析3.1 涉及的基础知识电路焊接:制造电子产

3、品的重要手段。80C51单片机指令系统:规定80C51单片机内操作的语句或命令。LED数码管的显示:向数码的显示送数,控制系统的显示部分。3.2 80C51单片机引脚图及引脚功能介绍本次实习的目的在于加深80C51单片机的理解,首先来简单认识一下,它的引脚如图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功能:用

4、来锁存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线80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。3.3

5、 解决问题的基本思路因为选定用循环移位法来实现亮灯程序的,所以在一种设计好一种亮灯方式的前提下编程实现一个循环结构体,分别来实现五种不同的亮灯方式。另外再编一个实现延时控制的调用程序,来提供亮灯速度的控制。3.4 总体方案在做本次课程设计之前将小组内人员分为两小组:一组分负责硬件设计,另一组负责软件编程。硬件小组负责实物的连接和焊接,并进行硬件测试;软件小组负责实现流水灯的各部分程序设计,并进行软件的仿真测试。最后将完成的软硬件相结合,从而达到实现课程设计的效果。4 系统设计4.1 硬件设计按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。80C51单片

6、机是本次课程设计运用的主要原件。流水灯控制设计是用一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。4.2 软件设计单片机的应用系统由硬件和软件组成,在硬件原理图搭建完成上电之后,我们还不能看到流水灯循环点亮的现象,我们还需要编写程序控制单片机管脚电平的高低变化,来实现发光二极管的一亮一灭。软件编程是单片机应用系统中的一个重要的组成部分,也是本次课程设计的重点和难点。我们编程实现流水灯的方法是循环移位法,下面我们就来简述一下循环移位法的工作原理。循环移位法是采用循环程序结构进行编程。我们在程序一开始就给P1口送一个数,这个数本身就

7、让P1.0先低,其他位为高,然后延时一段时间,再让这个数据向高位移动,然后再输出至P1口,这样就实现“流水”效果了。另外,由于80C51系列单片机的指令中只有对累加器ACC中数据左移或右移的指令,因此实际编程中我们应把需移动的数据先放到ACC中,让其移动,然后将ACC移动后的数据再转送到P1口,这样也可以实现“流水”效果。4.3 元件清单表4-1 元件清单名称型号数量电阻2209电容1034开关1芯片1单片机80C511PC机串行口LED灯8电源指示灯1二极管2三极管4数码显示器1按键44.4 硬件原理图图 4-1硬件原理图4.5 硬件焊接图图 4-2硬件焊接图4.6 设计主要功能打开电路开关

8、,按下第一个模式控制键,8个LED数码管会从右向左一个接着一个亮灯,LED显示器会显示数字“1”来表示当前的亮灯方式是模式1。在8个LED数码管全部亮后再次按下第一个模式控制键,8个LED数码管会从又向左2个一组的一次亮灯,同时LED显示器会显示数字“2”来表示当前的亮灯方式是模式2。以此类推,一共有5种显示模式。而第2、3个按键分别控制亮灯速度的快慢。5 代码编写ORG 00H ;设置主程序开始地址CLR P3.4 ;这里可以使小喇叭发出嗒、嗒声 DELAY: MOV R6, #255 ;延时0.1s D1: MOV R7,#255 ;延时一段时间 DJNZ R7, $ ;原地等待 DJNZ

9、 R6, D1 RETENDDELAY1: MOV R6, #150 ;延时0.05s D2: MOV R7,#150 DJNZ R6, D2 RETENDSTART: MOV A,P1.4 ;选中p1.4 数码管使能 JZ TTT ADD R5,ACJNE R5,#3,C1AJMP M1C1:CJNE R5,#3,C1AJMP M3C2: JNC C2C3:TTT:INC AM1: MOV P0,#7EH ;把7EH送p0口,数码管显示1LCALL DELAY ;数码管亮后的缓冲MOV A, #11111110B ;赋值MOV R4,A ;保存所赋的值LOOP: MOV P2, A ;值给L

10、ED灯ACALL V ;调用延时子程序MOV A,R4 ;保存的值还给ARL A ;左移 AJMP LOOP ;不为零,重复把值给LED灯RETM2:MOV P0,#0A2H ;数码管显示2LCALL DELAYAGAIN: MOV R3, #8HLOOP1: MOV A, #FEHMOV R4,AX1: MOV P2, AACALL V ;调用延时子程序MOV A,R4RL ADJNZ R3, X1MOV R3, #8LOOP2: MOV A, #7FHX2: MOV P2, AACALL V ;调用延时子程序MOV A,R4RR ADJNZ R3, X2AJMP AGAINRETM3:MO

11、V P0, #62H ;数码管显示3LCALL DELAY MOV R1, #05HOUTL: MOV DPTR, #TABLEMOV R2,#04HMOV A, 00HINL: MOV R0, A MOVC A, A+DPTR MOV P2, AACALL V ;调用延时子程序MOV A, R0INC ADJNZ R2, INLDJNZ R1, OUTLTABLE: DB 7EH, 0BDH, 0DBH, 0E7HRETM4:MOV P0,#74H ;数码管显示4LCALL DELAYMOV A, #01111111BMOV R4,A LOOP: MOV P2, AACALL V ;调用延时子程序MOV A,R4RL A AJMP LOOP RETM5:MOV P0,#61H ;数码管显示5;LCALL DELAY MOV R1, #05HOUTL: MOV DPTR, #TABLEMOV R2,#04HMOV A, 00HINL: MOV R0, A MOVC A, A+DPTR MOV P2, AACALL V ;调用延时子程序MOV A, R0INC ADJNZ R2, INLDJNZ R1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号