彩灯控制器.docx

上传人:b****5 文档编号:7813888 上传时间:2023-01-26 格式:DOCX 页数:14 大小:293.65KB
下载 相关 举报
彩灯控制器.docx_第1页
第1页 / 共14页
彩灯控制器.docx_第2页
第2页 / 共14页
彩灯控制器.docx_第3页
第3页 / 共14页
彩灯控制器.docx_第4页
第4页 / 共14页
彩灯控制器.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

彩灯控制器.docx

《彩灯控制器.docx》由会员分享,可在线阅读,更多相关《彩灯控制器.docx(14页珍藏版)》请在冰豆网上搜索。

彩灯控制器.docx

彩灯控制器

摘要

彩灯控制器就是控制八只LED灯,通过点亮、熄灭不同顺序的灯实现彩灯的变换,按照要求设计八只LED灯的显示顺序,LED灯的显示时间可调,分别可调为0.25S,0.5S,1S,2S。

设计时先观察分析要求的八只LED的显示顺序,然后根据观察和分析得到的规律设计出总体框架,进行总体设计后划分子系统,定义个子系统的功能,详细设计,然后设计各子系统的内部,并编写程序用单片机进行控制,最后进行电路的调试

本设计从经济实用的角度出发,采用美国Atmel公司的单片机AT89S52作为主控芯片与数据存储器单元,结合外围的开关、LED显示等电路,用C语言编写主控芯片的控制程序,设计了一款可调频率的彩灯控制器。

经实验证明,该彩灯控制器具有设计方法合理,简单易行,成本低,安全实用等特点,具有推广价值。

关键词:

单片机;彩灯控制器;选频;

 

Abstract:

LightscontrolleriscontroleightonlyLEDlamp,throughthelight,putoutadifferentordertorealizethetransformationofthelamplights,accordingtothedesignrequirementforeightonlyLEDlights,LEDlightsdisplaysequencedisplaytimecanbeadjusted,whichcanbeadjustedto0.25S,0.5S,1S,2S.

WhenthedesignrequirementsofthefirstobservationanalysiseightonlyLEDdisplayorder,andthenbasedontheobservationandanalysisofthelawofgettodesigntheoverallframe,carriesontheoveralldesignclassificationsubsystem,definitionisthefunctionofthesystem,detaileddesign,andthendesignthesubsystemsoftheinternal,andwriteaprogramusingsingle-chipmicrocomputercontrol,thecircuitdebugging

ThisdesignfromtheeconomicandpracticalAngle,theAmericanAtmelcompanyasthemaincontrolchipAT89S52singlechipmicrocomputeranddatastorageunit,combinedwithperipheralswitch,LEDdisplaycircuit,writteninCmastercontrolchipcontrolprogram,designakindofadjustablefrequencylightscontroller.

Thetestshowsthatthelightscontrollerdesignmethodisreasonable,simple,lowcost,safeandpracticalcharacteristics,hasthevalueofpopularization.

 

Keywords:

singlechipmicrocomputer;lanterncontroller;frequency

 

目录

引言…………………………………………………………………1

1设计方案……………………………………………………………1

1.1彩灯控制器的设计分析…………………………………………………………1

1.2设计要求…………………………………………………………………………2

2硬件电路设计………………………………………………………2

2.1单片机AT89S52简介……………………………………………………………2

2.1.1ATS89S52………………………………………………………………………2

2.1.2ATS89S52主要特性……………………………………………………………2

2.2整体硬件原理图…………………………………………………………………4

2.3设计原理…………………………………………………………………………4

2.3.1芯片引脚说明…………………………………………………………………………4

2.3.2LED彩灯………………………………………………………………………6

3程序设计…………………………………………………………6

3.1程序设计内容……………………………………………………………………6

3.2C语言源程序……………………………………………………………………6

4心得体会…………………………………………………………9

谢辞…………………………………………………………………10

参考文献……………………………………………………………11

附录…………………………………………………………………12

 

引言

由于现代身后经济发展迅猛,城市发展尤为突出,各种灯光广告和装饰的需求日益增多,同事电子技术也在飞速发展,各种电子元件的价格也在不断下降,性能在提高,体积在减小,这使得彩灯的装饰应用更加广泛。

作为电子信息工程专业的学生,我们都应该能够运用学到的数电和单片机只是,去解决和分析一些逻辑电路的问题,继而学会设计具有一定逻辑功能的逻辑器件,做到学以致用。

这次课设给我们动手操作能力得到较好的锻炼。

我设计的彩灯控制器,严格按照要求,具有可重复循环,显示时间间隔可调等功能。

1设计方案

1.1彩灯控制器的设计分析

随着人们生活水平的提高,大家的生活环境也不断改善和美化。

忙碌的一天生活过去,人们往往会去娱乐场所放松一下。

节日的到来,城市中张灯结彩,举办节目来庆祝节日的到来。

LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制间的等特点而得到了广泛的应用,用彩灯来装饰接到和城市建筑物已经成为一种时尚。

但目前市场上各式的LED彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一段制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间断的需要来调节亮灯时间。

因此,在原有的基础上改进,设计了这款彩灯控制器,可以通过不同的按键来控制彩灯的闪烁频率。

避免了目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现,电路结果复杂、功能单一的缺点。

变换、闪烁、跳跃式的彩灯为促进销售,为营造欢乐、多姿多彩的生活正越来越受到人们的重视与欢迎。

1.2设计要求

要求:

(1)有八只LED,L0……L7

(2)显示顺序如下表,其中在L0……L7中,1表示灭,0表示亮

(3)显示间隔为0.25S,0.5S,1S,2S可调。

 

序号

L0

L1

L2

L3

L4

L5

L6

L7

0

1

1

1

1

1

1

1

0

1

0

1

1

1

1

1

1

1

2

1

0

1

1

1

1

1

1

3

1

1

0

1

1

1

1

1

4

1

1

1

0

1

1

1

1

5

1

1

1

1

0

1

1

1

6

1

1

1

1

1

0

1

1

7

1

1

1

1

1

1

0

1

8

1

1

1

1

1

1

1

0

9

1

1

1

1

1

1

1

1

10

0

1

1

1

1

1

1

1

11

0

0

1

1

1

1

1

1

12

0

0

0

1

1

1

1

1

13

0

0

0

0

1

1

1

1

14

0

0

0

0

0

1

1

1

15

0

0

0

0

0

0

1

1

16

0

0

0

0

0

0

0

1

17

0

0

0

0

0

0

0

0

18

1

0

0

0

0

0

0

0

19

1

1

0

0

0

0

0

0

20

1

1

1

0

0

0

0

0

21

1

1

1

1

0

0

0

0

22

1

1

1

1

1

0

0

0

23

1

1

1

1

1

1

0

0

24

1

1

1

1

1

1

1

0

25

1

0

0

0

0

0

0

0

26

0

1

0

0

0

0

0

0

27

0

0

1

0

0

0

0

0

28

0

0

0

1

0

0

0

0

29

0

0

0

0

1

0

0

0

30

0

0

0

0

0

1

0

0

31

0

0

0

0

0

0

1

0

32

0

0

0

0

0

0

0

1

 

2.硬件电路设计

2.1单片机AT89S52简介

2.1.1AT89S52

AT89S52是一种低功耗,高性能CMOS8位微控制器,具有8K在系统可编程存储器。

器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准80C51指令系统及引脚。

它集Flash程序存储器,既可在线编程(ISP)也可用传统方法进行编程及通8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。

2.1.2AT89S52主要特性

1.MCS-51兼容;

2.8K字节可编程闪烁存储器;

3.1000写/擦周期;

4.全静态工作:

0Hz-24Hz;

5.三级程序存储器锁定128*8位;

6.内部RAM32可编程I/O线;

7.三个;16位定时器/计数器;

8.6个中断源;

9.全双工UART穿行通道;

10.低功耗空闲和掉电模式;

11.掉电后中断可唤醒;

12.看门狗定时器;

13.双数据指针;

14.掉电标识符。

 

图1单片机

2.2整体硬件原理图

硬件部分包括控制频率部分,LED彩灯部分以及用单片机编程用到的的连接口部分。

 

图2硬件原理图

2.3设计原理

2.3.1芯片引脚说明

AT89S52是一种低功耗、高性能CMOS8位微处理器,具有8K在系统可编程Flash存储器。

使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。

片上Flash语序程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵魂、超有效的解决方案。

AT89S52具有以下标准功能:

8K字节8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,AT89S52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保护,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

P0口:

P0口是一个8位漏极开路的双向I/O口。

作为输出口,每位能驱动8个TTL逻辑电平。

对P0端口写“1”时,引脚用作高阻抗输入。

当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。

在这种模式下,P0不具有内部上拉电阻。

在flash编程时,P0口也用来解释指令字节;在程序校验时,输出指令字节。

程序校验时,需要外部上拉电阻。

P1口:

P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。

对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。

在flash编程和校验时,P1口接收低8位地址字节。

P2口:

P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能去掉4个TTL逻辑电平。

对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口松弛高八位地址。

在这种应用中,P2口使用很强的内部上拉发送1.在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

P3口:

P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。

对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。

在flash编程和校验时,P3口也接收一些控制信号。

RST:

复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

ALE/PROG:

当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。

要注意的是:

每当访问外部数据存储器时将跳过一个ALE脉冲。

对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。

此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

PSEN:

程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

EA/VPP:

外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。

FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

XTAL1:

振荡器反相放大器和内部时钟发生电路的输入端。

XTAL2:

振荡器反相放大器的输出端。

2.3.2LED彩灯

LED有共阴极和共阳极两种。

二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。

用8只LED构成一排彩灯,每只LED串联一个限流电阻,用作保护电路。

 

3.程序设计

3.1程序设计内容

(1).用数组设定好33种不同的状态;

(2).调用延时函数,控制LED灯的闪烁频率。

3.2C语言源程序(流程图见附录。

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitK1=P3^3;

sbitK2=P3^4;

sbitK3=P3^5;

sbitK4=P3^6;

ucharcodetable[]={0xfe,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,

0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00,

0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0x80,0x40,

0x20,0x10,0x08,0x04,0x02,0x01

};/*定义彩灯的33种状态*/

voiddelaytms(uintt)/*延时t毫秒*/

{

uinti;

ucharj;

for(i=0;i

for(j=0;j<110;j++)/*延时一毫秒*/

{

;

}

}

voidmain()

{

uintk;

while

(1)

{

P0=0x00;

k=0;

if(K1==0)

{

delaytms(5);

if(K1==0)

{

while(!

K1);

while(k!

=33)

{

P0=table[k];

delaytms(250);

k++;

}

}

}

if(K2==0)

{

delaytms(5);

if(K2==0)

{

while(!

K2);

while(k!

=33)

{

P0=table[k];

delaytms(500);

k++;

}

}

}

if(K3==0)

{

delaytms(5);

if(K3==0)

{

while(!

K3);

while(k!

=33)

{

P0=table[k];

delaytms(1000);

k++;

}

}

}

if(K4==0)

{

delaytms(5);

if(K4==0)

{

while(!

K4);

while(k!

=33)

{

P0=table[k];

delaytms(2000);

k++;

}

}

}

}

}

 

4.心得体会

从开始进行设计密码锁到完成实现彩灯控制器功能,我找了很多资料,并应用了protel99se软件进行画图和仿真,并运用单片机知识进行编程以完成设计要求的功能。

我已经尽了自己的最大努力,也从中学到了很多知识,获益匪浅。

谢辞

 

参考文献

[1]刘文涛.MCS-51单片机培训教程(C51)版.电子工业出版社,2005.8.

[2]王宜怀.单片机原理及其嵌入式应用教程.北京希望电子出版社,2002.8.

[3]邵贝贝.单片机嵌入式应用的在线开发方法.清华大学出版社,2006.3.

[4]龚运新.单片机C语言开发技术.清华大学出版社,2006.10.

[5]JeanJ.Labrosse著.嵌入式系统构件.袁勤勇等译.北京:

机械工业出版社,2002.

 

附录

PCB图:

 

C语言程序流程图:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1