找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 10369|回复: 5
打印 上一主题 下一主题
收起左侧

单片机智能台灯课程设计说明书与仿真+源码资料下载

  [复制链接]
跳转到指定楼层
楼主
此为单片机课程设计,内容包含:
      智能台灯课程设计说明书;
      protues电路仿真;
      程序源码;


全部资料51hei下载地址:
单片机课设---智能台灯.zip (1.86 MB, 下载次数: 342)


智能台灯课程设计说明书
摘要
随着能源的短缺,节能环保越来越被大家所重视。目前有许多台灯设计不合理,以至于能源被大大浪费。另外中国青少年的近视率一直居高不下,成为困扰中国家庭的主要问题。随着科学技术的进步,科学家希望通过人工干预和治疗,从根本上解决近视问题。然而现代医学的发展虽然可以解决很多曾经困扰人类的疑难问题,却仍然不能从根源上预防和祛除近视。我们通过对影响视力的各种因素进行实验,发现造成青少年视力下降的最主要根源是灯光。传统护眼灯为了达到提高频率的目的,使用了高频镇流器,使得护眼灯的电磁辐射远比一般的电器高得多,是手机、电脑的数倍甚至数十倍,严重影响视力。而LED照明技术的出现,为我们提供了消除仅是问题的途径。为了使电力得到高效利用,本文提出一种基于单片机的智能LED台灯设计,该台灯具有手动、自动两种调节方式,能够在保证正常实用的状况下又能使电力得到充分利用。

目录

摘要
一、设计要求
二、设计思路
2.1必做项目
2.2选做项目
三、系统设计
3.1硬件设计

3.1.1矩阵键盘扫描电路

3.1.2 LCD1602显示电路

3.1.3继电器应用电路

3.1.4 ADC0832数据采集电路

3.1.5光敏电路

3.1.6以51为核心的中央处理部分

3.1.7数码管显示电路

3.1.8 LED驱动电路

3.1.9 按键及开关控制电路

3.2软件设计

3.2.1调光方案的选择

3.2.2调光设计

3.2.3光敏电阻反馈设计

3.2.4总体框图

4设计总结
5参考文献
6主程序设计
6.1矩阵键盘扫描程序
6.2数码管动态显示程序
6.3 LCD1602液晶显示程序
6.4串口通讯程序
6.5智能台灯设计程序
一、设计要求
必做项目:
基本系统:在51单片机开发系统PCB电路板上完成电子元器件的焊接、调试、程序下载,并实现数码管显示、矩阵键盘扫描、中断程序、定时器程序、串口通讯等基本功能;
2.显示功能:焊接电路并实现对1602液晶屏的显示功能,要求能滚动显示字符;
3.输出控制:焊接电路并实现对继电器的控制功能;
4.数据采集:焊接电路并实现对AD0832的数据采集功能;
选做项目:
              根据环境光强度自动调节LED亮度,通过光敏元器件采集环境亮度,通过PWM方式控制LED灯亮度。定时自动关灯,设定关灯时间,到时间由量逐渐变暗。分自动模式和手动模式,手动模式由用户自行设置灯光亮度,手灯模式根据光敏元件的光敏特性保持亮度恒定。
二、设计思路2.1必做项目
1、矩阵键盘扫描电路
2、LCD1602显示电路
3、继电器应用电路
4、ADC0832数据采集电路
2.2选做项目
1、光敏电路
2、A/D转换电路
3、以51为核心的中央处理部分
4、数码管显示电路
5、LED驱动电路
6、按键及开关控制电路
三、系统设计3.1硬件设计
              系统各模块硬件设计原理图如图所示:
图1 系统硬件设计原理图
图2系统硬件设计实物图
3.1.1矩阵键盘扫描电路
矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是4×4个。这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。本项目设计矩阵键盘电路如图1所示,行线接P2_4-P2_7,列线接P2_0-P2_3。
图3 矩阵键盘扫描电路原理图
3.1.2 LCD1602显示电路
LCD1602是一种字符型液晶显示器,它的主控芯片是HD44780或者其它兼容芯片。有16引脚和14引脚,与16引脚相比,缺少背光电源和地线,共有四种基本操作,与RS和RW口控制,内置DDRAM,即显示数据RAM,用来寄存器显示的字符代码,共80个字节,电路连接图如图2所示。
图4 LCD1602电路原理图
3.1.3继电器应用电路
              电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定电压,线圈中就会流过一定电流,从而产生电磁效应,衔铁就会在电磁力吸引作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点和静触点(常开触点)吸合。当线圈断电时,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点吸合,这样吸合、释放,从而达到了在电路中的导通、切断目的。对于继电器的“常开、常闭”触点,可以这样来区分,继电器未通电时,处于断开状态的静触点,称为 “常开触点”,处于接通状态的静触点,称为 “常闭触点”。
图5 继电器应用电路原理图
3.1.4 ADC0832数据采集电路
ADC0832是CMOS器件,不仅包括一个8位的逐次逼近型的ADC部分,而且还提供一个8通道的模拟多路开关和通道寻址逻辑。利用它可直接输入8个单端的模拟信号分时进行A/D转换。ADC0832的参考电压设置成5 V,时钟信号通过单片机P2_7口利用定时器中断输出。滑动变阻器的对地电压从CH0或CH1口输入,ADC0832将其转换成数字量后通过OUT1-7输出,以便单片机进一步处理,如图。
图6 ADC0832电路连接原理图
3.1.5光敏电路
光敏电阻又称光导管,常用的制作材料为硫化镉,另外还有硒、硫化铝、硫化铅和硫化铋等材料。这些制作材料具有在特定波长的光照射下,其阻值迅速减小的特性。这是由于光照产生的载流子都参与导电,在外加电的作用下作漂移运动,电子奔向电源的正极,空穴奔向电源的负极,从而使光敏电阻器的阻值迅速下降。光敏电阻器是利用半导体的光电导效应制成的一种电阻值随入射光的强弱而改变的电阻器,又称为光电导探测器;入射光强,电阻减小,入射光弱,电阻增大。还有另一种入射光弱,电阻减小,入射光强,电阻大。
图7 光敏电路原理图
3.1.651为核心的中央处理部分
主控芯片采用AT89C51单片机芯片,AT89C51单片机芯片有40个外部I/O
口,可用作对外部硬件的控制接口。其中P0.0-P0.7八个I/O口外接10K的电阻作为上拉电阻。40引脚为电平引脚外接五伏电压,20引脚为接地引脚,18和19
引脚为外部晶振接口,为芯片提供晶振,9引脚为外部复位电路接口,P1.0-P1.7作为数码管位选控制端口和LCD1602数据端口,P2.0-P2.7作为矩阵键盘扫描端口和其他控制端。中央处理部分主要包括时钟电路和复位电路,如图所示。
图8 中央处理部分电路原理图
3.1.7数码管显示电路
              数码管显示电路的作用是显示当前自然光强度即定时显示,有八位数码管进行显示,A-dp接口为端选信号接口,P1_0-P1_7为位选信号接口,分别由P2口和P1口控制,电路设计如下。
图9 数码管显示电路原理图
3.1.8 LED驱动电路
三极管在实际的放大电路中使用时,还需要加合适的偏置电路。首先是由于三极管BE结的非线性(相当于一个二极管),基极电流必须在输入电压 大到一定程度后才能产生(对于硅管,常取0.7 V)。当基极与发射极之间的电压小于0.7 V时,基极电流就可以认为是0。但实际中要放大的信号往往远比0.7 V要小,如果不加偏置的话,这么小的信号就不足以引起基极电流的改变(因为小于0.7 V时,基极电流都是0),那么当一个小信号跟这个偏置电流叠加在一起时,小信号就会导致基极电流的变化,而基极电流的变化,就会被放大并在集电极上输出。
LED的亮度受电流控制,通过控制电流调节LED灯亮度。利用公式
可知,利用调整PWM不同的占空比就可以控制电流的大小。电流通断的变化用PNP型三极管实现,PWM由P3_3输出
图10 LED驱动电路原理图
3.1.9 按键及开关控制电路
单片机键盘有独立键盘和矩阵式键盘两种:独立键盘每一个I/O口上只接一个按键,按键的另一端接电源或接地(一般接地),这种接法程序比较简单且系统更加稳定;而矩阵式键盘式接法程序比较复杂,但是占用的I/O少。本设计选用了独立式键盘接法。
独立式键盘的实现方法是利用单片机I/O口读取口的电平高低来判断是否有键按下。将常开按键的一端接地,另一端接一个I/O口,程序开始时将此I/O口置于高电平,平时无键按下时I/O口保护高电平。当有键按下时,此I/O口与地短路迫使I/O口为低电平。按键释放后,单片机内部的上拉电阻使I/O口仍然保持高电平[5]。我们所要做的就是在程序中查寻此I/O口的电平状态就可以了解我们是否有按键动作了。在用单片机对键盘处理的时候涉及到了一个重要的过程,那就是键盘的去抖动。这里说的抖动是机械的抖动,是当键盘在未按到按下的临界区产生的电平不稳定正常现象,并不是我们在按键时通过注意可以避免的。这种抖动一般10~200毫秒之间,这种不稳定电平的抖动时间对于人来说太快了,而对于时钟是微秒的单片机而言则是慢长的。硬件去抖动就是用部分电路对抖动部分加之处理,软件去抖动不是去掉抖动,而是避抖动部分的时间,等键盘稳定了再对其处理。所以这里选择了软件去抖动,实现法是先查寻按键当有低电平出现时立即延时10~200毫秒以避开抖动(经典值为20毫秒),延时结束后再读一次I/O口的值,这一次的值如果为1表示低电平的时间不到10~200 毫秒,视为干扰信号。当读出的值是0时则表示有按键按下,调用相应的处理程序。
              本项目设计P2_0、P2_1和P2_2分别与矩阵键盘连接,分别用于调节灯光的亮度,定时调节。
图11 键盘控制电路
3.2软件设计3.2.1调光方案的选择
              调光设计有两种方案来调节亮度:用正向电流的方法来调亮度和采用脉宽调制来调光。用正向电流的方法来调亮度是通过调整正向电流的大小的改变可以改变LED的亮度,但是通过电流的大小的改变并不是最佳选择,因为通过电流的改变,使LED的寿命减少,还容易引起闪烁;LED 是一个二极管,它可以实现快速开关。它的开关速度可以高达微秒以上。是任何发光器件所无法比拟的。因此,只要把电源改成脉冲恒流源,用改变脉冲宽度的方法,就可以改变其亮度。这种方法称为脉宽调制(PWM)调光法。假如脉冲的周期为tpwm,脉冲宽度为ton,那么其工作比D(或称为孔度比)就是ton/tpwm.改变恒流源脉冲的工作比就可以改变LED 的亮度。
3.2.2调光设计
由于模拟光是直接改变流过LED电流的大小来实现亮度调节,除了亮度会改变以外,也会影响白光的质量,即不同电流下发出的白光存在色偏。因此,本设计采用PWM调光方案,PWM调光的基本原理是保持LED正向导通电流恒定,而通过控制电流导通和关断的时间比列,即改变输入脉冲信号的占空比,使LED产生亮暗变化;并利用人眼的视觉残留效应,当LED亮暗变化频率大于120HZ时,人眼就不会感觉到闪烁,而看到的是LED的平均亮度。PWM调光的优势是LED正向导通的电流是恒定的,LED的色度就不会像模拟调光时产生变化。
3.2.3光敏电阻反馈设计
光敏电阻器是利用半导体的光电效应制成的一种电阻值随入射光的强弱而改变的电阻器;入射光强,电阻减小,入射光弱,电阻增大。光敏电阻器一般用于光的测量、光的控制和光电转换。因此,不断采集光敏电阻对地的电压便可以获知台灯周边光强的变化。在程序中通过ADC0832反馈的数字信号来调节PWM占空比,光度越强,光敏电阻阻值越小,电压对应的数字信号越小,占空比越小,反之,光强越强,占空比越大,本项目设计利用PWM设计了10个档位。
3.2.4总体框图
图12 程序设计流程图
4设计总结
通过对具体电路的设计与分析,成功的完成了电路的仿真测试,并在验证结果无误的情况下进行实物制作,但在该过程中,遇到的困难较多,除了数码管显示模糊之外,还遇到光敏电阻不够精确,采集的信号输出不稳定,调时设置未按预想的方式工作等,但通过对本课程设计的研究,我进一步了解了单片机的工作原理,能够通过C语言编写单片机程序,验证并成功实现具体功能,同时提高分析电路的能力,不仅局限于外围电路,更能从整体出发,从各组成部分的内部电路结构和功能原理方面入手,全面透彻的分析整个电路的工作原理同时分析不同简单芯片的内部结构,不断地获取新知识,扩展自己的知识储备,并学会运用了protues软件进行仿真,实物制作过程中遇到与仿真结果相左的情况时,能通过测试工具对实际电路进行测量调试,不断地改进电路,提出新的解决方案,提升了“发现问题解决问题”的能力,是一个长足的进步。




分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏7 分享淘帖 顶2 踩
回复

使用道具 举报

沙发
ID:440759 发表于 2018-12-6 11:15 | 只看该作者
学习入门
回复

使用道具 举报

板凳
ID:418260 发表于 2018-12-28 12:43 | 只看该作者
程序下了,根本用不了
回复

使用道具 举报

地板
ID:407566 发表于 2018-12-29 20:22 | 只看该作者
选做项目是有做的吗?就是根据环境调整灯的亮度,还有定时关灯
回复

使用道具 举报

5#
ID:239426 发表于 2019-2-4 14:44 | 只看该作者
好东西,感谢楼主分享
回复

使用道具 举报

6#
ID:527981 发表于 2020-12-31 21:10 | 只看该作者
程序有问题,无法正常显示
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表