当前位置:文档之家› 单片机课程设计花样流水灯

单片机课程设计花样流水灯

河南理工学院

课程设计说明书

题目:把戏流水灯设计

姓名:

院〔系〕:

专业班级:

学号:

指导教师:

成绩:

时间:2021 年 4 月23 日至2021 年5月29日

河南理工学院

课程设计任务书

题目: 把戏流水灯设计

专业、班级

学号

主要内容、根本要求、主要参考资料等:

主要内容:

利用单片机控制16个发光二极管模拟的彩灯按照一定的规律点亮、熄灭、闪烁。

根本要求:

1.实现发光二极管的多样化显示;

2.利用proteus软件完成设计电路和仿真;

3.掌握相关芯片和电子元件的使用方法;

4.通过此次设计将单片机软硬件结合起来对程序进行编辑、校验,锻炼实践能力和理论联系实际的能力。

主要参考资料:

[1]李全利,单片机原理及接口技术[M],高等教育出版社

[2]王文杰,单片机应用技术[M],冶金工业出版社

[3]朱清慧,PROTEUS教程—电子线路设计、制版与仿真[M],清华大学出版社

[4]单片机实验指导书,天煌教仪

[5]彭伟,单片机C语言程序设计实训100例[M],电子工业出版社

完成期限:2021.4.23-2021.5.29

指导教师签名:

课程负责人签名:

年月日

目录

绪论 0

1 课程设计的目的和要求 (1)

1.1 设计目的 (1)

1.2 设计要求 (1)

2 总体设计 (1)

2.1 硬件总体设计 (1)

2.1.1 设计思想 (1)

2.1.2 原件清单 (1)

2.1.3 模块分析 (1)

2.2软件总体设计.................................................................................................... 错误!未定义书签。

3 硬件设计 (2)

3.1 AT89C51单片机的硬件结构 (2)

3.1.1主要特性 (3)

3.1.2主要引脚功能 (3)

3.1.3外部总线结构 (5)

3.1.4振荡器特性 (5)

3.1.5芯片擦除 (5)

3.2硬件电路设计 (6)

3.2.1震荡电路 (6)

3.2.2LED电路显示 (7)

3.2.3复位电路 (8)

4软件设计 (8)

4.1主程序设计 (8)

4.2子程序设计 (9)

4.3流水灯控制码程序设计 (9)

4.4程序流程图 (9)

5使用proteus软件调试仿真说明 (10)

5.1 Proteus的介绍 (10)

5.2 Proteus的特点 (10)

5.3 Proteus的使用方法 (10)

5.4电路原理图的设计方法 (11)

5.5仿真过程 (12)

6测试数据 (12)

7附录 (13)

7.1把戏流水灯程序 (13)

7.2把戏流水灯总线路图 (13)

结束语 (15)

参考文献 (15)

绪论

随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯不断变化闪烁。LED灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。但目前市场上各式样的LED 灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。因此有必要对现有的彩灯控制器进行改良。

流水灯是一串按一定的规律像流水一样连续闪亮。流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。流水灯控制可用多种方法实现,但对现代可编程控制器而言,利用移位存放器实现最为便利。通常用左移存放器实现灯的单方向移动;用双向移位存放器实现灯的双向移动。本案例利用价格低廉的AT89C51系列单片机控制基色LED灯泡从而实现丰富的变化。

关键词:AT89C51,LED灯,单片机,把戏流水灯

1 课程设计的目的和要求

1.1 设计目的

近年来随着科技的开展,单片机的应用正在不断走向深入,同时带动传统控制检测日新月异更新,在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象点的软件结合,加以完善。流水灯,可以更简单、方便的使用。通过本课程设计使学生进一步稳固单片机原理及应用的根本概念、根本理论,分析问题的根本方法,增强系统地运用已学的理论知识解决实际问题的能力和查阅资料的能力。培养一定的自学能力和独立分析问题、解决问题的能力,能通过独立思考、查阅工具书、参考文献,寻找解决方案。1.2 设计要求

流水灯设计的根本要求:设计一个流水灯,应用AT89C51试验系统,电路开启后红、绿两种颜色的灯在时钟信号作用下按一定规律转换状态。

2 总体设计

2.1 硬件总体设计

2.1.1 设计思想

整个系统工作由软件程序控制运行,根据需要,可以上电后系统经过初始化,入用户设定模式状态。基于AT89C51单片机的彩灯控制方案,实现对LED彩灯的控制。本方案以AT89C51单片机作为主控核心,与驱动等模块组成核心主控制模块。在主控模块上设有晶振电路和16个LED显示二极管,根据需要编写假设干种亮灯模式,根据各种亮灯时间的不同需要,在不同时刻输出灯亮或灯灭的控制信号。

2.1.2 原件清单

2.1.3 模块分析

〔1〕核心部件

AT89C51单片机是整个彩灯循环系统的核心是控制彩灯循环闪烁等等一切功能的部

件;其中内部有ROM、有RAM、有并行I/O口等,在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。

〔2〕复位系统

电路中C1、R2……组成复位电路,它的作用是将单片机内部特殊功能存放器和端口存放器恢复到初始状态,从内部FLASH存储器的初始状态开始执行

〔3〕震荡系统

单片机本身如同一个复杂的同步时序电路,为了保证同步工作,电路应在唯一的时钟信号控制下,严格地按规定时序工作。而时钟电路就用于产生单片机工作所需要的时钟信号。

〔4〕闪烁系统

利用单片机的P口控制LED的发光闪烁,再利用编程实现流水灯的电路,用软件来实现对LED的控制,每个LED接一个限流电阻,来控制流入LED发光管的电流。

图2-1 硬件系统方框图

3 硬件设计

3.1 AT89C51单片机的硬件结构

由图3-1可以看出,单片机内部主要包含以下几个部件:

一个8位CPU;

复位电路

AT89C51核心

部件

闪烁系统

震荡系统

一个时钟电路;

4Kbyte程序存储器;

128byte数据存储器;

两个16位定时/计数器;

64Kbyte扩展总线控制电路;

四个8-bit并行I/O端口;

一个可编程串行接口;

五个中断源,其中包括两个优先级嵌套中断。

图3-1 AT89C51硬件结构框图

3.1.1主要特性

AT89C51是一种低功耗/低电压、高性能的八位CMOS单片机,片内有一个4KB的FLASH 可编程可擦除只读存储器〔FPEROM—Flash Programmable and Erasable Read Only Memory〕,它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器技术,而且其输出引脚和指令系统都与MSC—51兼容。片内置通用8位中央处理器〔CPU〕和FLASH存储单元,片内的存储器允许在系统内改编程序或用常规的非易失性存储器编程。因此,AT89C51是一种功能强、灵活性高且价格合理的单片机,可方便的应用于各种控制领域。

3.1.2主要引脚功能

1.电源引脚Vcc和Vss

Vcc:电源端,接+5V。

Vss:接地端。

通常在Vcc和Vss引脚之间接0.1μ高频滤波电容。

2.时钟电路引脚XTAL1和XTAL2

XTAL1:接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,假设使用外部TTL时钟时,该引脚必须接地。

XTAL2:接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出,假

设使用外部TTL时钟时,该引脚为外部时钟的输入端。

3.地址锁存允许ALE

在系统扩展时,ALE用于控制地址锁存器锁存P0口输出的低8位地址,从而实现数据与低位地址的复用。当单片机上电正常工作后,ALE端就周期性地以时钟频率的1/6的固定频率向外输出正脉冲信号,ALE的负载能力为8个LSTTL器件。

4.外部程序存储器读选通信号

是读外部程序存储器的选通信号,低电平有效。CPU从外部存储器取指令时,它在每个机器周期中两次有效。

5.程序存储器地址允许输入端/V

PP

当为高电平时,CPU执行片内程序存储器指令,但当PC中的值超过0FFFH时,将自动转向执行片外程序存储器指令。当为低电平时,CPU只执行片外程序存储器指令。对于8031,由于其无片内ROM,故必须接低电平。

6.复位信号RST

该信号高电平有效,在输入端保持两个机器周期的高电平后,就可以完成复位操作。此外,该引脚还有掉电保护功能,假设在该端接+5V备用电源,在使用中假设Vcc掉电,可保护片内RAM中信息不丧失。

7.输入/输出口引脚P

0、P

1

、P

2

和P

3

P0口〔P0.0~P0.7〕:该端口为漏极开路的8位准双向口,负载能力位8高LSTTL负载,它为8位地址线和8位数据线的复用端口。

P1口〔P1.0~P1.7〕:它是一个内部带上拉电阻的8位准双向I/O口,P1口的驱动能力为4个LSTTL负载。

P2口〔P2.0~P2.7〕:它为一个内部带上拉电阻的8位准双向I/O口,P2口的驱动能力也为4个LSTTL负载。在访问外部程序存储器时,它作存储器的高8位地址线。

P3口〔P3.0~P

3.7〕:P

3

口同样是内部带上拉电阻的8位准双向I/O口,P

3

口除了作为

一般的I/O口使用之外,其还具有特殊功能。

3.1.3外部总线结构

所谓总线,就是连接单片机与各外部器件的一组公共的信号线。当系统要求扩展时,单片机要与一定数量的外部器件和外围设备连接。如果各部件及每一种外围设备都分别用各自的一组线路与CPU直接连接,那么连线将会错综复杂,甚至难以实现。为了简化硬件电路的设计和系统结构,常用一组线路,并配以适当的接口电路来与各个外部器件和外围设备连接,这组共用的连接线路就是总线。采用总线结构便于扩展外部器件和外围设备,而统一的总线标准那么使不同设备间的互连更容易实现。

利用片外引脚可以构造MCS-51系列单片机的三总线结构。单片机的引脚除了电源端VCC、接地端VSS、复位端RST、晶振接入端XTAL1和XTAL2、通用I/O口的P1.0~P1.7以外,其余的引脚都是为实现系统扩展而设置的。用这些引脚构造的单片机系统的三总线结构如图3-2所示。

图3-2 MCS-51系列单片机片外三总线结构

〔1〕地址总线〔Address Bus,AB〕:MCS-51系列单片机总共有16根地址线A15~ A0,片外存储器可寻址范围达64KB〔216=65536字节〕,由P2口直接提供高8位地址A15~ A8,P0口经地址锁存器提供低8位地址A7~ A0。

〔2〕数据总线〔Data Bus,DB〕:MCS-51系列单片机总共有8根数据线D7~D0,全由P0口提供。由于P0口是分时复用总线,分时输送低8位地址〔通过地址锁存器锁存〕和高8位数据信息。

〔3〕控制总线〔Control Bus,CB〕:控制总线由P3口的第二功能WR(P3.6)、RD(P3.7)和3根独立的控制线EA、ALE、PSEN组成。

3.1.4振荡器特性

XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的上下电平要求的宽度

3.1.5芯片擦除

AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的

掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

3.2硬件电路设计

3.2.1震荡电路

为彩灯循环系统提供稳定频率波在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,引入唯一的外部脉冲信号作为各单片机的振荡脉冲。这时外部的脉冲信号是经单片机89C51的XTAL2引脚注入的;在MCS-51单片机片内有一个高增益的反相放大器,反相放大器的输入端为XTAL1,输出端为XTAL2,在芯片的外部通过这两个引脚跨接晶体振荡器和微调电容C1、C2形成反应电路,可构成稳定的自激振荡器,振荡频率范围通常是1.2~12MHz。晶体振荡频率高,那么系统的时钟频率也高,单片机的运行速度也就快。

图3-4 震荡电路

晶体振荡器的振荡信号从XTAL2端送入内部时钟电路,它将该振荡信号二分频,产生一个两相时钟信号P1和P2供单片机使用。时钟信号的周期称为状态时间S,它是振荡周期的2倍,P1信号在每个状态的前半周期有效,在每个状态的后半周期P2信号有效。CPU 就是以两相时钟P1和P2为根本节拍协调单片机各局部有效工作的。 MCS-51单片机时钟电路示意图如图4所示。

XTAL1

XTAL2

f OSC

三分频

六分频

状态时钟

机器周期

ALE

÷2

÷3

÷6

C1

C2

晶振反相

放大

图3-5 MCS-51单片机时钟振荡电路示意图

振荡电路产生的振荡脉冲并不直接使用,而是经分频后再为系统所用。振荡脉冲在片内通过一个时钟发生电路二分频后才作为系统的时钟信号。片内时钟发生电路实质上是一个二分频的触发器,其输入来自振荡器,输出为二相时钟信号,即状态时钟信号,其频率为f osc/2;状态时钟三分频后为ALE信号,其频率为f osc/6;状态时钟六分频后为机器周期,其频率为f osc/12。

在图3-4中,使用晶体振荡器时,C1、C2取值30±10pF;使用陶瓷振荡器时,C1、C2取值40±10pF。C1、C2的取值虽然没有严格的要求,但电容的大小影响振荡电路的稳定性和快速性,通常取值20~30pF。在设计印制电路板时,晶振和电容等应尽可能靠近芯

片,以减少分布电容,保证振荡器振荡的稳定性。

也可以由外部时钟电路向片内输入脉冲信号作为单片机的振荡脉冲。这时外部脉冲信号是经XTAL1引脚引入的,而XTAL2引脚悬空或接地。对外部信号的占空比没有要求,但上下电平持续的时间不应小于20ns。这种方式常用于多块芯片同时工作,便于同步。其外部脉冲接入方式如图3-6所示。

图3-6 MCS-51单片机外部时钟输入接线图

所谓时序,是指在指令执行过程中,CPU的控制器所发出的一系列特定的控制信号在时间上的先后关系。CPU发出的控制信号有两类:一类是用于单片机内部的,用户不能直接接触此类信号,不必对它作过多了解;另一类是通过控制总线送到片外的,人们通常以时序图的形式来表示相关信号的波形及出现的先后次序。为了说明信号的时间关系,需要定义时序单位。89C51的时序单位共有四个,从小到大依次是拍节、状态、机器周期和指令周期。如图3-4所示。

3.2.2LED电路显示

如下图,P0口控制LED灯D1~D8的显示,P2口控制LED灯D9~D16的显示。限流电阻为470欧姆,经过的电流大概为10mA。

3.2.3复位电路

当要对晶片重置时,只要按开关就能完成LED和开关的重置。复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。单片机的RST管脚为主机提供了一个外部复位信号输入口。复位信号是高电平有效,高电平有效的持续时间为2个机器周期以上。单片机的复位方式可由手动复位完成。

RST引脚是复位信号输入端,复位信号为高电平有效,其有效时间应持续24个周期以上才能完成复位操作,假设使用6MHZ晶振,那么持续4微秒以上才能完成复位操作。

CPU在第二个机器周期内执行复位操作,以后每个机器周期重复一次,直至RST端电平变低。在单片机复位期间,ALE和PSEN信号都不产生。复位操作将对局部专用存放器产生影响,复位后,这些内部存放器状态如表3-1.

表3-1局部专用存放器复位状态

存放器值存放器值

PC 0000H ACC 00H

B 00H PSW 00H

SP 07H DPTR 0000H

P0~P3 OFEH IP XXX0000

IE 0XX0000 TMOD 00H

TCON 00H TL0,TL1 00H

TH0,TH1 00H SCON 00H

SBUF 不定PCON 0XX0000

上电瞬间由于电容C上无储能,其端电压近似为零,RST获得高电平,随着电容器C 的充电,RST引脚上的高电平将逐渐下降,当RST引脚上的电压小于某一数值后,单片机就脱离复位状态,进入正常工作模式,只要高电平能保持复位所需要的时间〔约两个机器周期〕,单片机就能实现复位。

4软件设计

4.1主程序设计

#include

#include

unsigned char k,a,b;

void delay();

void main()

{

while(1)

{

a=0xfe ; //1111 1110

b=0xfe; //111

for(k=0;k<8;k++)

{

P0=a;

delay();

b=_crol_(b,1);

a=a&b;

}

a=0xfe ; //1111 1110

b=0xfe; //111

for(k=0;k<8;k++)

{

P2=a;

delay();

b=_crol_(b,1);

a=a&b;

}

P0=0XFF;

P2=0XFF;

}

}

4.2 延时程序设计

void delay()

{

unsigned int i,j;

for(i=200;i>0;i--)

for(j=200;j>0;j--);

}

4.3流水灯控制码程序设计

利用总线控制实现流水灯〔8位二极管循环点亮〕

编程思路:

a) 先点亮第一盏灯,延时点亮第二盏,依次延时8盏灯全部点亮。

b) 当8盏灯全部点亮时,熄灭8盏灯。

c) 进入循环。

4.4程序流程图

图4-1程序流程图

5使用proteus软件调试仿真说明

5.1 Proteus的介绍

Proteus软件由ISIS和ARES两局部构成,其中ISIS是一款便捷的电子系统原理设计和仿真平台软件,ARES是一款高级的PCB布线编辑软件。Proteus是目前最好的模拟单片机外围器件的工具,与其他单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其他电路的工作情况。因此在仿真和调试程序时,关心的不再是某些语句执行时单片机存放器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,解决了实验和工程应用间脱节的矛盾。

5.2 Proteus的特点

实现了单片机仿真和SPICE电路仿真的结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真等功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。具有强大的原理图绘制功能。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、存放器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。

5.3 Proteus的使用方法

点状的栅格区域为编辑窗口,左上方为预览窗口,左下方为元器件列表区,即对象选择器编辑窗口用于放置元器件,进行连线,绘制原理图。预览窗口可以显示全部原理图。在预览窗口中,有两个框,

蓝框表示当前页的边界,绿框表示当前编辑窗口显示的区域。当从对象选择器中选中一个新的对象时,预览窗口可以预览选中的对象。在预览窗口上单击,Proteus ISIS将会以单击位置为中心刷新编辑窗口。

5.4电路原理图的设计方法

原理图的具体设计步骤如下:

(1) 新建设计文档。在进入原理图设计之前,首先要构思好原理图,即必须知道所设计的工程需要哪些电路来完成,用何种模板;然后在Proteus ISIS编辑环境中画出电路原理图。

(2) 设置工作环境。根据实际电路的复杂程度来设置图纸的大小等。在电路图设计的整个过程中,图纸的大小可以不断地调整。设置适宜的图纸大小是完成原理图设计的第一步。

(3) 放置元器件。首先从添加元器件对话框中选取需要添加的元器件,将其布置到图纸的适宜位置,并对元器件的名称、标注进行设定;再根据元器件之间的走线等联系对元器件在工作平面上的位置进行调整和修改,使得原理图美观、易懂。

〔4〕对原理图进行布线。根据实际电路的需要,利用Proteus ISIS编辑环境所提供的各种工具、命令进行布线,将工作平面上的元器件用导线连接起来,构成一幅完整的电路原理图。

(5) 建立网络表。在完成上述步骤之后,即可看到一张完整的电路图,但要完成印制版电路的设计,还需要生成一个网络表文件。网络表是印制版电路与电路原理图之间的纽带。

(6) 原理图的电气规那么检查。当完成原理图布线后,利用Proteus ISIS编辑环境所提供的电气规那么检查命令对设计进行检查,并根据系统提示的错误检查报告修改原理图。

(7) 调整。如果原理图已通过电气规那么检查,那么原理图的设计就完成了,但是对于一般电路设计而言,尤其是较大的工程,通常需要对电路进行屡次修改才能通过电气规那么检查。

(8) 存盘和输出报表。Proteus ISIS提供了多种报表输出格式,同时可以对设计好的原理图和报表进行存盘和输出打印。

5.5仿真过程

Proteus Isis仿真时,单片机需要加载程序,加载程序为.HEX文件。本设计利用proteus,在proteus 中的source下拉框中选择add/removesource files新建汇编语言程序文件,然后用鼠标点击OK.在source 下拉框中新建的汇编语言程序文件里写入汇编语言程序,写完之后在“source〞选项中选择“build all〞选项进行编译,如有错误那么在刚刚新建的汇编语言程序文件里面进行修改,如果正确那么会自动生成.HEX文件,然后就可以开始仿真了。

6测试数据

7附录7.1把戏流水灯程序

#include

#include

unsigned char k,a,b;

void delay();

void main()

{

while(1)

{

a=0xfe ; //1111 1110

b=0xfe; //111

for(k=0;k<8;k++)

{

P0=a;

delay();

b=_crol_(b,1);

a=a&b;

}

a=0xfe ; //1111 1110

b=0xfe; //111

for(k=0;k<8;k++)

{

P2=a;

delay();

b=_crol_(b,1);

a=a&b;

}

P0=0XFF;

P2=0XFF;

}

}

void delay()

{

unsigned int i,j;

for(i=200;i>0;i--)

for(j=200;j>0;j--);

}7.2把戏流水灯总线路图

结束语

通过这次课程设计我学到了很多东西,我更加体会到理论知识与动手能力相结合的重要性,而且设计过程中使我懂得在设计程序之前,务必要对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源:懂得设计的关键是要有一个清晰的思路和一个完整的软件流程图。在设计程序时,不能妄想一次就将整个程序设计好,“反复修改,不断改良〞是程序设计的必经之路。要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你思路,这样也为资料的保存和交流提供了方便。整个设计的过程中,还是碰到了一些问题。比方,对于键盘的延时防抖问题不能较好的解决;对于编程的顺序及各模块程序调用掌握得还不够好;对于一些相关的应用软件没能熟练掌握。通过这几天的反复思考,以及参考网上的程序,最终还是完成了设计。设计中我最大的收获就是自己的动手能力和独立解决问题的能力得到了很大的提高,在动手的过程中,不仅能增强实践能力,而且在理论上可以有更深的认识。

参考文献

[1]李全利,单片机原理及接口技术[M],高等教育出版社

[2]王文杰,单片机应用技术[M],冶金工业出版社

[3]朱清慧,PROTEUS教程——电子线路设计、制版与仿真[M],清华大学出版社

[4]单片机实验指导书,天煌教仪

[5]彭伟,单片机C语言程序设计实训100例[M],电子工业出版社

用单片机实现流水灯的控制设计

用单片机实现流水灯的控制设计 当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。学习单片机的最有效方法就是理论与实践并重,本文笔者用AT89C51单片机自制了一款简易的流水灯,重点介绍了其软件编程方法,以期给单片机初学者以启发,更快地成为单片机领域的优秀人才。 1.硬件组成 按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,具有丰富的内部资源:4kB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.2 5~5.50V的电压工作范围和0~24MHz工作频率,使用AT89C51单片机时无须外扩存储器。因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。其具体硬件组成如图1所示。 图1 流水灯硬件原理图

从原理图中可以看出,如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反,如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变为高电平;同理,接在P1.1~P1.7口的其他7个LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能,我们只要将发光二极管LE D1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了 3.软件编程 单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到流水灯循环点亮的现象,我们还需要告诉单片机怎么来进行工作,即编写程序控制单片机管脚电平的高低变化,来实现发光二极管的一亮一灭。软件编程是单片机应用系统中的一个重要的组成部分,是单片机学习的重点和难点。下面我们以最简单的流水灯控制功能即实现8个LED灯的循环点亮,来介绍实现流水灯控制的几种软件编程方法。 3.1位控法 这是一种比较笨但又最易理解的方法,采用顺序程序结构,用位指令控制P1口的每一个位输出高低电平,从而来控制相应LED灯的亮灭。程序如下: ORG 0000H ;单片机上电后从0000H地址执行 AJMP START ;跳转到主程序存放地址处 ORG 0030H ;设置主程序开始地址 START:MOV SP,#60H ;设置堆栈起始地址为60H CLR P1.0 ;P1.0输出低电平,使LED1点亮 ACALL DELAY ;调用延时子程序 SETB P1.0 ;P1.0输出高电平,使LED1熄灭 CLR P1.1 ;P1.1输出低电平,使LED2点亮 ACALL DELAY ;调用延时子程序 SETB P1.1 ;P1.1输出高电平,使LED2熄灭 CLR P1.2 ;P1.2输出低电平,使LED3点亮 ACALL DELAY ;调用延时子程序 SETB P1.2 ;P1.2输出高电平,使LED3熄灭 CLR P1.3 ;P1.3输出低电平,使LED4点亮 ACALL DELAY ;调用延时子程序 SETB P1.3 ;P1.3输出高电平,使LED4熄灭 CLR P1.4 ;P1.4输出低电平,使LED5点亮 ACALL DELAY ;调用延时子程序 SETB P1.4 ;P1.4输出高电平,使LED5熄灭 CLR P1.5 ;P1.5输出低电平,使LED6点亮 ACALL DELAY ;调用延时子程序 SETB P1.5 ;P1.5输出高电平,使LED6熄灭

基于51单片机的花样流水灯设计

摘要 摘要 计算机技术的飞速发展和提高,把我们带入了崭新的时代,现在,计算机的应用已经深入到千家万户。单片微型计算机是制作在一块集成电路芯片上的计算机,简称单片机。单片机在现在社会有着广泛的应用,小到人们的日常电子用品,大到航天飞机、宇宙飞船,上面都有单片机的广泛应用。单片机具有体积小、功能强大、低功耗、应用广泛等特点。以AT公司的芯片AT89C51 单片机来实现流水灯的设计。本系统由单片机控制,I/O口接LED的负极,而LED的正极则直接与5V电源相连。通过I/O口输出的低电平点亮LED灯。因此可以通过控制单片机的I/O口的电平高低以达到控制LED,从而实现不同花样的流水灯的目的。 关键词:LED,单片机,高低电平变化

ABSTRACT The rapid development of computer technology and improving, bring us to the new era, now, the application of computer has been deep into the thousands. Single chip microcomputer is made on an integrated circuit chip computer, hereinafter referred to as single chip microcomputer. SCM has been widely used in the present society, small to People's Daily electronic products, big to aerospace aircraft, spacecraft, above has the wide application of single-chip microcomputer. SCM has small volume, powerful function, low power consumption, wide application, etc. AT the company's chip AT89C51 single-chip microcomputer to realize the water lamp design. This system controlled by single chip microcomputer, I/O ports connect the LED the cathode, and LED the anode is directly connected to 5V power supply. Through the I/O port output low level light leds. So you can single chip microcomputer control through the I/O ports to control LED, the level of high and low so as to realize the purpose of the different pattern of flowing water light. Key words:LED , MCU ,High and Low output leve

32个心形流水灯单片机课程设计

32个心形流水灯单片机课程 设计 LM*比ty Md砒a^ttitui* 站]nfoE«tig EA^IrWfl曲题目:心形流水灯 系别:计算机信息与技术系 专业:计算机科学与技术 班级:B120601 学号:B120601 学生姓名: 指导教师:郭 2015年06月 目录 论...................................... ...................... 3 一.题目分析...................................... ....... 4 二.硬件...................................... .. (4) 2.1 MCS-51系列单片机的内部结构框图 (4)

2.2系统框图......................................

2.3 电路原理图...................................... 5 .................. 三. 系统软件设计.. 7 3.1 Keil_c 软件界面图...................................... (7) 3.2 程序流程图..................................... ............................ 8 四仿真调试......... (10) 4.1 仿真采用proteus 仿真图..................................... .. (10) 4.2 导入代码图..................................... ............................ 10 五系统调试及结果分析.. (11) 5.1 软件调试...................................... . (11)

基于单片机的流水灯设计

基于单片机的流水灯设计 摘要:随着时代的变化,很多商品在确保其性能前提下也开始变得更加美观 大方。在其中LED流水灯的运用也越来越广泛下去。利用单片机加以控制促使 LED造成流水实际效果因为价格低廉,实际操作方便快捷而便备受欢迎。文中选 择用C51单片机利用C语言程序编写操纵LED小灯的闪动,利用单片机P0-P3口 输出高低电平差别促使不同类型的小灯产生不同类型的明暗度转变进而产生流水 效果。并引入for语句和分数句子进行流水灯款式的循环和自动选择。 关键字:流水灯,单片机,C语言,LED小灯 1引言 1.1设计背景 LED灯在现代社会中一直都拥有广泛应用,其便宜实惠能够在很大程度上满 足人们在各个领域里的要求,比如广告牌子、工业控制系统的操作面板等具有流 水灯的运用。在这样的新趋势状态下那就需要开专门自动控制系统,而利用单片 机制作出来的流水灯的自动控制系统因为省时省力简单实用。可以在很大程度上 达到也支持现阶段的必须。而且利用了单片机的结构有很多相近计时器、存储器 能够很容易地进行针对小灯控制。其简单实用的特点也是具备主要代表实际意义。 1.2需求分析报告 应用8051系列产品单片机进行心型流水灯的设计方案,利用单片机导出高 低电平的改变来促使小灯闪动进而实现循环系统流水,而且在尽可能美观大方前 提下开发出更多的小灯闪动款式。 2设计 2.1总体方案设计总体目标

此次课题研究选用AT89S51单片机完成LED小灯闪烁的实际效果。与此同时加入复位电路。复位后闪动款式则再次开始。 而且在确保电源电路没有问题的情形下尽可能进行更多小灯闪动款式,以保证其美观度。 2.2总体方案设计框架图 应用5V电压源根据联接USB接口立即供电系统。依据在单片机及内部结构烧提前准备好的系统控制单片机P0-P3口的高低电平转变促使小灯产生变化。并加入复位电路,当复位按键启动时,小灯状态将回应至最初的状态。 3 AT89C51单片机 单片机全称是片式微型机,也被称为单片微控制板,经过不断的技术升级和优化,现在的单片机已经将一个基本上完整的、可以实现电子计算机基本要素的元器件集成化于一块微处理芯片之中。开发工作人员在开发各种各样自动控制系统时,经常将单片机做为系统软件的关键,利用其插口来拓展和实现其它功能,可向单片机内烧写早已制订好一点的程序流程来达到系统软件自动控制系统。AT89C51型单片机是51系列产品单片机诸多款式中最中的经典的单片机之一。该单片机因其优惠的价格、靠谱性能、较好的拓展和兼容模式占据着众多的单片机销售市场,赢得了很多电器工程师的应用。 3.1单片机 最少工作系统若想推动一块片式处理芯片正常运转,必须为他们提供合适的工作工作电压,必须可以提供脉冲发生器数据信号来调节单片机内部结构每个命令的井然有序实行及使用的晶振电路,及其可以自动控制系统复位操控的复位电路三部分。它们都是完成单片机正常运转的最小标准,在单片机芯片插口上都具备专门插口来达到这个条件。 3.1.1工作标准电压

基于单片机的流水灯设计

摘要 近年来单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。我们周围有许多广告牌。通过单片机的控制,我们可以把城市的夜晚装饰的更漂亮。 通过对单片机的系统学习,对一些广告灯的设计做了一些必要的改进。同时对自己的改进也做了真实的仿真。达到了预期的目的。但是在改进的过程里也发现了自己的很多的不足。这会在以后的学习生活里不断提高。逐步完善自己。 关键字:LED,单片机,程序设计

一、单片机技术概述 1.1基本概念 单片机实际上是微型计算机的一种,自从它问世以来,人们对它不断地改进,以应用于现代化社会的各方各面。单片机体积小,价格低廉,开发较为容易,可根据需要制作成各种智能控制器以代替人工的操作,实现自动化。在我国,由于ASIC (专用集成电路)的生产还跟不上,单片机的作用更加地重要,在智能仪器仪表、工业设备过程控制、家用电器中,都可以见到它的踪迹。 单片机应用的意义不仅在于它的广阔范围及所带来的经济效益。更重要的意义在于,单片机的应用从根本上改变了控制系统传统的设计思想和设计方法。以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。以前自动控制中的PID 调节,现在可以用单片机实现具有智能化的数字计算控制、模糊控制和自适应控制。这种以软件取代硬件并能提高系统性能的控制技术称为微控技术。 单片微型计算机就是将CPU 、RAM 、ROM 、时/计数器和多种接口都集成到一块集成电路芯片上的微型计算机。(引脚图例如图 1.1) 按用途可分为通用型和专用型两大类根据单片机能够一次处理的数据的宽度,单片机可分为1位机,4位机,8 位机,16位机,32位机。(内部逻辑如图1.2) 地址总线(AB) 8051 87518031 P1.7 P1.6P1.5P1.4P1.3P1.2P1.1 P1.0P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7PSEN EA ALE RST 用户I/O 控制总线(CB) 锁存器 P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0ALE A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D7D6D5D4D3D2D1D0V CC V SS 数据总线(DB) (a) (b) P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/V PD RXD 、P3.0TXD 、P3.1INT0、P3.2INT1、P3.3T0、P3.4T1、P3.5W R 、P3.6RD 、P3.7XTAL2XTAL1 V SS V CC P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/V PP ALE/PROG PSEN P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0 805187518031 1234567891011121314151617181920 4039383736353433323130292827262524232221V CC V SS 图1.1 51系列单片机引脚图

单片机课程设计花样流水灯

郑州工业应用设计学院 课程设计说明书 题目:花样流水灯设计 姓名:李行 院(系):机电工程学院 专业班级:11级电气工程及其自动化四班 学号:1202120420 指导教师:杨坤漓宋东亚 成绩: 时间:2014 年12 月23 日至2014 年12 月29日

郑州工业应用设计学院 课程设计任务书 题目: 花样流水灯设计 专业、班级 12级电气工程及其自动化四班 学号 1202120420姓名李行 主要内容、基本要求、主要参考资料等: 主要内容: 利用单片机控制16个发光二极管模拟的彩灯按照一定的规律点亮、熄灭、闪烁。 基本要求: 1.实现发光二极管的多样化显示; 2.利用proteus软件完成设计电路和仿真; 3.掌握相关芯片和电子元件的使用方法; 4.通过此次设计将单片机软硬件结合起来对程序进行编辑、校验,锻炼实践能力和理论联系实际的能力。 主要参考资料: [1]李全利,单片机原理及接口技术[M],高等教育出版社 [2]王文杰,单片机应用技术[M],冶金工业出版社 [3]朱清慧,PROTEUS教程——电子线路设计、制版与仿真[M],清华大学出 版社 [4]单片机实验指导书,天煌教仪 [5]彭伟,单片机C语言程序设计实训100例[M],电子工业出版社 完成期限:2014.12.23-2014.12.29 指导教师签名: 课程负责人签名: 年月日

目录 绪论 (1) 1 课程设计的目的和要求 (2) 1.1 设计目的 (2) 1.2 设计要求 (2) 2 总体设计 (3) 2.1 硬件总体设计 (3) 2.1.1 设计思想 (3) 2.1.2 原件清单 (3) 2.1.3 模块分析 (3) 2.2软件总体设计 (4) 3 硬件设计 (5) 3.1 AT89C51单片机的硬件结构 (5) 3.1.1主要特性 (5) 3.1.2主要引脚功能 (6) 3.1.3外部总线结构 (7) 3.1.4振荡器特性 (8) 3.1.5芯片擦除 (8) 3.2硬件电路设计 (8) 3.2.1震荡电路 (8) 3.2.2LED电路显示 (10) 3.2.3复位电路 (10) 4软件设计 (12) 4.1主程序设计 (12) 4.2子程序设计 (13) 4.3流水灯控制码程序设计 (13) 4.4程序流程图 (14) 5使用proteus软件调试仿真说明 (15) 5.1 Proteus的介绍 (15) 5.2 Proteus的特点 (15) 5.3 Proteus的使用方法 (15) 5.4电路原理图的设计方法 (16) 5.5仿真过程 (17) 6测试数据 (19) 7附录 (20) 7.1花样流水灯程序 (20) 7.2花样流水灯总线路图 (21) 结束语 (23) 参考文献 (24) I

初学单片机花样流水灯(10种亮法)c语言程序

sfr P1=0x90; void delay(unsigned int); void main(void) { unsigned char led,i; while(1) { led=0xfe; for(i=0;i<8;i++) { P1=led; delay(500); led=(led<<1)+1; } for(i=0;i<9;i++) { P1=led; delay(500); led=led<<1; } led=0xff; for(i=8;i>0;i--) { P1=led; delay(500); led=led>>1; } for(i=0;i<5;i++) { P1=led; delay(500); led=(led<<2)+1; } for(i=0;i<5;i++) { P1=led; delay(500); led=(led>>2); } for(i=0;i<9;i++) { P1=led; delay(500); led=(led>>1)+128;

} { led=0xe7; P1=led; delay(500); led=0xc3; P1=led; delay(500); led=0x81; P1=led; delay(500); led=0x00; P1=led; delay(500); } { led=0x7e; P1=led; delay(500); led=0x3c; P1=led; delay(500); led=0x18; P1=led; delay(500); led=0x00; P1=led; delay(500); } { led=0xe7; P1=led; delay(500); led=0xdb; P1=led; delay(500); led=0xbd; P1=led; delay(500); led=0x7e; P1=led; delay(500); } {

单片机课程设计花样流水灯2

前言 随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯不断变化闪烁。LED灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。但目前市场上各式样的LED灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。因此有必要对现有的彩灯控制器进行改进。 流水灯是一串按一定的规律像流水一样连续闪亮。流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。流水灯控制可用多种方法实现,但对现代可编程控制器而言,利用移位寄存器实现最为便利。通常用左移寄存器实现灯的单方向移动;用双向移位寄存器实现灯的双向移动。本案例利用价格低廉的AT89C51系列单片机控制基色LED灯泡从而实现丰富的变化。 1、课程设计的目的和要求 1.1 设计目的 近年来随着科技的发展,单片机的应用正在不断走向深入,同时带动传统控制检测日新月异更新,在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象点的软件结合,加以完善。流水灯,可以更简单、方便的使用。通过本课程设计使学生进一步巩固单片机原理及应用的基本概念、基本理论,分析问题的基本方法,增强系统地运用已学的理论知识解决实际问题的能力和查阅资料的能力。培养一定的自学能力和独立分析问题、解决问题的能力,能通过独立思考、查阅工具书、参考文献,寻找解决方案。

花样流水灯设计

一、原理图设计的目的: 利用AT89C51,通过控制按键来实现六种流水灯把戏的转换,实现把戏流水灯的设计,同时通过外部中断0,来控制流水灯的速度。 二、各器件的功能作用: 1、AT89C51 AT89C51有40个引脚,每个引脚都有其功能。本次设计中,利用P0口当输出口,输出低电平来驱动发光二极管点亮。利用P1.0~P1.5六个引脚,通过按键接地,然后采用扫描的方式,判断哪个引脚所接按键按下,从而来控制六种流水灯的把戏。利用P3.2引脚外接按键接地,通过控制按键来减慢流水灯的速度,利用P3.3引脚外接按键接地,通过控制按键来提高流水灯的速度。利用P3.7输出低电平,导通三极管Q1,从而给八个发光二极管的阳极加高电平,一旦P0口输出低电平就可以驱动发光二极管。 2、八个发光二极管: 通过八个发光二极管来实现流水灯的变化,用低电平驱动发光二级管亮,同时,用高电平使其熄灭 。 3、按键 通过P1.0-P1.5外接的按键来实现流水灯各种把戏的变化,当按键按下时,驱动一种流水灯把戏的闪烁。同时,利用按键来提供外部中断,当按下按键时,产生一个外部中断,向CPU申请中断,CPU响应其中断,因此可以用按键来实现提高流水灯闪烁的速度。

通过在RST口处加上一个按钮手动复位电路,利用复位按钮可以使运行中的流水灯复位到初始的状态。 4、排阻 因为P0口作为输出口时需要外接上拉电阻 三、设计原理图: 四、程序如下: #include //51系列单片机定义文件 #define uchar unsigned char //定义无符号字符 #define uint unsigned int //定义无符号整数 void delay(uint);//声明延时函数 void main(void) { uint i; uchar temp; TCON=0*05; IE=0*85; P*1=1; P*0=0; while(1) { temp=0*01; for(i=0;i<8;i++) //8个流水灯逐个闪动 { P0=temp; delay(100);//调用延时函数 temp<<=1; } temp=0*80; for(i=0;i<8;i++) //8个流水灯反向逐个闪动 { P0=temp; delay(150);//调用延时函数 temp>>=1; } temp=0*FE; for(i=0;i<8;i++) //8个流水灯依次全部点亮 { P0=temp;

单片机花样流水灯设计实验报告

单片机花样流水灯设计实验报告 * * 大学 物理学院 单片机花样流水灯设计实验 课题: 花样流水灯设计班级: 物理 *** 姓名: *** 学号: 【摘要】 当今时代的智能控制电子技术,给人们的生活带来了方便和舒适,而每到晚上五颜六色的霓虹灯则把我们的城市点缀得格外迷人,为人们生活增添了不少色彩。 制作流水灯的方法有很多种,有传统的分立元件,由数字逻辑电路构成的控制系统和单片机智能控制系统等。本设计介绍一种简单实用的单片机花样流水灯设计与制作,采用基于MS-51的单片机AT89C51和发光二极管、晶振、复位、电源等电路以及必要的软件组成的以AT89C51为核心,辅以简单的数码管等设备和必要的电路,设计了一款简易的流水灯电路板,并编写简单的程序,使其能够自动工作。 本设计用AT89C51单片机为核心自制一款简易的花样流水灯,并介绍了其软件编程仿真及电路焊接实现,在实践中体验单片机的自动控制功能。该设计具有实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。 关键字:AT89C51 单片机流水灯数码管 2 【概述】 1. 单片机及其发展概况 单片机又称为单片微计算机,其特点是将微型计算机的基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定时/计数器及终端系统等)全部集

成在一个半导体芯片上。单片机作为一种高集成度微型计算机,已经广泛应用于工业自动化控制、智能仪器仪表、通信设备、汽车电子与航空航天电子系统、智能家居电器等各个领域。 2. Protues仿真软件简介 Protues以其数量众多的元件数据库、标准化的仿真仪器、直观的捕获界面、简洁明了的操作、强大的分析测试、可信的测试结果, 为电子工程设计节约研发时间,节省了工程设计费用。利用Protues软件设计一款通过数码管显示计数时间的流水灯电路及Keil C软件编程后,再将两者关联则可以简单快速的进行仿真。 【实验设计目标】 设计要求以发光二极管作为发光器件,用单片机自动控制,对8个LED灯设计至少3种流水灯显示方式,每隔20秒变换一次显示花样,计时通过一个二位七段数码管显示。 3 【设计方案】 1.设计原理 AT89C51单片机内部包括微处理器、存储器(存放程序指令或数据的 ROM、RAM等)、输入/输出口(I/O口)及其他功能部件如定时/计数器、中断系统等。它们通过地址总线、数据总线和控制总线连接起来。 要实现流水灯功能,只要将发光二极管Led1,Led8依次点亮、熄灭,8只LED 灯便会一亮一暗的做流水灯状,设计花样时可依此类推。此外还应注意的是人眼的视觉暂留效应以及单片机执行每条指令的时间很短,所以控制二极管亮/灭的时候应延时一段时间,否则将无法以肉眼观察到“流水”等花样效果。 2.电路原理图 3.器件配置清单 4

2023年单片机花样流水灯设计实验报告

**大学 物理学院 单片机把戏流水灯设计试验 课题:把戏流水灯设计 班级: 物理*** 姓名: *** 学号: ……………

【摘要】 当今时代旳智能控制电子技术,给人们旳生活带来了以便和舒适,而每到晚上五颜六色旳霓虹灯则把我们旳都市点缀得格外迷人,为人们生活增添了不少色彩。 制作流水灯旳措施有诸多种,有老式旳分立元件,由数字逻辑电路构成旳控制系统和单片机智能控制系统等。本设计简介一种简朴实用旳单片机把戏流水灯设计与制作,采用基于MS-51旳单片机AT89C51和发光二极管、晶振、复位、电源等电路以及必要旳软件构成旳以AT89C51为关键,辅以简朴旳数码管等设备和必要旳电路,设计了一款简易旳流水灯电路板,并编写简朴旳程序,使其可以自动工作。 本设计用AT89C51单片机为关键自制一款简易旳把戏流水灯,并简介了其软件编程仿真及电路焊接实现,在实践中体验单片机旳自动控制功能。该设计具有实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。 关键字:AT89C51 单片机流水灯数码管

【概述】 1.单片机及其发展概况 单片机又称为单片微计算机,其特点是将微型计算机旳基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定期/计数器及终端系统等)所有集成在一种半导体芯片上。单片机作为一种高集成度微型计算机,已经广泛应用于工业自动化控制、智能仪器仪表、通信设备、汽车电子与航空航天电子系统、智能家居电器等各个领域。 2. Protues仿真软件简介 Protues以其数量众多旳元件数据库、原则化旳仿真仪器、直观旳捕捉界面、简洁明了旳操作、强大旳分析测试、可信旳测试成果, 为电子工程设计节省研发时间,节省了工程设计费用。运用Protues软件设计一款通过数码管显示计数时间旳流水灯电路及Keil C软件编程后,再将两者关联则可以简朴迅速旳进行仿真。 【试验设计目旳】 设计规定以发光二极管作为发光器件,用单片机自动控制,对8个LE D灯设计至少3种流水灯显示方式,每隔20秒变换一次显示把戏,计时通过一种二位七段数码管显示。

基于单片机的花样流水灯设计

题目基于单片机的花样流水灯 姓名王志远学号 201103320275 所在系电子电气工程学院专业年级 P11电气自动化五班指导教师李霞 二〇一二年十二月二十八日

摘要 本文是基于51单片机的花样流水灯的项目设计,在项目程序设计中运用了单片机AT89C51芯片,在程序检测与试验中实现了计数清零(CLR)暂停(LJMP)延时(DELAY)进而实现流水灯循环点亮,控制8个发光二极管的流水亮灭。最后通过实验体现单片机在现实生活中的作用。

目录 摘要 (2) 目录 (3) 一.引言 (4) 二、设计目的 (5) 三、设计要求 (5) 四.硬件组成 (5) 五.软件编程 (7) 5.1流程框图 (7) 5.2 花样流水灯主程序 (8) 六、总结与体会 (10) 七、参考文献 (11)

一.引言 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。随着电子技术和微机计算机的迅速发展,单片机的档次不断提高,其应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到了广泛的应用,成为现代电子系统中最重要的智能化的核心部件。 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。 单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。 当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。学习单片机的最有效方法就是理论与实践并重,本文笔者用AT89C51单片机自制了一款简易的流水灯,重点介绍了其软件编程方法,以期给单片机初学者以启发更快地成为单片机领域的优秀人才。

单片机41钟花样爱心流水灯

#include #define uint unsigned int #define uchar unsigned char uchar code table0[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//LED从低位往高位移 uchar code table1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//LED从高位往低位移 uchar code table2[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00};//LED从1个亮到8个都点亮(从低位往高位) uchar code table3[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};//LED从1个亮到8个都点亮(从高位往低位) uchar code table4[]={0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};//LED从8个全亮到一个都不亮(从低位往高位) uchar code table5[]={0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};//LED从8个全亮到一个都不亮(从高位往低位) uchar code table6[]={0xfe,0xfc,0xfa,0xf6,0xee,0xde,0xbe,0x7e};//LED从低位往高位移(最低位始终为0) uchar code table7[]={0x7f,0x3f,0x5f,0x6f,0x77,0x7b,0x7d,0x7e};//LED从高位往低位移(最高位始终为0) uchar i,j; //定义循环变量 uint tt=70; //定义时间指数 void delay(uint time) //延时函数 { uint x,y; for(x=time;x>0;x--) for(y=110;y>0;y--); } void disp0() //状态0 所有LED闪烁3次 { for(i=0;i<3;i++) { P0=0x00; P2=0x00; P3=0x00; P1=0x00; delay(300); P0=0xff; P2=0xff; P3=0xff; P1=0xff; delay(300); } } void disp1() //状态1 LED顺时针转一圈 { for(i=0;i<8;i++) { P2=table1[i]; delay(100); }

花样流水灯课程设计报告

课程论文 把戏流水灯的设计 课程单片机技术及系统设计 学生 学号 所在学院 所在班级 任课教师 提交时间2021年5月25日至2021年5月30日

目录 一.前言 1.1 设计概述................................................................................ (2) 1.2设计主要功能 (2) 二.设计过程 2.1原理图中所使用的元器件功能 (3) 2.2程序在功能实现过程中的作用 (5) 三体会 3.1课程设计体会 (5) 四. 文献 4.1参考文献 (6)

五. 附录 5.1流水灯电路图 (7) 5.2流水灯程序 (7) 摘要:当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、本钱低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。 关键词:单片机控制系统流水灯 一.前言 1.1设计概述 整个系统工作由软件程序控制运行,根据需要,可以上电后系统经过初始化,进入用户设定模式状态。于AT89C51单片机的彩灯控制方案,实现对LED灯的控制。本方案以AT89C52单片机作为主控核心,与驱动等模块组成核心主控制模块。在主控模块上设有晶振电路和8个LED灯,根据需要编写假设干种亮灯模式,根据各种亮灯时间的不同需要,在不同时刻输出灯亮或灯灭的控制信号

1.2设计主要功能 通过发光二极管显示不同的把戏,并且可以通过按键来控制流水灯的速度通过学习单片机工作原理和各种工作方式及各管脚的功能,想通过P3 口的俩管脚P3.2和P3.3第二功能,即外部中断来使CPU 响应,到达控制流水灯的目的 二.设计过程 2.1原理图中所使用的元器件功能 2.1.1时钟电路单片机部具有一个高增益反相放大器,用于构成振荡器。通常在引脚XTALl和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,构造图2 中X1、C1、C2。可以根据情况选择6MHz、12MHz或24MHz等频率的石英晶体,补偿电容通常选择30nF左右的瓷片电容 2.1.2 复位电路单片机小系统常采用上电自动复位和手动按键

基于51单片机的花样流水灯设计

基于51单片机的花样流水灯设计

目录 第1章引言 (1) 1.1 研究背景及意义 (1) 1.2 国内外研究现状以及本系统的重点问题 (1) 1.3 本文章节安排 (2) 第2章系统设计方案论证 (3) 2.1 控制器模块方案论证 (3) 2.2 键盘模块方案 (4) 2.3 电源模块方案 (4) 第3章系统硬件设计方案 (5) 3.1 系统设计框图 (5) 3.2 硬件电路设计 (5) 3.2.1 电源电路 (5) 3.2.2 单片机89C52最小系统 (6) 3.2.3 按键电路 (13) 3.3.4 LED灯电路 (13) 第4章程序设计及软件仿真 (15) 4.1 软件设计框图 (15) 4.2 软件开发平台选择 (15) 4.3 软件系统功能模块 (16) 4.3.1 初始化模块 (16) 4.3.2 延时函数 (17) 4.3.3 定时器控制模块 (17) 4.3.4 键盘扫描模式 (17) 4.3.5 LED灯输出控制模块 (18) 4.4 程序调试仿真 (19) 4.4.1 仿真平台介绍 (19) 4.4.2 仿真测试 (19) 第5章硬件调试 (21) 5.1 硬件设计 (21)

5.2 硬件调试 (21) 5.2.1 下载功能调试 (21) 5.2.2 LED电路测试 (21) 5.2.3 模式选择功能调试 (22) 5.2.4 速度加减功能调试 (22) 5.2.5 复位电路调试 (22) 5.2.6 稳定性测试 (22) 总结 (23) 致谢 (25) 参考文献 (26) 附录 (28) 附录一:原理图 (28) 附录二:硬件实物 (29) 附录三:程序代码 (30)

单片机控制的花样彩灯设计

目录 1引言 (4) 2 设计原理 (5) 2.1MCS51 (5) 2.2 LED (6) 2.3中断指令 (8) 2.4硬件接原理图 (9) 3程序流程图 (11) 3.1主流程图 (11) 3.2流水灯子流程图 (12) 3.3中断程序流程图 (13) 4汇编程序 (14) 4.1主程序 (14) 4.2一秒钟定时程序 (17) 5小结 (18) 参考文献 (19)

1.1引言 随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。 LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰已经成为一种时尚。但目前市场上各式样的 LED 彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。因此有必要对现有的彩灯控制器进行改进。 课程设计是学完一门课后应用本课知识及以前的知识积累而进行的综合性、开放性的训练,是培养学生工程意识和创新能力的重要环节。进一步巩固和加深“单片机”课程的基本知识,了解单片机设计知识在实际中的应用。综合运用“单片机”课程和先修课程的理论及生产实际知识去分析和解决电路设计问题,进行单片机电路设计的训练。学习单片机设计电路的一般方法,了解和掌握单片机电路的设计过程和进行方式,培养正确的设计思想和分析问题、解决问题的能力,特别是总体电路设计能力。通过计算和绘图,学会运用标准、规范和查阅有关技术资料等,培养单片机电路设计的基本技能。 该程序示例了单片机键盘控制p1口流水灯花样的方法;具体表现为:p3.2 3.2 3.4 3.5四个小本文提出了一种基于AT89S51单片机的彩灯控制方案,实现对LED彩灯的控制。按键,分别实现了四个控制。通过这次实验,我们也了解了团队合作的重要性,集体的力量是伟大的,一个人如何融入一个团队是是一个重要问题,讲究合作才能取得最后的成功! 1

单片机实验报告花样流水灯

电子工艺学 考试作品报告 作品名称:花样流水灯姓名: 专业班级:电信1105 学号: 中南大学物理与电子学院

目录 第一章系统整体概述…………………………………………………………第二章硬件设计………………………………………………………………第三章软件设计………………………………………………………………第四章调试与分析……………………………………………………………第五章制作感受………………………………………………………………

【摘要】 当今时代的智能控制电子技术,给人们的生活带来了方便和舒适,而每到晚上五颜六色的霓虹灯则把我们的城市点缀得格外迷人,为人们生活增添了不少色彩。制作流水灯的方法有很多种,有传统的分立元件,由数字逻辑电路构成的控制系统和单片机智能控制系统等。本设计介绍一种简单实用的单片机花样流水灯设计与制作,采用基于单片机AT89C52和发光二极管、晶振、复位、电源等电路以及必要的软件组成的以AT89C52为核心,辅以简单的数码管等设备和必要的电路,设计了一款简易的流水灯电路板,并编写简单的程序,使其能够自动工作。本设计用AT89C52单片机为核心自制一款简易的花样流水灯,并介绍了其软件编程仿真及电路焊接实现,在实践中体验单片机的自动控制功能。该设计具有实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。关键字:AT89C52 单片机流水灯数码管 AT89C52单片机概述 AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程。

相关主题
文本预览
相关文档 最新文档