可控流水灯单片机课程设计报告-精品
单片机流水灯实验报告
单片机流水灯实验报告1. 实验目的本实验旨在通过使用单片机控制LED灯的亮灭来实现流水灯效果,以加深对单片机控制原理的理解,并培养学生动手实践的能力。
2. 实验器材•单片机开发板•面包板•LED灯•连接线•电源3. 实验原理流水灯是一种常见的LED灯效果,通过控制多个LED灯的亮灭顺序和速度,形成流动的效果。
在本实验中,我们使用单片机通过改变IO口的输出电平来控制LED灯的亮灭。
4. 实验步骤第一步:准备工作•将单片机开发板连接到电脑上,并确保单片机开发环境已经正确安装。
•将面包板连接到单片机开发板上的IO口。
•将LED灯连接到面包板上,确保连接正确。
第二步:编写程序在单片机开发环境中,编写下列代码:#include <reg52.h>sbit LED1=P1^0;sbit LED2=P1^1;sbit LED3=P1^2;sbit LED4=P1^3;void delay(int t) {int i, j;for(i=t;i>0;i--) {for(j=110;j>0;j--);}}void main() {while(1) {LED1=0;delay(1000);LED1=1;delay(1000);LED2=0;delay(1000);LED2=1;delay(1000);LED3=0;delay(1000);LED3=1;delay(1000);LED4=0;delay(1000);LED4=1;delay(1000);}}第三步:烧录程序将编写好的程序烧录到单片机开发板上,确保烧录成功。
第四步:实验测试•将单片机开发板连接到电源上,并打开开关。
•观察LED灯的亮灭情况,是否能够形成流水灯效果。
•如果效果与预期一致,则说明实验成功。
5. 实验结果分析经过实验测试,LED灯能够按照程序中设定的流水灯顺序亮灭,形成了流水灯效果。
说明通过单片机控制IO口输出电平能够实现对LED灯的控制,并且通过改变控制程序中的延时时间可以调整流水灯的速度。
可控流水灯单片机课程设计报告-精品_图文.
目录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.280C51单片机引脚图及引脚功能介绍 (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 引言单片机课程设计主要是为了让我们增进对 80C51单片机电路的感性认识,加深对理论方面的理解。
单片机流水灯课程设计
添加标题
添加标题
添加标题
添加标题
闪烁频率:测量流水灯每秒闪烁的 次数
稳定性:测试流水灯在长时间工作 下的稳定性,确保其不会因长时间 工作而损坏或失效
流水灯系统的可靠性测试
测试目的:验证流水灯系统的稳定性和可靠性 测试方法:使用不同的输入信号,观察流水灯的反应 测试内容:包括但不限于电源电压、电流、温度、湿度等环境因素 测试结果:记录流水灯在不同环境下的表现,分析其稳定性和可靠性
单片机的 特点:体 积小、功 耗低、可 靠性高、 编程简单 等
单片机的编程语言和开发环境
编程语言: C语言、 汇编语言 等
开发环境:
Keil
uVision、
IAR
Embedd
e
d
Workbe
nch等
编译工具: GCC、 AVR Studio等
仿真工具: Proteus、 Multisim 等
调试工具: J-Link、 ST-Link 等
Part Five
流水灯软件设计
单片机控制程序的编写
编写目的:实现流水灯的动态 效果
编程语言:C语言或汇编语言
程序结构:主程序、子程序、 中断服务程序等
程序功能:控制流水灯的亮灭、 速度、方向等
流水灯的程序流程图设计
初始化:设置流 水灯的初始状态
循环:循环执行 流水灯的显示过
程
判断:判断流水 灯的当前状态
流水灯的电路板布局和布线
电路板布局:根 据流水灯的功能 和需求,合理布 局各个元器件的 位置
布线原则:遵循 信号传输的优先 顺序,避免信号 干扰和串扰
布线技巧:采用 合理的布线方式, 如蛇形布线、星 形布线等,提高 信号传输速度和 稳定性
跪求单片机8个流水灯的课程设计实验报告(共9篇)
跪求单片机8个流水灯的课程设计实验报告(共9篇)单片机花样流水灯设计实验报告* * 大学物理学院单片机花样流水灯设计实验课题:花样流水灯设计班级: 物理***姓名:*** 学号:当今时代的智能控制电子技术,给人们的生活带来了方便和舒适,而每到晚上五颜六色的霓虹灯则把我们的城市点缀得格外迷人,为人们生活增添了不少色彩。
制作流水灯的方法有很多种,有传统的分立元件,由数字逻辑电路构成的控制系统和单片机智能控制系统等。
本设计介绍一种简单实用的单片机花样流水灯设计与制作,采用基于MS-51的单片机AT89C51和发光二极管、晶振、复位、电源等电路以及必要的软件组成的以AT89C51为核心,辅以简单的数码管等设备和必要的电路,设计了一款简易的流水灯电路板,并编写简单的程序,使其能够自动工作。
本设计用AT89C51单片机为核心自制一款简易的花样流水灯,并介绍了其软件编程仿真及电路焊接实现,在实践中体验单片机的自动控制功能。
该设计具有实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。
关键字:AT89C51 单片机流水灯数码管1. 单片机及其发展概况单片机又称为单片微计算机,其特点是将微型计算机的基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定时/计数器及终端系统等)全部集成在一个半导体芯片上。
单片机作为一种高集成度微型计算机,已经广泛应用于工业自动化控制、智能仪器仪表、通信设备、汽车电子与航空航天电子系统、智能家居电器等各个领域。
2. Protues仿真软件简介Protues以其数量众多的元件数据库、标准化的仿真仪器、直观的捕获界面、简洁明了的操作、强大的分析测试、可信的测试结果, 为电子工程设计节约研发时间,节省了工程设计费用。
利用Protues软件设计一款通过数码管显示计数时间的流水灯电路及Keil C软件编程后,再将两者关联则可以简单快速的进行仿真。
【实验设计目标】设计要求以发光二极管作为发光器件,用单片机自动控制,对8个LED灯设计至少3种流水灯显示方式,每隔20秒变换一次显示花样,计时通过一个二位七段数码管显示。
单片机课程设计报告流水灯(WORD档)
XX工程学院单片机课程设计报告题目:流水灯学生姓名:学号:系部名称:职业技术学院班级:机电一体化Z11-1 指导教师:目录摘要 (3)一、课程设计题目 (4)二、设计任务及要求 (4)三、实验方案 (4)四、流程图 (4)五、硬件电路 (6)六、软件设计 (6)1 主体程序 (6)2 键扫描子程序 (6)3 闪烁控制程序 (6)4 延时子程序 (6)5 源程序设计 (7)七、功能调试 (12)八、设计总结 (12)九、参考文献 (13)【摘要】单片机课程设计主要是为了让我们增进对单片机芯片电路的感性认识,加深对理论方面的理解。
了解软硬件的有关知识,并掌握软件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。
另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目的。
一、课程设计题目:流水灯二、设计任务及要求:任务:完成对接在P1,P3口的发光二极管闪亮控制程序的设计1.用程序延时方法让P1的一个LED小灯每隔1S交替闪亮2.用程序延时方法让P1的8个LED小灯循环(每个亮50MS)闪亮3.用程序延时方法让P1的8个LED小灯追逐闪亮(50MS间隔变化)4.用程序延时方法让P1、P3的16个LED小灯循环(每个亮50MS)闪亮要求:1. 根据硬件电路原理,画出接线2. 设计出相应的软件程序三、实验方案:方案:单片机采用40脚的89C52标准双列直插系列,有4个标准输入/输出端口共32位控制端口。
本次设计采用并行口低电平(吸电流)直接驱动LED发光管发光形式,选择了P1和P3口的16个端口进行模拟LED小灯控制,如要多些小灯单元可再将P2口、P0口及其他空余端口用LED小灯驱动控制。
因系统功能要求能控制灯亮的方式,在P0.0—P0.3端口接了4个按键小开关,每个小开关可控制一种亮灯方式。
在端口较紧张的情况下,LED小灯驱动也可用串入/并出移位寄存器(如74HC595),单片机用并行移位方式进行驱动。
单片机课程设计-流水灯
单片机课程设计报告题目:自制流水灯专业班级机械111班姓名学号 201110824126一课程设计简介单片机课程设计的目的主要是让生活在信息时代的我们,将所学知识应用于生产生活当中,熟悉单片机的使用方法和技巧,掌握具有综合功能的小系统的设计和编程,方案的论证,选择,实施与完善。
通过对各种系统的设计、制作、了解信息采集测试、控制的全过程,提高在电子工程设计和实际操作方面的综合能力,初步培养在完成项目过程中所应具备的基本素质和要求。
培养研发能力,通过对电子电路以及面对硬件对象,利用所学知识进行相应程序的设计,初步掌握在给定条件和要求的情况下,掌握如何巧妙合理地去设计系统中的各部分电路,并将它们有序的连接起来。
提高查阅资料、语言表达能力和将理论转化为实际的能力,以此巩固所学的知识,并将之有效地运用到实际生产生活中。
学生通过单片机的硬件和软件设计、安装、调试、整理资料等环节,初步掌握工程设计方案和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。
1.课程设计目的(1)课程设计功能描述:这个小设计是运用51单片机自制了一种简单的流水灯,利用4个开关来控制4种不同的状态。
采用循环程序结构编程,每一位接收一个数据可令到该位变成低电平,其他位都是高电位,延时一段时间,让这个数据再移向高位,实现流水的效果。
(2)效果描述:流水灯根据不同的开关控制会有4种不同的状态效果。
①开关1闭合,LED灯从左到右依次点亮;②开关2闭合,LED灯从右到左依次点亮;③开关3闭合,LED灯1、3点亮,灯2、4熄灭;④开关4闭合,全部LED 灯亮灭闪烁。
二课程设计硬件系统1.硬件总电路图:图(1)2.子系统描述:(1)CPU:(电路图如图2)AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,具有丰富的内部资源:4kB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.25~5.50V的电压工作范围和0~24MHz工作频率,使用AT89C51单片机时无须外扩存储器。
单片机流水灯实验报告
单片机流水灯实验报告引言单片机是一种集成电路,可以通过编程来控制不同的功能。
其中,流水灯是一个最简单的单片机实验项目,也是学习单片机的第一步。
本篇实验报告将详细介绍如何通过使用 AVR 单片机来实现一个流水灯的控制器。
实验原理流水灯的原理很简单,就是通过一个方向控制信号,以及一定的时间延时控制来逐步点亮和熄灭多个 LED 灯。
在本次实验中,我们将使用 AVR ATmega328P 单片机,它可以通过编程来实现流水灯的控制功能。
实验步骤1. 硬件准备将 ATmega328P 单片机插入到开发板中,并使用杜邦线将单片机的引脚连接到各个 LED 灯。
我们需要将一个引脚连接到方向控制信号,用于控制灯的点亮方向。
同时,我们还需要连接一个电位器,用于调节流水灯的速度。
2. 程序设计使用 Arduino 开发环境来编写 AVR 单片机的程序。
首先需要包含头文件 avr/io.h 和 util/delay.h,并定义输入输出引脚。
然后,我们需要定义一个名为“led” 的一个数组,来存储各个 LED 灯的输出状态。
同时,还需要定义一个变量“dir”,来表示流水灯的方向。
在程序主循环中,我们使用 for 循环来遍历各个 LED 灯。
同时,根据“dir”变量的不同,我们可以实现流水灯的正向和反向控制。
另外,我们还需要使用“_delay_ms()”函数来延时一定的时间,实现流水灯的闪烁效果。
3. 程序烧录使用 AVR ISP 编程器将编写好的程序烧录到单片机中。
在烧录过程中需要设置正确的程序和芯片类型,并选择正确的口线连接方式。
实验结果经过实际测试,我们成功地实现了一个流水灯控制器。
在调节电位器之后,灯的闪烁速度可以得到不同的调整。
同时,也可以通过改变方向控制信号来改变流水灯的运动方向。
结论通过本次实验可以学习到如何使用 AVR 单片机来实现一个简单的流水灯控制器。
通过编写程序、烧录编译等过程,可以加深对单片机的基础知识和理解。
51单片机流水灯实验报告
51单片机流水灯实验报告一、实验目的1.熟悉51单片机的硬件资源2.掌握51单片机的I/O口编程3.掌握51单片机的定时器/计数器编程二、实验原理流水灯是一种简单的电子设计,通过依次点亮和熄灭多个LED灯来形成流水灯的效果。
本实验使用的是51单片机,它有40个I/O口和3个定时器/计数器,可以方便地实现流水灯的效果。
三、实验器材1.51单片机开发板B数据线3.LED灯若干4.面包板5.连线材料(公对公、公对母杜邦线)四、实验过程1.准备工作:a.将51单片机开发板和LED灯连接起来,将LED灯依次插在面包板上,并与51单片机的I/O口相连接。
b.连接电脑与51开发板,使用USB数据线将它们连接起来。
2.编写程序:a. 打开Keil开发环境,新建一个工程。
b.在C代码文件中编写流水灯的控制程序,并引用51单片机的头文件和IO口控制相关的函数。
代码示例:```c#include <reg51.h>sbit LED1 = P1^0;sbit LED2 = P1^1;sbit LED3 = P1^2;sbit LED4 = P1^3;sbit LED5 = P1^4;void delay(unsigned int t)while(t--)for(unsigned int i = 0; i < 125; i++);}void maiwhile(1)LED1=0;//点亮LED1delay(1000); // 延时LED1=1;//熄灭LED1LED2=0;//点亮LED2delay(1000); // 延时LED2=1;//熄灭LED2LED3=0;//点亮LED3delay(1000); // 延时LED3=1;//熄灭LED3LED4=0;//点亮LED4delay(1000); // 延时LED4=1;//熄灭LED4LED5=0;//点亮LED5delay(1000); // 延时LED5=1;//熄灭LED5}}```3.烧录程序:a.将开发板上的烧录开关调整为“USB”模式。
单片机流水灯实验报告
实验目的:实现单片机流水 灯功能
实验结果:LED灯按照预设 顺序依次点亮,实现流水灯
效果
分析与讨论:实验结果与预 期相符,验证了单片机流水
灯功能的实现。
实验结果分析
实验目的:验证单片 机流水灯控制电路的
设计与实现
实验设备:单片机、 LED灯、电阻、电源
等
实验步骤:编写程序、 连接电路、运行程序、
观察现象
实验过程中,对实验结果 的分析不够全面,容易导 致实验结论不准确。
实验过程中,对实验数据 的记录不够详细,容易导 致实验数据丢失。
实验过程中,对实验设备 的维护不够重视,容易导 致实验设备损坏。
实验过程中,对实验环境 的控制不够严格,容易导 致实验结果不准确。
对未来实验的展望
创新实验方法:尝试新的实 验方法,提高实验效果
掌握流水灯电路 的搭建方法
学习单片机的编 程和调试方法
掌握流水灯电路 的调试方法
添加标题
添加标题
添加标题
添加标题
培养实践操作和问题解决能力
通过实验操作, 提高动手能力
学习单片机的基 本原理和编程方
法
培养发现问题、 分析问题和解 决问题的能力
提高团队合作和 沟通能力
02
实验设备
单片机开发板
添加标题 添加标题 添加标题 添加标题 添加标题 添加标题
编写流水灯程序
确定流水灯的 硬件连接方式
编写流水灯控 制程序
编译并下载程 序到单片机
调试程序,确 保流水灯正常 工作
0
0
0
0
1
2
3
4
烧录程序到单片机
准备烧录器:选择合适的烧录器,如USB烧录器 连接单片机:将烧录器连接到单片机的烧录接口 打开烧录软件:启动烧录软件,选择要烧录的程序文件 开始烧录:点击烧录按钮,开始烧录程序到单片机 检查烧录结果:烧录完成后,检查单片机的运行情况,确保程序正常运行
单片机流水灯课程设计
单片机流水灯课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理和结构,掌握流水灯的设计方法。
2. 学生能描述流水灯程序的设计流程,包括电路连接、编程语言及指令的运用。
3. 学生了解并能够解释流水灯中涉及的电子元件功能,如电阻、电容、LED 等。
技能目标:1. 学生能够独立完成流水灯电路图的绘制,并正确搭建电路。
2. 学生能够运用指定的编程软件,编写并调试出流水灯的程序代码。
3. 学生通过动手实践,提高问题解决能力和团队协作能力。
情感态度价值观目标:1. 学生通过完成流水灯的制作,培养对电子制作的兴趣,激发创新精神。
2. 学生在团队合作中学会相互尊重、倾听意见,培养良好的沟通能力和团队意识。
3. 学生能够意识到科技在生活中的应用,增强实践是检验真理的唯一标准的认识。
课程性质:本课程为实践操作性强的电子技术课程,结合理论知识与动手实践,培养学生对单片机应用的基本技能。
学生特点:假设学生为八年级,已具备基本的物理知识和逻辑思维能力,对电子制作有好奇心,动手能力强。
教学要求:教师应注重理论与实践相结合,鼓励学生动手实践,关注个体差异,提供个性化指导,确保学生在掌握知识技能的同时,培养积极的情感态度价值观。
通过具体的学习成果分解,后续教学设计和评估将更有针对性。
二、教学内容1. 理论知识:- 单片机基本原理与结构介绍,关联教材第3章。
- 流水灯电路设计原理,关联教材第4章。
- 编程语言基础及指令运用,关联教材第5章。
2. 实践操作:- 电路图绘制,关联教材第6章。
- 流水灯电路搭建,包括元件识别、电路连接,关联教材第7章。
- 程序编写与调试,关联教材第8章。
3. 教学大纲安排:- 第一课时:介绍单片机基本原理与结构,让学生了解流水灯项目背景。
- 第二课时:讲解流水灯电路设计原理,进行电路图绘制练习。
- 第三课时:学习编程语言基础及指令运用,为学生编写程序打下基础。
- 第四课时:分组进行流水灯电路搭建,并进行程序编写与调试。
单片机应用技术课程报告~流水灯的设计
单片机应用技术课程报告
实验名称流水灯的设计实验时间2020年 7月 9 日学生姓名实验地点钉钉群线上
同组人员专业班级
1、实验目的
(1)掌握C51程序循环结构及循环语句的使用,掌握C51程序结构的形式,掌握延时子程序设计的基本方法;
(2)学会二进制转换为十六进制方法;学会单片机控制LED显示器的电路设计及控制方法。
2、任务设计要求
组装一个简易流水灯显示器,单片机外接8个发光二极管,要求系统上电后,8个发光二极管依次循环点亮。
3、总体设计方案
根据实验任务要求,通过功能分析,设计的系统总体方案如图所示。
AT89C51单片机电源
时钟电路复位电路
LED显示
(2)程序清单
#include<reg51.h>//包含头文件reg51.h voiddelay(unsignedcharj);//延时函数声明voidmain()
{
while(1){
P1=0Xfe;
delay(100);
P1=0Xfd;
delay(100);
P1=0Xfb;
delay(100);
P1=0Xf7;
delay(100);
(3)性能指标测试及结果分析。
LED流水灯设计-单片机控制
《微机应用系统设计与综合实验(实践)》课程设计实验报告实验课题LED霓虹灯设计姓名学号班级指导老师目录第一章设计概述 (3)1.1 设计任务 (3)1.2 设备器材 (3)第二章硬件设计方案 (3)2.1 设计思想 (3)2.2 硬件选择 (4)2.3 AT89C52单片机介绍 (4)2.4 硬件逻辑图 (7)2.5 设计连线 (8)2.6 仿真电路图 (8)第三章软件设计方案 (8)3.1 软件设计思想 (8)3.2 程序流程图 (9)第四章调试及运行结果 (10)第五章设计心得与体会 (10)参考资料 (11)源程序清单 (11)第一章设计概述1.1 设计任务设计内容:利用汇编语言(或C语言),实现8个单色LED灯的左、右循环显示,并实现循环的速度可调。
选用芯片: 8255 等注:由于实验室的没有提供8255芯片,所以改用单片机完成此实验,并且添加了调节灯明暗的功能,以实现明暗可调。
1.2 设备器材在本设计中,所用到的设备器材如下所示:(1)计算机一台;(2)唐都仪器实验箱一台;(3) AT89C52单片机一片;(4)导线若干。
第二章硬件设计方案2.1 设计思路本课题需要用按钮开关实现流水灯的左右循环显示、调速、控制亮度的功能。
可以选用五个开关来实现这些操作。
单片机正在软件运行下通过不断扫描开关状态,来将相关操作对应量送入单片机的输入端口,然后判断属于哪一类操作。
五个开关分别为K1,K2,K3,K4,K5,分别控制流水灯的调向、加速、减速、变亮、变暗。
在设计过程中,接开关的端口要全部保持高电平,当按下一个开关时,输入一个低电平,即为状态改变信号。
不能同时有两个端口同为高电平。
在设计中我主要负责了用云脉冲宽度调制(PWM)波控制LED灯的亮度环节,开始对PWM并不是很了解,通过请教同学和查阅相关资料,渐渐明白了其中的原理。
在主程序运行时通过中断方式调整其输出电压的占空比,从而改变灯泡的亮度。
原理是这样的,主程序的始终频率和中断的始终频率并不相同,大约是中断的一千倍,LED灯在移动时如果响应了中断,则在执行中断程序时,LED 灯近似看做没有移动,此时在中断程序中设计一个初值和一个上限,当计数到初值时置灯泡灭掉,在计数到上限之前小灯泡都是熄灭的,到达上限后回0,并置灯泡为亮,继续计数,在到设定的初值时置小灯泡为灭掉。
单片机流水灯实验程序实验报告
单片机流水灯实验程序实验报告实验题目:流水灯实验2(利用查表方式)一、实验目的:1、学习利用查表的方式,使发光二极管(L1—L8)做舞台灯光效果的变化。
2、学习实用程序的编程规则。
二、实验仪器设备计算机一台、单片机在线系统一套(AY—MPU89S51E)三、实验电路:同实验一电路。
四、实验内容:灯光效果按如下规律显示:00111100,10000001,11000011,11100111,11111111,11100111,11000011,10000001,00000000,00011000,00111100,01111110 11111111,00000000,10101010,10101010,11001100,10000000,11000000,11100000,11110000,11111000,11111100 11111110,11111111,11111110,11111100,11111000,11110000 11100000,11000000,10000000,00000000。
扩展:自行设计花色效果表。
五、实验步骤:1、画出程序流程图。
3、程序输入到编程软件Keilc51中。
3、编译下载程序到系统实验板上的单片机中。
4、分析调试记录的内容和结果,找出程序中可能出错的地方,然后修改程序,继续调试、记录、分析,直到调试成功。
实验电路:U11939XTAL1P0.0/AD038P0.1/AD137P0.2/AD21836XTAL2P0.3/AD335P0.4/AD434 P0.5/AD533P0.6/AD6932RSTP0.7/AD721P2.0/A822P2.1/A923P2.2/A102924PSENP2.3 /A113025ALEP2.4/A123126EAP2.5/A1327P2.6/A1428P2.7/A15110P1.0/T2P3.0/RXD2 11P1.1/T2EXP3.1/TXD312P1.2P3.2/INT0413P1.3P3.3/INT1514P1.4P3.4/T0615P1.5 P3.5/T1716P1.6P3.6/WR817P1.7P3.7/RDAT89C52程序流程图:开始(21H) 00HDPTR #TAB,(A) (21H)(A) @A+DPTR显示灯亮(A) (21H)+1N Y(A)=33?程序代码:ORG 0000HLJMP STARTORG 0100HSTART:MOV P1,#0FFHMOV 21H,#00HLOOP:MOV DPTR,#TABMOV A,21HMOVC A,@A+DPTRCPL AMOV P1,ALCALL DELAYINC 21HMOV A,21HCJNE A,#33,LOOPMOV 21H,#00HLJMP LOOPTAB: DB00111100,10000001,11000011,11100111,11111111,11100111,11000011,10000001 DB00000000,00011000,00111100,01111110,11111111,00000000,10101010,10101010 DB11001100,10000000,11000000,11100000,11110000,11111000,11111100,11111110 DB11111111,11111110,11111100,11111000,11110000,11100000,11000000,10000000, 00000000DELAY: MOV R5,#03HD0:MOV R6,#0FFHD1:MOV R7,#0FFHDJNZ R7,$DJNZ R6,D1DJNZ R5,D0RETEND程序运行正确,写入单片机后,二极管按照上述数值亮灭,展现灯光舞台效果。
单片机流水灯实验报告
单片机流水灯实验报告引言:在现代科技的急剧发展下,单片机作为一种重要的控制元件,广泛应用于各个领域。
流水灯作为单片机的一个经典实验,旨在让学生接触并掌握单片机的基本原理和操作方法。
本次实验将介绍单片机流水灯的实验过程以及结果分析。
实验目的:通过单片机流水灯实验,我们的目标是:1. 熟悉并掌握单片机流水灯的基础原理;2. 学习单片机编程的基本方法;3. 培养实验设计和数据分析的能力。
实验原理:单片机流水灯实验基于LED灯的控制,通过改变LED的亮灭状态实现流水灯效果。
具体原理如下:1. 单片机通过IO口控制LED灯的亮度,通过改变IO的输出电平来控制LED的亮灭状态。
2. 流水灯效果通过轮流改变LED灯的亮灭状态实现,即依次控制相邻LED的亮度和灭度。
实验步骤:1. 准备实验材料:单片机开发板、LED灯、面包板、跳线等。
2. 按照电路图连接实验电路:将LED灯依次连接到单片机的IO口上。
3. 首先需要完成单片机的初始化工作,包括设置IO口的方向和初始状态。
4. 设计并编写流水灯的控制程序,包括控制LED灯的亮灭状态和延时时间。
5. 将编写好的程序烧录到单片机中。
6. 运行程序,观察LED灯的亮灭状态是否符合预期效果。
实验结果与分析:根据实验步骤,我们成功地完成了单片机流水灯的实验。
LED 灯按照预期的顺序轮流点亮和熄灭,呈现出流水般的效果。
通过调整延时时间,我们可以改变流水灯的速度,使其呈现出不同的闪烁效果。
在实验过程中,我们也发现了一些问题。
首先,有时LED灯的亮灭状态会出现错误,可能与电路连接有关,需要仔细检查电路连接的正确性。
其次,流水灯的速度调节范围有限,可能需要通过引入外部元件来扩大调节范围。
结论:通过单片机流水灯的实验,我们深入了解了单片机的基本原理和操作方法。
通过编程实现流水灯效果,我们培养了实验设计和数据分析的能力。
同时,在实验过程中发现的问题也为后续实验和学习提供了一定的启示,我们将进一步完善和改进实验方案,以提高实验效果。
最新单片机实验流水灯报告
最新单片机实验流水灯报告在本次实验中,我们设计并实现了一个基于单片机的流水灯系统。
该系统的主要功能是通过编程控制LED灯按照一定的顺序和时间间隔依次点亮和熄灭,从而形成流水灯效果。
以下是实验的详细报告:实验目的:1. 熟悉单片机的基本操作和编程。
2. 掌握GPIO(通用输入输出)的配置和使用。
3. 提高编程能力,理解时间控制的概念。
实验材料:- 单片机开发板- LED灯若干- 杜邦线若干- 电源适配器- 计算机及相应的编程软件实验步骤:1. 首先,将LED灯通过杜邦线连接到单片机的GPIO端口上。
确保每个LED连接正确,并且限流电阻已经安装以保护LED不被烧毁。
2. 使用编程软件编写单片机程序。
程序的主要逻辑是通过循环结构控制每个GPIO端口的高低电平,从而控制LED的亮灭。
3. 在程序中设置适当的延时函数,以控制LED点亮和熄灭的时间间隔,实现流水灯的效果。
4. 将编写好的程序通过编程软件下载到单片机中。
5. 连接电源,观察LED灯是否按照预期进行流水式点亮。
实验结果:通过实验,我们成功实现了流水灯效果。
LED灯按照预定的顺序依次点亮和熄灭,形成了流畅的动态效果。
通过调整延时参数,我们还可以改变流水的速度,从而观察不同设置下的灯光变化。
实验分析:在实验过程中,我们发现GPIO端口的配置对于LED的亮灭至关重要。
同时,延时函数的精确度直接影响了流水灯效果的平滑度。
通过对程序的不断调试和优化,我们加深了对单片机编程和硬件控制的理解。
结论:本次单片机实验不仅锻炼了我们的编程技能,而且增强了我们对电子硬件的认识和操作能力。
通过实际操作,我们更加深刻地理解了理论知识,为未来的电子设计和创新打下了坚实的基础。
单片机实验报告流水灯
单片机实验报告流水灯单片机实验报告:流水灯引言:单片机是现代电子技术中非常重要的一部分,它广泛应用于各个领域,如家电、汽车、通信等。
单片机实验是学习单片机的基础,通过实际操作来理解单片机的原理和应用。
本报告将介绍一个常见的单片机实验项目——流水灯实验。
一、实验目的流水灯实验旨在通过控制单片机的IO口,实现多个LED灯按照顺序依次点亮和熄灭的效果。
通过这个实验,可以加深对单片机IO口的控制和编程的理解。
二、实验器材1. 单片机开发板:我们使用的是STC89C52开发板,它是一种基于8051内核的单片机开发板。
2. LED灯:我们使用了8个LED灯,分别连接到单片机开发板的8个IO口上。
3. 连接线:用于连接单片机开发板和LED灯。
三、实验原理流水灯实验的原理很简单,通过控制单片机的IO口输出高低电平来控制LED灯的亮灭。
当某个IO口输出高电平时,对应的LED灯点亮;当IO口输出低电平时,对应的LED灯熄灭。
四、实验步骤1. 连接电路:将8个LED灯分别连接到单片机开发板的8个IO口上,确保连接正确。
2. 编写程序:使用C语言编写单片机程序,控制IO口的高低电平变化。
程序的主要逻辑是通过一个循环,依次将某个IO口输出高电平,然后延时一段时间,再将该IO口输出低电平,再延时一段时间,以此循环实现流水灯的效果。
3. 烧录程序:将编写好的程序烧录到单片机开发板中,确保程序能够正确运行。
4. 调试实验:将单片机开发板连接到电源,观察LED灯是否按照预期的顺序点亮和熄灭。
如果有问题,可以通过调试程序或检查电路连接来解决。
五、实验结果经过调试和实验,我们成功地实现了流水灯的效果。
8个LED灯按照顺序依次点亮和熄灭,形成了一个流动的灯光效果。
这个实验不仅让我们学习了单片机的IO口控制,还提高了我们的动手能力和解决问题的能力。
六、实验总结通过这个实验,我们深入了解了单片机的原理和应用。
单片机作为一种微型计算机,具有体积小、功耗低、成本低等优点,广泛应用于各个领域。
单片机实验流水灯报告
7、反复编译和调试程序,直到无错误为止(程序能实现相应的功能);
8、使用ISIS软件进行仿真或单片机实验箱或是单片机开发板来进行程序功能的验证,即能实现“流水”的功能。
过程分析
本实验主要是采用延时程序来控制“流水”的功能,同时采用中断进行亮与暗闪烁的效果,使用C52的P0口进行对LED的控制。过程的主要分析如下:
#include<reg52.h>
#include<intrins.h>
unsigned int i=0;//定义变量i;
unsigned char data x=0xfe; //定义初值;
}
TH0=(65536-50000)/256;//赋初值;
TL0=(65536-50000)%256;
EA=1;//开CPU中断;
ET0=1;//开T0中断;
TR0=1;//开始计数;
}
void timer0() interrupt 1 //中断函数;
{
int k=0;
for(;k<=3;k++)
{ P0=0;
{
i++;
if(i==20)
{
i=0;
P0=_crol_(x,1);
}
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
}
附录
源程序代码:
#include<reg52.h>
#include<intrins.h>
unsigned int i=0;
可控流水灯设计(单片机课程设计报告)汇编语言编写
单片机课程设计报告题目:可控流水灯摘要单片机是一种集成电路芯片,采用超大规模技术,把具有数据处理能力的微处理器、随机存取数据存储器、只读程序存储器、输入输出电路、可能还包括定时计数器、串口通信口、显示驱动电路,脉宽调制电路、模拟多路转换器及A/D转换器等电路集成到一块芯片上,构成一个最小而完善的计算机系统。
这些电路在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。
对可控流水灯设计通过编写代码实现8个LED灯5种流水灯显示方式。
在设计中主要采用80C51这款芯片作为控制主体,用发光二极管来作为显示灯,用按钮来切换流水灯的发光方式同时外接一个七段显示发光二极管来显示流水灯的发光模式。
系统通过P2口外接8个发光二极管,P1口接3个按键,一个按键进行方式选择,数码管显示方式编号;用两个键来控制流水灯流动的速度。
数码管接在80C51的P0口上,而流水灯的放光二极管经过排阻接在P2口上。
设计中辅以简单的设备和必要的电路,设计了一款流水灯,最终达到预期的目的。
关键词单片机80C51发光二极管流水灯目次1 引言 (1)2 课题综述 (1)2.1课题来源与意义 (1)2.2面临的问题 (1)3 系统设计 (1)3.1总体设计 (1)3.2模块设计 (2)3.3硬件设计 (5)4 代码编写 (6)5 系统调试 (7)6 系统运行结果与分析 (8)结论 (9)致谢 (10)参考文献 (11)附录 (12)1 引言单片机控制系统能够取代以前利用复杂电子线路或者数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化。
现在的单片机的控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。
2 课题综述2.1课题来源与意义随着经济的发展、科技的突飞猛进,芯片业得到了迅速的发展,是单片机技术在各种民用和工业控制等领域得到更广泛的应用。
单片机凭借其低成本、高性能的不可代替优势已经成为了微电脑控制的主力军。
单片机课程设计可控流水灯设计
摘要单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
可控流水灯设计要求:对8个LED灯设计5种流水灯显示方式,用一个按键进行方式选择,并用一个数码管显示方式编号;用两个键来控制流水灯流动的速度。
在设计中主要采用8051单片机作为主要控制元件;在单片机P2接上8个发光二极管作为流水指示灯,在P0口接上数码管显示编号,显示当前流水灯的流水模式,数码管采取共阳极接法;在P1口的4、5、6位上各接一个按键,一个按键进行方式选择,另外两个按键控制流水灯的流动的速度。
在接上复位电路,时钟电路,电源电路以及一些必要的设计与电路,就能设计出一款可控流水灯。
关键词 8051单片机发光二极管数码管流水灯目录1 引言 (1)2 课题综述 (1)2.1 课题的来源 (1)2.2 课题的目的与意义 (1)2.3 面临的问题 (1)3 系统设计 (1)3.1 总体设计 (1)3.2 硬件原理图 (2)3.3 硬件焊接图 (3)3.4 软件设计 (4)4 代码编写 (4)5 系统调试 (8)总结 (9)致谢 (10)参考文献 (11)1 引言单片机课程设计主要是为了让我们增进对80C51单片机电路的的感性认识,加深对理论方面的理解。
了解软硬件的有关知识,并掌握硬件设计过程、方法及实现,为以后实现应用打下基础。
另外,通过简单课题的设计练习,使我们了解各项工程部分,达到巩固并运用所学知识解决实际问题的目的。
2 课题综述2.1 课题的来源当今社会,由单片机芯片控制各种硬件工作的技术也日益成熟,并普及在各个领域,而流水灯在生活中的应用更是广泛,较为贴近生活。
所以选择可控流水灯设计这个课题,也是对本学期学习单片机课程的加深与巩固。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录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.280C51单片机引脚图及引脚功能介绍 (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 引言单片机课程设计主要是为了让我们增进对80C51单片机电路的感性认识,加深对理论方面的理解。
了解软硬件的有关知识,并掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。
另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目的。
2课题综述2.1课题的来源当今社会,这种由单片机芯片控制各种硬件工作的技术也日益成熟,并普及在交通、化工、机械等各个领域。
而流水灯这项技术在生活中的应用更是广泛,较为贴近生活。
而流水灯控制的设计所需要的知识也正好吻合了我们本学期对于单片机这门课程的学习,所以设计流水灯控制的这个课题让我们对知识的学习和巩固都有了进一步的加深。
2.2课题的意义这次单片机课程设计是为了通过对流水灯控制的设计加强学生团队配合的能力和创造力;综合运用专业及基础知识,解决实际工程技术问题的能力。
能够让学生深入真是的体会到所学的理论知识和实践相结合的过程。
找出自身的不足并加以改正。
2.3预期的目标对8个LED灯设计5种流水灯显示方式,用一个按键进行方式选择,并用一个数码管显示方式编号;用两个键来控制流水灯流动的速度。
2.4面对的问题这次课程设计是通过80C51位单片机实现。
但面对的问题却是两方面的:一个是软件的设计,也就是实现流水灯控制功能的程序编辑;另一个是硬件的设计,需要我们自己连接、焊接电路板。
而更为严峻的就是设计的最后还要将软硬件相结合。
首先我们需要通过protel将设计的实物的电路图画出来,再根据电路图连接实物电路。
2.5课题的技术LED灯的显示方式、模式切换按钮的控制、亮灯速度的按键控制等技术。
3系统分析3.1涉及的基础知识电路焊接:制造电子产品的重要手段。
80C51单片机指令系统:规定80C51单片机内操作的语句或命令。
LED数码管的显示:向数码的显示送数,控制系统的显示部分。
3.280C51单片机引脚图及引脚功能介绍本次实习的目的在于加深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功能:用来锁存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解决问题的基本思路因为选定用循环移位法来实现亮灯程序的,所以在一种设计好一种亮灯方式的前提下编程实现一个循环结构体,分别来实现五种不同的亮灯方式。
另外再编一个实现延时控制的调用程序,来提供亮灯速度的控制。
3.4总体方案在做本次课程设计之前将小组内人员分为两小组:一组分负责硬件设计,另一组负责软件编程。
硬件小组负责实物的连接和焊接,并进行硬件测试;软件小组负责实现流水灯的各部分程序设计,并进行软件的仿真测试。
最后将完成的软硬件相结合,从而达到实现课程设计的效果。
4系统设计4.1硬件设计按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。
80C51单片机是本次课程设计运用的主要原件。
流水灯控制设计是用一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。
4.2软件设计单片机的应用系统由硬件和软件组成,在硬件原理图搭建完成上电之后,我们还不能看到流水灯循环点亮的现象,我们还需要编写程序控制单片机管脚电平的高低变化,来实现发光二极管的一亮一灭。
软件编程是单片机应用系统中的一个重要的组成部分,也是本次课程设计的重点和难点。
我们编程实现流水灯的方法是循环移位法,下面我们就来简述一下循环移位法的工作原理。
循环移位法是采用循环程序结构进行编程。
我们在程序一开始就给P1口送一个数,这个数本身就让P1.0先低,其他位为高,然后延时一段时间,再让这个数据向高位移动,然后再输出至P1口,这样就实现“流水”效果了。
另外,由于80C51系列单片机的指令中只有对累加器ACC中数据左移或右移的指令,因此实际编程中我们应把需移动的数据先放到ACC中,让其移动,然后将ACC移动后的数据再转送到P1口,这样也可以实现“流水”效果。
4.3元件清单表4-1 元件清单4.4硬件原理图图4-1硬件原理图4.5硬件焊接图图4-2硬件焊接图4.6设计主要功能打开电路开关,按下第一个模式控制键,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.1sD1: MOV R7,#255 ;延时一段时间DJNZ R7, $ ;原地等待DJNZ R6, D1RETENDDELAY1: MOV R6, #150 ;延时0.05sD2: MOV R7,#150DJNZ R6, D2RETENDSTART: MOV A,P1.4 ;选中p1.4 数码管使能JZ TTTADD 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 ;值给LED灯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:MOV P0, #62H ;数码管显示3LCALL DELAYMOV R1, #05HOUTL: MOV DPTR, #TABLEMOV R2,#04HMOV A, 00HINL: MOV R0, AMOVC A, @A+DPTRMOV P2, AACALL V ;调用延时子程序MOV A, R0INC ADJNZ R2, INLDJNZ R1, OUTLTABLE: DB 7EH, 0BDH, 0DBH, 0E7HRETM4:MOV P0,#74H ;数码管显示4 LCALL DELAYMOV A, #01111111BMOV R4,ALOOP: MOV P2, AACALL V ;调用延时子程序MOV A,R4RL A`AJMP LOOPRETM5:MOV P0,#61H ;数码管显示5; LCALL DELAYMOV R1, #05HOUTL: MOV DPTR, #TABLEMOV R2,#04HMOV A, 00HINL: MOV R0, AMOVC A, @A+DPTRMOV P2, AACALL V ;调用延时子程序`MOV A, R0INC ADJNZ R2, INLDJNZ R1, OUTLTABLE: DB 0E7H , 0DBH , 0BDH ,7EHRET;延时选择程序V: DELAYMOV A, P1.5 ;P1.5低电平时延时长,流水灯速度慢JZ DELAYMOV A, P1.6 ;P1.6低电平时延时短,流水灯速度快JZ DELAY1RET ;子程序返回END ;程序结束6程序调试本程序运行过程中没有错误。
但对于双键控制流水灯亮灯速度的功能并没有得到实现。
将电路板用数据线连接,打开开关,按钮用来切换模式,一共有五种流动方式,每按一次按钮就会有一种方式,并在LED显示器上面显示出该模式的序号。
结论由于本次课程设计含括了软件和硬件知识,所以在完成课程设计的同时也让我们了解到了我们在软硬件设计和制作方面的不足。
在这一周的设计过程中我所担任的工作是对电路板各元器件的连接和焊接工作,虽然看似简单,但做起来却是一个细致的工作,尤其是对于三极管以及双电阻并联的焊接工作,更是要细中再细,因为这些元器件的引脚距离都是比较近的,一旦将不该连接的引脚焊接到了一起,该元器件就会失它原来的工作效果,还很有可能将整个电路短路。
对于软件方面,是由我们小组的其他成员编辑完成的,虽然最终并没有实现所有要求的设计效果,但对于我们来说,设计实现的功能已经是一个不小的收获了。
负责硬件焊接的我在最初看到代码的时候还是一头雾水,经过组内成员的一起讲解和讨论,最后还是理解的如何运用左移法实现流水灯亮灯的工作原理。