第七届创兴杯电子设计
竞赛论文
智能 LED 台灯
智能 LED 台灯
完成人:黄 xx(组长,电子 1004);翟 xx(电子 1004);洪 xx(电子 1004)
指导教师:xx
摘要:本文介绍了设计的框架结构和组成模块以及各模块的原理,介绍了各部分硬件设计和
各部分软件设计以及软件流程图。该设计是以 STC89C52 单片机为控制核心的集多种功能于
一体的智能 LED 台灯。该台灯实现了自动检测屋内是否有人并自动开启/关闭功能;台灯光
亮度具有调节功能;具有时间显示功能;具有温度显示功能;闹铃功能。硬件设计分为单片
机控制模块、按键模块、台灯模块、温度模块、时钟模块、闹铃模块、显示模块,红外传感
模块等八个部分。单片机控制就用 STC89C52,显示模块用 LCD1602C 液晶显示温度、时间、
日期等内容,按键模块用来调整时间、日期、LED 的亮度等,时钟用 DS12C887 时钟芯片,
台灯模块用 16 颗 LED,用蜂鸣器发出闹铃声,温度传感器用 DS18B20 芯片,检测人的用
BIS0001 红外热释传感器。软件设计用单片机 C 语言编写,实现了全部控制功能。
关键词:单片机,智能,显示,温度,时间。
1 LED 台灯功能描述及总体该方案
1.1 功能描述
根据主要功能要求,该设计利用 51 单片机实现了电子时钟、温度的显示以
及设置闹铃等功能。具体可分为一下几种:
1) 显示当前的时间,24 时制的时、分、秒;
2) 可调节时间;
3) 显示当前屋内温度;
4) 能检测屋内是否有人并自动开启/关闭;
5) 可调节 LED 光亮度;
6) 可设置闹铃时间并报警。
1.2 系统组成及工作过程
六大模块以 STC89C52 单片机为控制核心,实现了该智能台灯的各项要求,外接一个
5V 的直流电源,为整个系统供电。图 1 为设计的系统组成框图。
显 示 模 块
温 度 模 块
闹 铃 模 块
单
片
机
控
制
模
块
台 灯 模 块
按 键 模 块
红 外 传 感 模
块
时 钟 模 块
图 1 系统组成框图
根据设计要求,该智能 LED 台灯可分为八大模块:
1) 单片机控制模块;
2) 按键模块;
3) 台灯模块;
4) 温度模块;
5) 时钟模块;
6) 闹铃模块;
7) 显示模块;
8)红外传感模块。
加上 5V 直流电源后,后七大模块在单片机控制之下分别工作。
2 硬件设计
2.1 单片机控制模块设计
硬件电路如图 2,
图 2 单片机控制模块电路
这里我们选用 12M 的晶振,晶振系统由两个 30pF 的电容 CAP 和晶振组成,
接到单片机的 18、19 两管脚。晶振给单片机提供硬件本身的时钟振荡。一个 10μF
的电解电容和一个 1k 的电阻组成复位电路,接至单片机的第 9 管脚。P0 口加上
排阻,即其就是 P0 口的上拉电阻,这就是给 P0 加驱动电路,电源通过排阻向
P0 口供电,使其能够驱动与 P0 口相连的元件。
2.2 按键模块电路设计
按键模块电路如图 3,
图 3 按键模块电路
按键 K5、K6 用来调节台灯的亮度,K7 控制模式,即控制台灯是工作在感应
模式下还是工作在手动模式下,亦或是关闭状态。其余的用作调节时钟以及闹铃。
按键均采用低电平有效连接方式。通过按下按键 K5 可以让台灯变暗,按下按键
K6 可以让台灯变亮。其余几个 S1 到 S4 按键可以对时钟进行设置调节,并调节
设置闹铃,当时间与设置的时间一致是闹铃报警,即蜂鸣器响。
2.3 台灯模块电路设计
台灯模块电路如图 4,
图 4 台灯模块电路
本设计采用 16 颗 LED 作为发光系统,每两颗并联在一起后和一个 1K 的电
阻串联,用 P00 到 P03 口控制。电阻起限流作用,考虑到 I/O 口资源,我们用每
两个并联的方式以节省 I/O 口资源。通过按键 K5、K6 调节 PWM 输出以达到调
节光亮度的效果。4 个 I/O 均采用低电平有效方式,即给相应的 I/O 低电平 LED
工作。
2.4 温度模块电路设计
温度模块电路如图 5,
图 5 温度模块电路
由于 DS18B20 温度传感器的集成度很高,封装简单,所以我们选用该芯片
作温度模块电路。1 脚接电源 VCC,2 脚数据线接单片机 P24 口,3 脚接地。芯
片采集到的数据通过 2 脚传给单片机的 P24 口让单片机进行处理,之后送给显示
模块进行显示。
2.5 时钟模块电路设计
时钟模块电路如图 6,
图 6 时钟模块电路
因为 DS12C887 时钟芯片的集成度都很高,而且它自带锂电池,即使断电了
时钟仍然在工作,所以我们选择了 DS12C887 时钟芯片作为时钟。各脚的连接见
图 6.由于其集成度很高,我们只需按照其数据手册焊接电路即可。
2.6 闹铃模块电路设计
闹铃模块电路如图 7,
图 7 闹铃模块电路
闹铃模块主要就是一个蜂鸣器,其作用是当到达设定的时间到时发出蜂鸣声
报警。用一个 PNP 型三极管和蜂鸣器连接主要是给蜂鸣器一个驱动,让蜂鸣器
为高电平有效,即 P07 口高电平时蜂鸣器发声报警。
2.7 显示模块电路设计
显示模块电路如图 8,
图 8 显示模块电路
液晶显示部分,我们选用 LCD1602C,其接法和普通的 1602 接法一样。1
脚接地,2 脚接电源,3 脚接一个电位器以调节液晶显示器的亮度,16 脚接地,
15 脚接背光电源,其余接法见图 8。在调试的时候,有时液晶不亮,多半是因为
遗漏背光电源,也有可能是虚焊导致。
2.8 红外传感模块电路设计
红外传感模块电路如图 9,
图 9 红外传感电路
检测屋内是否有人我们选用 BIS0001 红外热释传感器,因为该传感器灵敏度
好,好控制,而且价钱不贵。3 脚接电源 VCC,1 脚接地,2 脚通过一个 NPN 型
的三极管接至单片机的 P37 口。由于该传感器的带负载能力较弱,加一个三极管
作为其驱动电路,当 P37 口给低电平时有效。检测距离可通过软件调节。
3 软件设计
3.1 主程序的设计
开始
系统初始化
检测屋内有人?
按键按下?
LED 工作
闹钟
显示时间、日期、温
度
修正时间,设置闹钟
图 10 主程序流程图
主程序如图 10,一给单片机上电,单片机就初始化。然后通过接收并处理
BIS0001 传感器出阿叔过来的数据,检测屋内是否有人,若有人则工作。然后检