标签:照明光源本文引用地址:http://www.eepw.com.cn/article/200060.htm

1 引言

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

本文提出了一种基于AT89S51单片机的彩灯控制方案,实现对LED彩灯的控制。

2 设计原理

2.1 MCS51

引脚说明

MCS单片机都采用40引脚的双列直插封装方式。图1为引脚排列图, 40条引脚说明如下:

(1)主电源引脚Vss和Vcc

① Vss接地

② Vcc正常操作时为+5伏电源

(2)外接晶振引脚XTAL1和XTAL2

① XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地。

② XTAL2内部振荡电路反相放大器的输出端。是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。

图1 8051引脚排列图

(3)控制或与其它电源复用引脚RST/VPD,ALE/PROG,EA和/Vpp

① RST/VPD 当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位

在Vcc掉电期间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。

② ALE/PROG正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。 对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉P冲(PROG功能)

③PSEN外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个机器周期内两次有效。同样可以驱动八LSTTL输入。

④ EA/Vpp 、EA/Vpp为内部程序存储器和外部程序存储器选择端。当EA/Vpp为高电平时,访问内部程序存储器,当/Vpp 为低电平时,则访问外部程序存储器。

对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。

(4)输入/输出引脚P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7。

① P0口(P0.0 - P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。

② P1口(P1.0 - P1.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载……

③ P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。

④ P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。

2.2 LED显示数码管

LED有共阴极和共阳极两种。如图所示。二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)a~g,另一个小数点为dp发光二极管。当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被损坏,需外加限流电。

LED数码管结构原理图

AT89C2051芯片的20个引脚功能为:

VCC 电源电压。

GND 接地。

RST 复位输入。当RST变为高电平并保持2个机器周期时,所有I/O引脚复位至“1”。

XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2 来自反向振荡放大器的输出。

P1口 8位双向I/O口。引脚P1.2~P1.7提供内部上拉,当作为输入并被外部下拉为低电平时,它们将输出电流,这是因内部上拉的缘故。P1.0和P1.1需要外部上拉,可用作片内精确模拟比较器的正向输入(AIN0)和反向输入(AIN1),P1口输出缓冲器能接收20mA电流,并能直接驱动LED显示器;P1口引脚写入“1” 后,可用作输入。在闪速编程与编程校验期间,P1口也可接收编码数据。

P3口 引脚P3.0~P3.5与P3.7为7个带内部上拉的双向I/0引脚。P3.6在内部已与片内比较器输出相连,不能作为通用I/O引脚访问。P3口的输出缓冲器能接收20mA的灌电流;P3口写入“1”后,内部上拉,可用输入。P3口也可用作特殊功能口。

2.3 中断指令

在CPU和外设交换信息时,存在着快速CPU和慢速外设间的矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常采用中断技术。

CPU和外设并行工作,当外设数据准备好( 或有某种突发事件发生)时向CPU提出请求,CPU暂停正在执行的程序转而为该外设服务(或处 理紧急事件),处理完毕再回到原断点继续执行原程序。

中断优先级:当有多个中断源同时 向CPU申请中断时,CPU优先响应最需紧急处理的中断请求,处理完毕再响应优先级别较低的 ,这种预先安排的响应次序。

中断的嵌套:在中断系统中,高优先级的 中断请求能中断正在进行的较低级的中断源处理,

(1)中断技术是实时控制中的常用技术,51系列单片机有三个内部中断,二个外部中断。所谓 外部中断就是在外部引脚上有产生中断所需要的信号。

每个中断源有固定的中断服务程序的入口地址(称矢量地址或向量地址)。当CPU响应中断以 后单片机内部硬件保证它能自动的跳转到该地址。因此,此地址是应该熟记的,在汇编程序 中,中断服务程序应存放在正确的向量地址内。

(或存放一条转移指令);而在C语言中是靠Interrupt n的关键字n自动设置的。

(2)单片机的中断是靠内部的寄存器管理的,这就是中断允许寄存器IE,中断优先权寄存器IP ,必须在CPU开中断即开全局中断开关EA,开各中断源的中断开关,CPU才能响应该中断源的 中断请求,其中缺一不可。

(3)从程序表面看来,主程序和中断服务程序好象是没有关连的,只有掌握中断响应的过程, 才能理解中断的发生和返回,看得懂中断程序,并能编写高质量中断程序。

表2.1 常用中断

符号名 称中 断 引 起 原 因中断服务程序入口

INT0外部中断0P3.2引脚的低电平或下降沿信号0003H

INT1外部中断1

P3.3引脚的低电平或下降沿信号0013H

T0定时器0中断定时计数器0计数回零溢出000BH

T1定时器1中断定时计数器1计数回零溢出001BH

T2定时器2中断定时计数器2中断(TF2或T2EX信号)002BH

TI/RI串行口中断串行通信完成一帧数据发送或接收引起中断0023H

3 硬件原理图

晶振(12MHz)定时1秒,对于12MHz的晶振而言,其时钟周期T=1/f=1/12us,而89C51的一个机器周期包括12个时钟周期,所以一个机器周期为1us,对于T0而言,使之工作于16-bit,最大计时为65536*1=65536us,需要多次定时才能实现一秒定时。

4 软件设计

4.1 流程图

音乐彩灯控制器C语言程序,基于单片机的LED彩灯控制器相关推荐

  1. 有温度传感器的风机控制系统C语言,毕业论文--基于单片机的工业风机控制器设计与实现.doc...

    大连东软信息学院 本科毕业设计(论文) 论文题目 论文题目:基于单片机的工业风机控制器设计与实现 系 所: 电子工程系 专 业: 电子信息工程(嵌入式系统工程方向) 学生姓名: 学生学号: 指导教师: ...

  2. 单片机节日彩灯实训报告_基于单片机的节日彩灯设计论文课程设计.doc

    基于单片机的节日彩灯设计论文课程设计.doc 辽 宁 工 业 大 学 单片机原理及接口技术课程设计(论文) 题目: 基于单片机的节日彩灯设计 院(系): 专业班级: 学 号: 学生姓名: 指导教师: ...

  3. 单片机c语言彩灯依次点亮,基于单片机的LED彩灯控制器

    1 引言 随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯. led 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰已经成为一种时尚.但目前市场上 ...

  4. 单片机按键控制数码管c语言程序,基于单片机的按键控制LED数码管共阴极动态显示电路设计报告(毕业论文).doc...

    基于单片机的按键控制LED数码管共阴极动态显示电路设计报告(毕业论文) 物理与电子工程学院2014级课程设计 PAGE IV 物理与电子工程学院 <单片机原理与接口技术> 课程设计报告书 ...

  5. 基于51单片机的数字电压表c语言程序,基于单片机的数字电压表(全文完整版)...

    <基于单片机的数字电压表.doc>由会员分享,可免费在线阅读全文,更多与<基于单片机的数字电压表>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索. 1 ...

  6. 利用4位led显示本机秒表时间的单片机c语言程序,基于单片机的一个2位的led数码显示作为_秒表_设计.doc...

    基于单片机的一个2位的led数码显示作为_秒表_设计 PAGE 1 PAGE 29 工程技术学院 课程设计 题 目:用单片机AT89C51设计一个2位的LED数码显示作为"秒表" ...

  7. 智能窗帘传感器c语言程序,基于单片机的智能窗帘控制系统设计(附程序代码)

    基于单片机的智能窗帘控制系统设计(附程序代码)(论文18000字,程序代码) 摘要:二十一世纪初以来,科学技术不断发展,智能家居涌现于各家各户,人们越来越重视生活质量的提高.但是传统的手动开合窗帘耗时 ...

  8. 简易电子琴c语言程序,基于单片机的简易电子琴设计(C语言编程).docx

    单片机课程设计报告 基于单片机的简易电子琴设计 摘 要 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器.它在现代音乐 扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经 ...

  9. 遥控窗帘c语言程序,基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文(设计).doc...

    基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文(设计) 摘 要 随着电子技术和自动化技术的发展,人们对生活质量的要求越来越高.家用电器产品也在不断的更新换代.从始初的晶体管.到电子管 ...

  10. 遥控窗帘c语言程序,基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文.doc...

    基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文 摘 要 随着电子技术和自动化技术的发展,人们对生活质量的要求越来越高.家用电器产品也在不断的更新换代.从始初的晶体管.到电子管:由模拟 ...

最新文章

  1. 直击5G的机遇与挑战,全新商业模式、规模化经济效益、最新技术进展…全解读...
  2. Java XML解析器
  3. python测试脚本项目全程教程_《手把手教你》系列练习篇之5-python+ selenium自动化测试(详细教程)...
  4. 【position也可以很复杂】当弹出层遇上了鼠标定位(下)
  5. Net设计模式实例之备忘录模式(Memento Pattern)
  6. 在Java语言里 ==和equals的区别
  7. PrimeFaces Extensions中的全新JSF组件
  8. 实例25:python
  9. linux登录成功后提示信息
  10. snownlp文本分词、情感分析、文本相似度与摘要生成
  11. 阿里云-设备影子概览
  12. labview的IMAQ中sanp和grab有什么不同
  13. 关于 gzip, deflate, zlib, LZ77
  14. java怎么使用mfc,调用mfc方法
  15. react如何请求amr文件流接口-优化版
  16. 一、运维概述与操作系统概述
  17. UE4 利用Mixamo自动绑骨并导入虚幻4
  18. 数据清洗是什么?如何进行数据清洗?
  19. 什么是 Arthas
  20. 国外最牛逼的17种商业模式

热门文章

  1. CSRF跨站请求伪造漏洞修复方案
  2. 增强型绿植植被指数_植被指数--数据产品-国家青藏高原科学数据中心
  3. Creo:Creo2.0安装实例教程之图文详细攻略
  4. 烧写器--SPI NAND FLASH烧录定制说明
  5. RISC-V MCU 应用教程之RTC自动唤醒
  6. Web前端基础课程内容有哪些?学前端要学什么你真的清楚吗?
  7. SDN技术的发展应用任重而道远
  8. 技嘉主板BIOS修改风扇转速设置详细教程
  9. Mysql闪退无法打开,试试这个方法
  10. MYSQL卸载教程(5.7)