单片机AT89C51可控流水灯课程设计报告(汇编语言)参考模板
- 格式:docx
- 大小:353.79 KB
- 文档页数:26
多模式流水灯设计报告摘要:本设计包括两方面。
一是通过AT89C51单片机实现流水效果,并用一位数码管显示工作模式;二是通过AT89C51单片机实现音乐播放,并在流水灯上显示相应的音阶。
设计中共给出九种工作模式、一次音乐播放。
关键词:AT89C51;数码管;LED;1. 系统硬件设计1.1 主控制模块本系统的主控制模块采用AT89C51单片机,AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS单片机,片内含8k bytes的可反复擦除的flash 只读程序存储器和256k bytes的随机存取数字存储器(RAM),与标准的MSC-51指令系统及8051引脚兼容,片内置通用8位中央处理器(CPU),可以满足不同控制应用场合的要求。
对于本次的多模式流水灯系统,AT89C51可以满足其对LED 灯的控制要求、输出X音阶的控制要求、显示输出工作模式等各模块的控制要求。
AT89C51管脚图1.2 显示模块多模式流水灯的显示模块由LED数码显示管组成。
LED有着显示亮度高、响应速度快的特点,常用的有七段LED显示器。
七段LED显示器由7个条形发光二极管和一个小圆点发光二极管组成,根据各管的亮暗组成字符。
本系统使用的LED数码显示管是共阳极数码显示管,数码显示管与单片机P3口相连接,受单片机控制,通过软件编程使数码显示管显示流水灯的工作模式。
2.系统软件设计软件是多模式流水灯系统的主要组成部分,在系统的软件部份也采用了模块化设计,将系统各模块的功能编写成子函数的形式,这样增加了系统软件的可读性和可移植性。
3. 仿真图Protues仿真图4.总结通过这次的课程设计,我们把平时学习到的知识应用到了实际中,加深了对所学知识的理解。
同时,我们从这次课程设计中也意识到自己对所学知识的掌握不够深入,对单片机系统的了解还不够细致,以及在编程能力上的缺陷。
在本次课程设计的过程中,我们深刻体会到了团队合作的重要性,只有一个团队齐心协力,每个成员各司其职才可以把工作做好。
目录第1章方案的论述以与与最终方案的确定......................... - 1 -1.1第一种方案的论述. (1)1.2第二种方案的论证 (1)1.3第三种方案的论述 (1)1.4最终方案的确定 (2)第2章硬件设计.................................................. - 3 -2.1总体方案设计分析. (3)2.2系统逻辑框图 (3)2.3主要元器件简介 (3)2.3.1 8086CPU ························································································- 3 -2.3.2 地址锁存器74LS373的内部电路与工作原理························- 6 -2.3.3 可编程外围接口芯片8255A的简介.........................................- 8 -第3章软件设计.................................................- 13 -3.1程序流程设计.. (13)3.1.1 主程序流程·················································································· - 13 -3.1.2 程序流程图·················································································· - 14 -3.1.3 系统硬件连接图········································································· - 15 -3.1.4 源程序设计(附录) ....................................................................... - 15 -3.2设计最终理想结果与原理.. (15)3.2.1 左向移动流水灯········································································· - 15 -3.2.2 右向移动流水灯········································································· - 15 -设计心得·························································- 17 -参考文献·························································- 18 -附录······························································- 19 -第1章方案的论述以与与最终方案的确定1.1 第一种方案的论述第一种方案,使用AT89C51单片机实现流水灯闪烁设计。
第一部分:实训准备1.摘要:近年来,随着电子技术和微型计算机的发展,单片机的档次不断提高,起应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终子电路有明显的优越性,控制硬件电路比较简单,软件方面程序也不复杂,因此制作的远离简单,但功能作用并不低于电子电路设计的,由于它的小巧方便、通俗易懂,所以我们往往采用单片机来做流水灯。
3.系统设计1.硬件框图2.总设计图3.选用AT89C51的引脚功能 STC89C51 复位电路 键盘震荡电路 流水灯电路XTAL1:单芯片系统时钟的反向放大器输入端。
XTAL2:系统时钟的反向放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英震荡晶体系统就可以工作了,此外可以在两引脚与地之间加入20PF的小电容,可以使系统更稳定,避免噪音干扰而死机。
个控制。
当按下S2后能实现D1和D7同时亮其他不亮,然后D2和D6亮,依此类推。
当按下复位S1,然后按下S2实现LED灯从D7到D1循环亮,按下S1然后按下S3实现LED从D1到D7的循环亮。
硬件详细设计1.复位电路部分如图所示,当要对晶片重置时,只要按此开关就能完成LED和开关的重置。
2.晶振部分产生时钟信号3.开关部分S2、S3、S4 分别控制3种LED显示效果,这里就不用详细说明了。
4.LED显示部分限流电阻为470欧姆,经过的电流大概为10mA。
4.软件详细设计1.软件框图开始检查是否有键按下读取键值根据键盘指令执行流水灯显示效果执行结束5.Protuce仿真Proteus仿真时,单片机需要加载程序,加载程序为.HEX文件。
本设计利用Keil μVision3,在新建Keil项目时选择AT89C51单片机作为CPU,将C语言源程序导入,在“Options For Target”对话窗口中,选中“Output”选项中的“Create HEX File”,编译链接后就可以生(2) 在wave 6000软件仿真平台上输入源程序,并进行编译、生产机器码。
基于单片机AT89C5控制的花样调速流水灯课题设计报告宁波技师学院课程设计报告论文题目花样调速流水灯专业班级学生姓名学号指导教师宁波技师学院电气技术系2013 年9月目录第1章系统设计 (1)1.1 数码管显示方案 (1)1.2 按键输入方案 (1)第2章硬件电路设计 (2)2.1电路原理 (2)2.2系统工作流程 (2)第3章软件设计 (3)3.1系统资源分配 (4)3.2软件模块设计 (6)第四章调试¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨94.1 正常现象¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨104.2出现的故障¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨11第5章总结 (7)参考文献 (7)附录1硬件电路图 (8)附录2软件代码 (14)第1章系统设计1.1 数码管显示方案通常数码管显示有两种方式:动态显示和静态显示。
静态显示的优点是程序简单、显示亮度有保证、单片机CPU的开销小,节约CPU的工作时间。
8只LED从左到右闪烁
实验原理
AT89C51 单片机是一种低功耗且电压性能高的8位单片机,内部除CPU外,还包括128字节RAM,4个8位并行I/O口,6个中断源,2个中断优先权2个16位可编程定时器/计数器,片内集成4K字节可改变程序的FLASH 内存,具有低功耗、速度快、程序擦写方便等优点,完全满足本系统设计的需要。
实现发光二极管(LED)闪烁实际上就是让LED亮一下灭一下,即让LED导通一会儿关断一会即可。
因此,只需要将LED发光二极管的一个极接到电源上,另一个极接到单片机32个I/O口的任何一个即可。
本实验采用流水灯形式,8只LED灯从左到右闪烁,可应用与霓虹灯,夜间彩灯等。
1.C文件程序
/* 名称:8只LED从左到右闪烁*/
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
//延时
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<120;i++);
}
}
//主程序
void main()
{
P0=0xfe;
while(1)
{
P0=_crol_(P0,1); //P0的值向左循环移动
DelayMS(150);
}
}
2.硬件仿真
烧入kell生成的.hex文本
运行:
结果:8只LED灯从左到右闪烁。
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),单片机用并行移位方式进行驱动。
基于AT89C51单片机的流水灯1 引言1.1 课题简介单片机全称叫单片微型计算机(Single Chip Microcomputer),是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:在智能仪器仪表上的应用,例如精密的测量设备;在工业控制中的应用,用单片机可以构成形式多样的控制系统、数据采集系统,例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等;在家用电器中的应用可从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。
单片机在医用设备领域中的应用,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等;在各种大型电器中的模块化应用,如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。
本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究。
本系统就是充分利用了8051芯片的I/O引脚。
单片微机原理与接口技术课程设计报告目录1.引言 (3)1.1设计任务 (3)1.2 设计要求 (3)2.课题综述 (3)2.1 课题的来源 (3)2.2 面对的问题 (4)3.系统分析 (4)4.系统设计 (6)4.1 硬件设计 (6)4.2 软件设计 (9)4.3 硬件原理图 (10)4.4 元件清单 (10)4.5 代码编写 (11)5.心得体会 (12)6.致谢 (13)7.参考文献 (14)1.引言单片机课程设计主要是为了让我们增进对89C51单片机电路的感性认识,加深对理论方面的理解。
了解软硬件的有关知识,并掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。
另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目的。
1.1设计任务设计一个单片机控制的流水灯系统。
1.2 设计要求(1)至少 8 个灯; (2)可实现不同的亮灯(如左循环,右循环,间隔闪等)。
2.课题综述2.1 课题的来源当今社会,这种由单片机芯片控制各种硬件工作的技术也日益成熟,并普及在交通、化工、机械等各个领域。
而流水灯这项技术在生活中的应用更是广泛,较为贴近生活。
而流水灯控制的设计所需要的知识也正好吻合了我们本学期对于单片机这门课程的学习,所以设计流水灯控制的这个课题让我们对知识的学习和巩固都有了进一步的加深。
2.2 面对的问题这次课程设计是通过 89C51 位单片机实现。
但面对的问题却是两方面的:一个是软件的设计,也就是实现流水灯控制功能的程序编。
另一个是硬件的设计,我们需要通过 protel 将设计的实物的电路图画出来。
3.系统分析89C52 单片机引脚图及引脚功能介绍本次设计的目的在于加深 89C52 单片机的理解,首先来简单认识一下,它的引脚如图所示:单片机的引脚大致可分为 4 类:电源、时钟、控制和 I/O 引脚。
1.电源: (1)VCC:芯片电源,接+5V;(2)VSS:接地端;2.时钟: XTAL1、XTAL2 :晶体振荡电路反相输入端和输出端。
单片机流水灯实验报告单片机流水灯实验报告一、实验目的本实验旨在通过单片机控制八个LED灯,实现流水灯效果。
通过本实验,我们希望达到以下目的:1.深入理解单片机的I/O端口的工作原理和使用方法。
2.掌握单片机定时器/计数器的工作原理和使用方法。
3.学会编写简单的单片机程序,实现特定的LED灯控制。
4.通过实践操作,提高单片机软硬件的综合应用能力。
二、实验设备1.单片机开发板2.电脑一台3.八个LED灯4.杜邦线若干5.电阻、电容等电子元件三、实验原理本实验采用AT89C51单片机作为主控芯片。
八个LED灯分别连接到P1端口的P1.0到P1.7。
通过编程控制P1端口的每一个引脚,实现对LED灯的亮灭控制。
使用定时器/计数器实现延时,达到流水灯效果。
四、实验步骤和内容1.搭建硬件电路将八个LED灯、一个上拉电阻以及相应的杜邦线连接至单片机开发板。
确保电源正确连接,并注意LED灯的长脚为正极,短脚为负极。
2.编写程序使用Keil C51编写程序,实现如下功能:点亮每个LED灯一定的时间,然后熄灭。
重复此过程,形成流水灯效果。
代码如下:#include <reg51.h> //包含51单片机的头文件#define LED P1 //定义LED为P1端口void delay(unsigned int time) //延时函数{unsigned int i,j;for(i=0;i<time;i++)for(j=0;j<1275;j++);}void main() //主函数{while(1) //程序一直循环执行{unsigned char i=0; //定义一个变量i,用于循环控制LED灯while(i<8) //循环点亮每个LED灯{LED=~(0x01<<i); //点亮第i个LED灯delay(50000); //延时50ms(50*1275us)i++; //变量i加1,控制下一个LED灯}}}3.编译程序将程序编译为二进制文件,生成HEX文件。
计算机仿真流水灯设计报告学号:********** 姓名:*** 班级:**** 课程:单片机.实训名称:计算机仿真流水灯设计要求:计算机仿真实现,控制八个led流水灯,使用at89c51实训步骤:步骤一:打开Keil uVision3软件,执行菜单命令“工程”,“新建工程”,如图1所示。
图1步骤二:完成步骤一后出现下图,选择保存工程的路径。
步骤三:点击保存后,出现图2,选择AT89C51后点击确定步骤四:点击确定后出现下图。
点击“是”按钮,完成新建工程。
步骤五:选择菜单命令“文件”-“新建”,打开一个如图3所示的空的源文件编辑器,用菜单命令“文件”-“另存为”,保存该空白的文件,再输入汇编源程序。
步骤六:输入完源程序后,单击“TARGET1”前面的“+”号,展开后再“Source Group 1”上单击鼠标右键,将弹出一个快捷菜单,如图4所示。
在弹出的快捷菜单中选择并单击“add files to group ‘Source Group 1’”命令,在出现如图5所示“add files to group ‘Source Group 1’”窗口中,选择要加入的“gl.asm”。
单击“add”按钮,文件被添加到工程。
再单击“close”按钮,关闭此窗口。
图4图5步骤七:单击创建目标按钮,对源文件进行编译、连接,如图6所示。
步骤八:在工程区“Target 1”上右击,在弹出的快捷菜单中选择命令“option for’Target 1’”选项设置窗口,单击“输出”标签,在“创建hex文件”的复选框前打勾,这样编译后就能得到十六进制文件了。
设置好后,单击“确定”按钮。
步骤九:打开“Proteus 6.7”软件,画出仿真流水灯的硬件图。
步骤十:先右击“AT89C51”,再左击“AT89C51”,出现如图6所示的界面。
单击“OK”按钮,完成设置。
图6步骤十一:单击按钮,进行计算机仿真。
效果图如下。
结果处理:①led连接在p2口,在Keil uVision3软件中编写汇编程序时,代码写成了p0口。
用 AT89C51单片机实现 8个彩色 LED发光的流水灯电路1.摘要:流水灯是常见的装饰,常见于舞台等场合,本设计主要使用AT89C51芯片,利用P1的8个端口通过74LS373驱动,连接8个发光二极管,通过P1.0到P1.7值的控制,使8个彩色LED依次发光,以达到显示的效果。
二、设计任务和要求用AT89C51芯片,设计一个能控制8个发光二极管轮流闪的流水灯电路。
四、硬件电路设计及描述本设计主要使用AT89C51芯片,利用P1的8个端口通过74LS373驱动,连接8个发光二极管,通过P1.0到P1.7值的控制,使8个彩色LED轮流亮灭,以达到显示的效果。
1.软件设计思路及描述主程序设计思路为,开始时点亮一个灯,其余全灭。
然后执行左移,8个灯依次点亮。
“RLA A”是一条左移指令,它的用途是把A累加器中的值循环左移。
设A=1111 1110,则执行一次指令后,A累加器中的值就变为1111 1101,执行第二次后就变为1111 1011,也就是各位数字不断向左移动,而最右一位由最左一位移入。
1.设计流程图1.编辑源程序将原代码生成一个后缀为.asm的文件,点击确定后,打开这一选项即可添加源程序代码。
源程序:ORG 0000HLJMP STARTORG 30HSTART:MOV A,#0FEHLOOP:MOV P1,ARL ALCALL DELAYLJMP LOOPDELAY:MOV R7,#250D1:MOV R6 #250D2:DJNZ R6,$DJNZ R7,D1RETEND八、软件编译,载入,调试1、保存文本内容后,点击源代码菜单下的全部编译,即可对程序进行编译,生成以.Hes后缀的文件。
2、程序载入CPU3、调试:程序加载完成后,点击按钮运行调试仿真。
九、运行仿真运行仿真后出现效果如下图:ledD1、D2、D3、D4、D5、D6、D7、D8依次点亮。
十、结与体会通过这次课程设计,不仅加深了对单片机控制系统及其语言的应用与理解,锻炼了自己这方面的能力,而且还学到了不少新东西,使自己的专业知识、专业技能有所提高。
51单片机流水灯实验报告竭诚为您提供优质文档/双击可除51单片机流水灯实验报告篇一:51单片机流水灯实验报告51单片机流水灯试验一、实验目的1.了解51单片机的引脚结构。
2.根据所学汇编语言编写代码实现LeD灯的流水功能。
3.利用开发板下载hex文件后验证功能。
二、实验器材个人电脑,80c51单片机,开发板三、实验原理单片机流水的实质是单片机各引脚在规定的时间逐个上电,使LeD灯能逐个亮起来但过了该引脚通电的时间后便灭灯的过程,实验中使用了单片机的p2端口,对8个LeD灯进行控制,要实现逐个亮灯即将p2的各端口逐一置零,中间使用时间间隔隔开各灯的亮灭。
使用rl或rra实现位的转换。
A寄存器的位经过rra之后转换如下所示:然后将A寄存器转换一次便送给p2即moVp2,A便将转换后的数送到了p2口,不断循环下去,便实现了逐位置一操作。
四、实验电路图五、通过仿真实验正确性代码如下:oRg0moVA,#00000001bLoop:moVp2,ARLAAcALLDeLAYsJmpLoopDeLAY:moVR1,#255DeL2:moVR2,#250DeL1:DJnZR2,DeL1DJnZR1,DeL2ReTend实验结果:六、实验总结这次试验我通过proteus仿真实现对流水灯功能的实现。
受益匪浅,对80c51的功能和结构有了深层次的了解,我深刻的明白,要想完全了解c51还有一定距离,但我会一如既往的同困难作斗争。
在实验中,我遇到了不少困难,比如不知道怎么将程序写进单片机中,写好程序的却总出错,不知道什么原因,原来没有生成hex文件。
这些错误令我明白以后在试验中要步步细心,避免出错。
篇二:实验(:51单片机流水灯实验报告)一51单片机流水灯实验实验报告“流水灯”实验报告一、实验目的1.了解单片机I/o口的工作原理。
2.掌握51单片机的汇编指令。
3.熟悉汇编程序开发,调试以及仿真环境。
二、实验内容通过汇编指令对单片机I/o进行编程(本实验使用p0口),以控制八个发光二极管以一定顺序亮灭。
at89c51led闪烁实验汇编语言1. 简介at89c51是一种经典的单片机芯片,被广泛应用于各种嵌入式系统中。
其中,led闪烁实验是单片机入门的必备实验之一,通过这个实验可以初步了解单片机的基本工作原理和汇编语言的编程方法。
2. 实验原理在at89c51单片机中,led是一种常用的输出设备,可以通过控制引脚的高低电平来实现闪烁效果。
通过学习汇编语言的编程方法,我们可以编写程序控制led引脚的状态,从而实现led的闪烁操作。
3. 实验步骤第一步:搭建硬件实验评台,将at89c51单片机与led灯连接。
第二步:编写汇编语言程序,通过设置端口的高低电平来实现led的闪烁效果。
第三步:将编写好的程序下载到at89c51单片机中,进行调试和验证。
4. 实验代码下面是一个简单的at89c51led闪烁实验的汇编语言程序:```assemblyorg 0h ; 程序从位置区域0开始执行mov P1, #0FFh ; 设置P1端口为输出loop:mov P1, #00h ; 将P1端口输出低电平acall delay ; 调用延时程序mov P1, #0FFh ; 将P1端口输出高电平acall delay ; 调用延时程序sjmp loop ; 无条件跳转至loop标号处delay:mov R1, #0Ah ; 设置延时计数值delay1:mov R2, #0FFh ; 设置内部计数值delay2:djnz R2, delay2 ; 内部计数减1djnz R1, delay1 ; 延时计数减1ret ; 返回end ; 程序结束```在这个程序中,我们首先设置P1端口为输出,并在一个循环中不断地将P1端口输出高低电平,通过调用延时程序来实现led的闪烁效果。
5. 实验总结通过这个实验,我们初步了解了at89c51单片机的基本工作原理和汇编语言的编程方法。
在以后的学习中,我们可以通过不断地深入实践和学习,掌握更多单片机和汇编语言的知识,从而实现更加复杂的功能和应用。
花样流水灯设计单片机课程设计课程题目院系电气工程及其自动化系专业班级学生姓名学生学号2022年6月15日指导教师一丶任务设计一款以AT89C51单片机作为主控核心,按键控制电路、流水灯显示电路以及单片机最小系统等模块组成的核心主控制电路。
二丶设计要求通过发光二极管显示不同的花样(至少有六种花样),并且可以通过按键来控制流水灯的速度。
三丶设计方案本方案主要是通过对基于单片机的多控制、多闪烁方式的LED流水灯循环系统的设计,来达到本设计的要求。
其硬件构成框图如下图所示,以单片机为核心控制,由单片机最小系统(时钟电路、复位电路、电源)、按键控制电路、LED发光二极管和5V直流电源组成。
单片机流水灯循环控制系统硬件框图此设计方案中单片机的P1口接5路按键控制电路,实现流水灯花型的切换功能;单片机的P3.7引脚接上一个按钮开关以实现对流水灯闪烁频率的控制,即实现了快慢两种节拍实现花型的变换;单片机上的P2口接八路LED发光二极管组成流水灯电路,显示流水灯循环情况。
四丶系统硬件设计4.1直流稳压电源电路对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源电路的稳定可靠是系统平稳运行的前提和基础。
电子设备除用电池供电外,还采用市电(交流电网)供电。
通过变压、整流、滤波和稳压后,得到稳定的直流电。
直流稳压电源是电子设备的重要组成部分。
本项目直流稳压电源为+5V。
直流稳压电源的制作一般有3种制作形式,分别是分立元件构成的稳压电源、线性集成稳压电源和开关稳压电源。
下图为稳压电源采用的是三端集成稳压器7805构成的正5V直流电源。
三端固定式集成稳压电源电路图AT89C51单片机的工作电压范围:4.0V---5.5V,所以通常给单片机外接5V直流电源。
此处用3节1.5V的干电池供电。
4.2单片机最小系统要使单片机工作起来,最基本的电路的构成由单片机、时钟电路、复位电路等组成,单片机最小系统如图所示。
目录目录 (1)第一章课题的意义及应用 (2)第二章系统的总体设计 (3)2.1 设计方法 (3)2.2 数码管显示方案 (3)2.3 键盘输入方案 (4)第三章硬件电路设计 (4)3.1电路原理 (4)3.2单片机最小系统 (5)3.3系统工作流程 (5)第四章程序设计 (6)4.1系统总体结构框图 (6)4.2 系统流程图 (6)第五章调试 (7)5.1正常现象 (7)5.2出现的故障 (7)第六章心得体会 (9)参考文献 (9)附录1 (10)程序: (10)附录2 (19)仿真电路图: (19)实验箱接线图: (19)流程图: (20)第一章课题的意义及应用当今社会,随着人们物质生活的不断提高,电子产品已经走进了家家户户,无论是生活或学习,还是娱乐和消遣几乎样样都离不开电子产品,大型复杂的计算能力是人脑所不能胜任的,而且比较容易出错。
计算机作为一种快速通用的计算工具方便了用户的使用。
计算机可谓是我们最亲密的电子伙伴之一。
本设计着重在于分析计算机软件和开发过程中的环节和步骤,并从实践经验出发对计算机设计做了详细的分析和研究。
单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。
在工业生产中。
单片微型计算机是微型计算机称单片机,特别适用于控制领域,故又称为微控制器。
单片机的应用日益广泛,如应用在仪器仪表,家用电器和专卖装备的智能化以及过程控制等方面,单片机在人们的日常生活和工作中正扮演着越来越重要的角色。
本系统就是充分利用了AT89C51芯片的I/O引脚。
系统以采用MCS-51系列单片机为中心器件来设计LED流水灯系统,实现8个LED流水灯的各种显示方式,并实现循环的速度可调,暂停及复位功能。
通过本次课题设计,应用《单片机原理及接口技术》等所学相关知识及查阅资料,完成可控流水灯设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。
通过本次设计的训练,可以使我在基本思路和基本方法上对基于MCS-51单片机的嵌入式系统设计有一个比较感性的认识,并具备一定程度的设计能力。
单片机花样流水灯设计实验报告* * 大学物理学院单片机花样流水灯设计实验课题: 花样流水灯设计班级: 物理 *** 姓名: ***学号:【摘要】当今时代的智能控制电子技术,给人们的生活带来了方便和舒适,而每到晚上五颜六色的霓虹灯则把我们的城市点缀得格外迷人,为人们生活增添了不少色彩。
制作流水灯的方法有很多种,有传统的分立元件,由数字逻辑电路构成的控制系统和单片机智能控制系统等。
本设计介绍一种简单实用的单片机花样流水灯设计与制作,采用基于MS-51的单片机AT89C51和发光二极管、晶振、复位、电源等电路以及必要的软件组成的以AT89C51为核心,辅以简单的数码管等设备和必要的电路,设计了一款简易的流水灯电路板,并编写简单的程序,使其能够自动工作。
本设计用AT89C51单片机为核心自制一款简易的花样流水灯,并介绍了其软件编程仿真及电路焊接实现,在实践中体验单片机的自动控制功能。
该设计具有实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。
关键字:AT89C51 单片机流水灯数码管2【概述】1. 单片机及其发展概况单片机又称为单片微计算机,其特点是将微型计算机的基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定时/计数器及终端系统等)全部集成在一个半导体芯片上。
单片机作为一种高集成度微型计算机,已经广泛应用于工业自动化控制、智能仪器仪表、通信设备、汽车电子与航空航天电子系统、智能家居电器等各个领域。
2. Protues仿真软件简介Protues以其数量众多的元件数据库、标准化的仿真仪器、直观的捕获界面、简洁明了的操作、强大的分析测试、可信的测试结果, 为电子工程设计节约研发时间,节省了工程设计费用。
利用Protues软件设计一款通过数码管显示计数时间的流水灯电路及Keil C软件编程后,再将两者关联则可以简单快速的进行仿真。
【实验设计目标】设计要求以发光二极管作为发光器件,用单片机自动控制,对8个LED灯设计至少3种流水灯显示方式,每隔20秒变换一次显示花样,计时通过一个二位七段数码管显示。
一、实训题目:LED流水灯设计与应用二、实训目的1. 掌握51单片机的基本原理和编程方法。
2. 熟悉LED灯的驱动方式及其在单片机中的应用。
3. 培养实际动手能力和问题解决能力。
三、实训内容1. 硬件设计(1)51单片机:AT89C51(2)LED灯:8个红色LED灯(3)电阻:8个220Ω电阻(4)电源:5V直流电源(5)面包板:1块(6)连接线:若干2. 软件设计(1)编写51单片机控制程序,实现LED流水灯功能。
(2)使用C语言进行编程,编写流水灯控制程序。
(3)调试程序,确保LED流水灯正常运行。
四、实训步骤1. 硬件连接(1)将51单片机的P1.0至P1.7端口分别与8个LED灯的正极相连。
(2)将LED灯的负极分别通过220Ω电阻连接到GND。
(3)将51单片机的VCC和GND分别连接到5V直流电源的正负极。
2. 软件编写(1)编写流水灯控制程序,包括初始化、主循环和延时函数。
(2)初始化:设置P1端口为输出模式,关闭所有LED灯。
(3)主循环:依次点亮P1端口的每个引脚,实现LED流水灯效果。
(4)延时函数:实现LED流水灯的延时效果。
3. 程序调试(1)将编写好的程序烧录到51单片机中。
(2)观察LED流水灯是否按照预期效果运行。
(3)如发现问题,分析原因并进行修改。
五、实训结果与分析1. 硬件结果LED流水灯电路连接正确,电源连接正常。
2. 软件结果编写程序后,将程序烧录到51单片机中,LED流水灯按照预期效果运行。
3. 分析(1)通过本次实训,掌握了51单片机的基本原理和编程方法。
(2)了解了LED灯的驱动方式及其在单片机中的应用。
(3)提高了实际动手能力和问题解决能力。
六、实训总结1. 本次实训使我对51单片机和LED灯的应用有了更深入的了解。
2. 在实训过程中,遇到了一些问题,但通过查阅资料和请教老师,成功解决了这些问题。
3. 在以后的学习和工作中,我将不断积累经验,提高自己的实际动手能力和问题解决能力。
目录目录 (1)第一章课题的意义及应用 (2)第二章系统的总体设计 (3)2.1 设计方法 (3)2.2 数码管显示方案 (3)2.3 键盘输入方案 (4)第三章硬件电路设计 (4)3.1电路原理 (4)3.2单片机最小系统 (5)3.3系统工作流程 (5)第四章程序设计 (6)4.1系统总体结构框图 (6)4.2 系统流程图 (6)第五章调试 (7)5.1正常现象 (7)5.2出现的故障 (7)第六章心得体会 (9)参考文献 (9)附录1 (10)程序: (10)附录2 (19)仿真电路图: (19)实验箱接线图: (19)流程图: (20)第一章课题的意义及应用当今社会,随着人们物质生活的不断提高,电子产品已经走进了家家户户,无论是生活或学习,还是娱乐和消遣几乎样样都离不开电子产品,大型复杂的计算能力是人脑所不能胜任的,而且比较容易出错。
计算机作为一种快速通用的计算工具方便了用户的使用。
计算机可谓是我们最亲密的电子伙伴之一。
本设计着重在于分析计算机软件和开发过程中的环节和步骤,并从实践经验出发对计算机设计做了详细的分析和研究。
单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。
在工业生产中。
单片微型计算机是微型计算机称单片机,特别适用于控制领域,故又称为微控制器。
单片机的应用日益广泛,如应用在仪器仪表,家用电器和专卖装备的智能化以及过程控制等方面,单片机在人们的日常生活和工作中正扮演着越来越重要的角色。
本系统就是充分利用了AT89C51芯片的I/O引脚。
系统以采用MCS-51系列单片机为中心器件来设计LED流水灯系统,实现8个LED流水灯的各种显示方式,并实现循环的速度可调,暂停及复位功能。
通过本次课题设计,应用《单片机原理及接口技术》等所学相关知识及查阅资料,完成可控流水灯设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。
通过本次设计的训练,可以使我在基本思路和基本方法上对基于MCS-51单片机的嵌入式系统设计有一个比较感性的认识,并具备一定程度的设计能力。
第二章系统的总体设计2.1 设计方法本课题使用AT89C51单片机时无须外扩存储器。
因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。
如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反,如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变高电平;同理,接在P1.1~P1.7口的其他7个LED的点亮和熄灭的方法同LED1。
因此,要实现流水灯功能,只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。
在此还应注意一点,由于人眼的视觉暂留效应以单片机执行每条指令的时间很短,在控制二极管亮灭的时候应该延时一段时间,否则就看不到“流水”效果了。
2.2 数码管显示方案通常数码管显示有两种方式:动态显示和静态显示。
静态显示的优点是程序简单、显示亮度有保证、单片机CPU的开销小,节约CPU的工作时间。
但占用I/O口线多,每一个LED都要占用一个I/O口硬件开销大,电路复杂。
需要几个LED就必须占用几个并行I/O口,比较适用于LED 数量较少的场合。
当然当LED数量较多的时候可以使用单片机的串行口通过移位寄存器的方式加以解决,但程序编写比较复杂。
LED动态显示硬件连接简单,但动态显示扫描方式需要占用CPU较多的时间,在单片机没有太多实时测试任务的情况下可以采用。
本系统需要采用4位LED数码管来显示流水灯闪烁方式的序号,故本系统选择动态显示方案。
2.3 键盘输入方案单片机的键盘结构可以采用独立式按键和矩阵式键盘两种。
独立式按键指直接用I/O口线构成单个按键电路,可在系统中键较少时使用。
在按键比较多的时候可采用矩阵式键盘。
本系统要设置6个按键,其中1个键用来开启和关闭整个流水灯系统并控制流水灯的闪烁方式,还有一个键也是控制流水灯的闪烁方式,另外2个键控制流水灯闪烁速度,还有一个按键用来控制流水灯的暂停和继续。
最后一个按键用来控制流水灯的复位,故采用独立式按键。
第三章硬件电路设计3.1电路原理本硬件的核心是MCS-51单片机,我们选用AT89C51。
因无需扩展外部RAM。
系统采用4位共阳极数码管,用来显示各种闪烁方式的序号。
系统采用6个按键控制,其中1个键用来开启和关闭整个流水灯系统并控制流水灯的闪烁方式,还有一个键也是控制流水灯的闪烁方式,另外2个键控制流水灯闪烁速度,还有一个按键控制流水灯的暂停和继续。
最后一个按键控制流水灯的复位。
系统在P1.0到P1.8上接了8个发光二极管,在按一下启动键时,P1.0的二极管亮,此时从P1.0到P1.8的二极管依次闪烁:1.若此时按按键1,2,流水灯将2个2个,隔1个亮1个,从中间向两边并从两边向中间或4个4个依次闪烁。
2.若此时按按键3,4,流水灯的闪烁频率将改变。
3.若此时按按键5,将暂停流水灯效果,再按一次又可继续之前的效果。
4.若此时按按键6,将复位流水灯(跳到第一种方式)。
3.2单片机最小系统图3—13.3系统工作流程按设计要求,规划了可控流水灯的工作流程如下:1.按下启动按钮(按键1),流水灯依次闪烁,数码管将显示1为第一种闪烁方式。
若在此时按下按键3,4灯光将改变频率显示(共有3种速度可供调节)。
并且若此时按按键5,将暂停彩灯效果,再按一次又可继续之前的效果。
2.按下按键1流水灯将2个2个闪烁,此时数码管将显示2表示为第2种闪烁方式,若在此时按下按键3,4灯光将改变频率显示(共有3种速度可供调节)。
并且若此时按按键5,将暂停彩灯效果,再按一次又可继续之前的效果。
3.再按下功能键1流水灯将隔1个亮1个,此时数码管将显示3表示为第3种闪烁方式,再按下功能键3,4灯光将改变频率显示(共有3种速度可供调节)。
并且若此时按按键5,将暂停彩灯效果,再按一次又可继续之前的效果。
4.再次按下按键1流水灯将从中间向两边并从两边向中间闪烁,此时数码管将显示4表示为第4种闪烁方式,再按下功能键3,4灯光将改变频率显示(共有3种速度可供调节)。
并且若此时按功能键5,将暂停彩灯效果,再按一次又可继续之前的效果。
5.再按下按键1流水灯将4个4个闪烁,此时数码管将显示5表示为第4种闪烁方式,再按下按键3,4灯光将改变频率显示(共有3种速度可供调节)。
并且若此时按按键5,将暂停彩灯效果,再按一次又可继续之前的效果。
6.再按下停止按钮系统将停止运行。
7.按按键2改变流水灯闪烁方式数码管将显示的数字依次减少。
8.按按键6将复位流水灯(跳到第一种方式)。
第四章 程序设计4.1系统总体结构框图系统的结构框图如图4—1所示。
图4—14.2 系统流程图整个系统的总体程序,电路通电后,若按一下按键1,为第一种方式;若再按一下按键1,此时为第二种方式;再按一下为第三种方式;若按下按键2,此时为第二种方式;若再按一下按键2,此时为第一种方式;再按一下按键2,此时为第五种方式。
每种方式各有它的流水灯花样。
(程序及流程图请看附录)第五章调试5.1正常现象按下按键1,灯开始闪烁。
开始运行,这是第一种方式,然后在第一种方式中又有四种闪烁方式,这时候就要用到按键1和2了,按下按键1,2切换方式。
按一下,切换一种方式,再按一下切换另一种方式。
按下按键1,2灯开始闪烁,切换五种方式。
按下按键3,4灯光改变频率显示。
按下按键5彩灯效果暂停,再按一次又继续之前的效果。
最后,就是关闭,按下按键1。
5.2出现的故障在调试当中,出现了按下按键5,不能暂停彩灯效果,通过认真修改程序后,按下按键5,暂停彩灯效果,再按一次又继续之前的效果。
图5—1在用实验箱进行实验时,不能实现流水灯效果。
认真思考及检查线路后,发现是烧接程序时步骤出错。
然后重新按照步骤:擦除芯片——打开文件——写Flash——校验Flash操作,最后实现了可控流水灯功能。
图5—2图5—3第六章心得体会本次课程设计的题目是可控流水灯的设计,我针对这个题目的任务要求从课本上,上网等渠道获取相关信息及参考资料。
之后对电路原理图和程序不断地修改,最终达到要求的效果。
但由于水平和时间有限,程序和设计中还有许多不足之处。
我会在以后的学习中不断努力。
通过此次设计使我对应用系统设计思路有了一定的掌握,对硬件和软件的实践有了一定的了解。
系统采用4位共阳极数码管来显示数字,采用6个按键,用来调整流水灯的闪烁方式,闪烁频率,暂停及复位。
将所学的知识得到了一定的贯通,进一步掌握了独立设计的本领,深入领会单片机应用系统的软、硬件调试方法和系统研制开发过程。
感谢老师及同学的帮助,这次课程设计收获颇多。
参考文献[1] 胡健单片机原理及接口技术,机械工业出版社。
[2] 百度文库。
附录1程序:ORG 0000HAJMP STARTORG 000BHAJMP T_0 ;20ms延时中断ORG 001BHAJMP T_1 ;100ms延时中断;_ _ 伪定义_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ YANS_EN BIT01H ;延时使能标志,1有效ORG 0030H;_ _ 初始化_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ START:MOV P2, #01H ;打开四位一体数码管COM1端MOV SP, #60H ;设置堆栈指针在(60H)MOV R1, #0 ;R1 存放按键1,2(选择工作方式)MOV R2, #1 ;R2 存放按键3,4(变换延时时间)MOV R3, #0 ;R3 延时辅助MOV R4, #0 ;R4 流水灯1查表辅助MOV R5, #0 ;R5 流水灯2查表辅助MOV R6, #0 ;R6 流水灯3查表辅助MOV R7, #0 ;R7 流水灯4查表辅助MOV R0, #0 ;R0 流水灯5查表辅助MOV 30H, #2 ;30H 存放延时数据2x100ms即200ms;中断初始化MOV IE, #10001010B;T_0、T_1延时中断使能MOV IP, #00000000B;无中断优先MOV TMOD,#00010001B ;T_0、T_1延时中断工作方式一MOV TH0, #0D8HMOV TL0, #0F0H ;"D8F0" = "55536" (20000us即20ms) MOV TH1, #3CHMOV TL1, #0B0H ;"3CB0" = "15536" (100000us即100ms) MOV TCON,#01010000B ;启动T_0、T_1延时;_ _ 主程序_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _MAIN:CJNE R1, #1, L1 ;流水灯1LCALL LOOPL1:CJNE R1, #2, L2 ;流水灯2LCALL LOOP1L2:CJNE R1, #3,L3 ;流水灯3LCALL LOOP2L3:CJNE R1, #4, L4 ;流水灯4LCALL LOOP3L4:CJNE R1, #5, L5 ;流水灯5LCALL LOOP4L5:CJNE R1, #6, L6 ;关闭MOV P1, #0FFHMOV P0, #0FFHLCALL STARTL6:LJMP MAIN;_ _ 流水灯1 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP:JNB YANS_EN,$ ;延时CLR YANS_EN ;关闭延时使能标志MOV DPTR, #TAB1MOV A,R4MOVC A, @A+DPTRMOV P1,AMOV P0, #0F9H ;数码管显示1INC R4CJNE R4, #16, BY1MOV R4, #0BY1:RET;_ _ 流水灯2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP1:CLR YANS_EN ;关闭延时使能标志MOV DPTR, #TAB2MOV A, R5MOVC A, @A+DPTRMOV P1, AMOV P0, #0A4H ;数码管显示2INC R5CJNE R5, #8,BY2MOV R5, #0BY2:RET;_ _ 流水灯3 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP2:JNB YANS_EN, $ ;延时CLR YANS_EN ;关闭延时使能标志MOV DPTR, #TAB3MOV A, R6MOVC A, @A+DPTRMOV P1, AMOV P0, #0B0H ;数码管显示3INC R6CJNE R6, #16, BY3MOV R6, #0BY3:RET;_ _ 流水灯4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP3:CLR YANS_EN ;关闭延时使能标志MOV DPTR, #TAB4MOV A, R7MOVC A, @A+DPTRMOV P1, AMOV P0, #99H ;数码管显示4INC R7CJNE R7, #10, BY4MOV R7, #0BY4:RET;_ _ 流水灯5 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LOOP4:JNB YANS_EN, $ ;延时CLR YANS_EN ;关闭延时使能标志MOV DPTR, #TAB5MOV A, R0MOVC A, @A+DPTRMOV P1, AMOV P0, #92H ;数码管显示5INC R0CJNE R0, #40, BY5MOV R0, #0BY5:RET;_ _ 中断T_0(20ms延时执行识别按键) _ _ _ _ _ _ _ _ _ _ _T_0:CLR ET0PUSH PSWPUSH ACCMOV TH0, #0D8HMOV TL0, #0F0H ;"D8F0" = "55536" (20000us即20ms) LCALL SBAJ ;识别按键POP ACCPOP PSWSETB ET0RETI;_ _ 中断T_1(100ms延时)_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _T_1:CLR ET1PUSH PSWPUSH ACCMOV TH1, #3CHMOV TL1, #0B0H ;"3CB0" = "15536" (100000us即100ms) INC R3MOV A,R3CJNE A,30H,YSMOV R3, #0SETB YANS_EN ;启动延时使能YS:POP ACCPOP PSWSETB ET1RETI;_ _ 按键识别_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _SBAJ:;按键1,2(选择工作方式)JB P3.0, L7JNB P3.0, $INC R1L7:JB P3.1, L8JNB P3.1, $DEC R1CJNE R1, #0,L7MOV R1, #5L8:;按键3,4(变换延时时间)JB P3.2, L9JNB P3.2, $INC R2LCALL YSGX ;调用延时数据更新L9:JB P3.3, L10JNB P3.3, $INC R2LCALL YSGX1 ;调用延时数据更新L10:;按键5(暂停继续)JB P3.4, L11JNB P3.4, $CPL TR1L11:;按键6(复位)JB P3.5, L12JNB P3.5, $MOV R1,#1L12:RET;_ _ 延时数据更新_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ YSGX:CJNE R2, #1, BS1MOV 30H, #10 ;10x100ms即1sMOV R3, #0SJMP BS3BS1:CJNE R2, #2, BS2MOV 30H, #5 ;5x100ms即500msMOV R3, #0SJMP BS3BS2:CJNE R2, #3, BS3MOV R2, #0MOV 30H, #2 ;2x100ms即200msMOV R3, #0BS3:RETYSGX1:CJNE R2, #1, BS11MOV 30H, #2 ;2x100ms即200msMOV R3, #0SJMP BS33BS11:CJNE R2, #2, BS22MOV 30H, #5 ;5x100ms即500msMOV R3, #0SJMP BS33BS22:CJNE R2, #3, BS33MOV R2, #0MOV 30H, #10 ;10x100ms即1sMOV R3, #0BS33:RET;_ _ 流水灯数据_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _TAB1: ;流水灯1DB 0FEH, 0FCH, 0F8H, 0F0H, 0E0H, 0C0H, 80H, 00H DB 80H, 0C0H, 0E0H, 0F0H, 0F8H, 0FCH, 0FEH, 0FFHTAB2: ;流水灯2DB 0FCH, 0F0H, 0C0H, 00H, 0C0H, 0F0H, 0FCH, 0FFHTAB3: ;流水灯3DB 0FEH, 0FAH, 0EAH, 0AAH, 0FFHDB 0FDH, 0F5H, 0D5H, 55H, 0FFHDB 0AAH, 0FFH,55H, 0FFH,00H, 0FFHTAB4: ;流水灯4DB 0E7H, 0C3H, 81H, 00H, 0FFHDB 7EH, 3CH, 18H, 00H, 0FFHTAB5: ;流水灯5DB 0FBH, 0F3H, 0E3H, 0C3H, 0FFH DB0F7H, 0E7H, 0C7H, 87H, 0FFHDB 0EFH, 0CFH, 8FH, 0FH, 0FFH DB 0DFH, 9FH, 1FH, 1EH, 0FFH DB 0BFH, 3FH, 3EH, 3CH, 0FFH DB 7FH, 7EH, 7CH, 78H, 0FFH附录2仿真电路图:实验箱接线图:流程图:。