本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc

上传人:小小飞 文档编号:3936057 上传时间:2019-10-10 格式:DOC 页数:45 大小:9.76MB
返回 下载 相关 举报
本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc_第1页
第1页 / 共45页
本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc_第2页
第2页 / 共45页
本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc_第3页
第3页 / 共45页
本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc_第4页
第4页 / 共45页
本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc》由会员分享,可在线阅读,更多相关《本科毕业论文-基于STC89C52单片机的花房照明控制系统设计.doc(45页珍藏版)》请在三一文库上搜索。

1、西南科技大学应用型自学考试毕业设计(论文)基于STC89C52单片机的花房照明控制系统设计摘要随着时代的发展与进步,电子技术也在飞速的发展,基于单片机的控制系统已经广泛地运用于各个行业之中,而微型计算机作为嵌入式控制系统的主体与核心,已经代替了传统的控制系统的常规电子线路,为基于单片机的照明控制系统的普及与应用奠定了坚实的基础。关于花房中的照明控制,由单片机来自动控制已经取代了人工的照明控制。单片机在照明节能控制系统中的应用不仅具有良好的经济效益,更具有极好的社会效益,同时也对环保,可持续发展产生深远影响。本篇论文介绍了花房智能照明系统的原理,通过单片机对光照传感器采集数据的收集、判断与控制实

2、现了智能控制照明。在即保证实际使用的效果,又保证有效节约能源的目的下,确保区域内的照明亮度达到要求。本次设计采用了BH1750数字型光照传感器,它能感应周围环境亮暗变化,只要环境光线不足时,它将接收到的信号传输至单片机,经单片机处理后驱动继电器,继电器开关就会自动开启。本设计结构简单,本身不发任何类型的辐射,器件功耗很小,价格低廉,隐蔽性好,应用范围广,所以可以通过扩展而达到实际的应用。关键词:BH1750传感器, 感应开关, 光照传感器 II目录1 引 言12 照明系统总体设计22.1 照明系统总体设计22.2 系统硬件方案22.2.1 主控制器22.2.2 硬件设计方案33 硬件系统设计与

3、实现73.1 硬件系统的总体设计73.2 单片机系统设计73.2.1 STC89C52简介73.2.2 STC89C52单片机引脚功能83.2.3 复位电路设计103.2.4 时钟电路113.3 控制单元设计133.4 光照传感器电路设计133.5 继电器驱动电路设计153.6 按键电路设计173.7 显示电路设计184 系统软件设计205 电路硬件的制作与调试215.1 电路的焊接215.2 程序烧录215.3 显示调试225.4 系统调试23结 论25致 谢26参考文献27附 录281 引 言花是一种非常美丽诱人的植物,但同时它也是一种极其娇嫩脆弱的植物。那是因为花卉在它生长过程中会受到周

4、围环境中很多因素的影响,所以花卉的生长要在一定的环境中进行。在外界的众多因素中,周围环境中的光照度是对花卉生长影响最大的因素。外界环境中随着时间的流逝。昼夜间的光照度变化很大,这是很不利于花卉的生长。因此为了花卉的健康成长,就必须对环境中的光照度进行监测和控制,并将环境中的光照度控制在一个适宜花卉成长的区间内。本课程设计就是要利用基于单片机来设计一个精度高,控制操作方便的花房光照度控制系统。因为在以前种植花卉等植物一般都用温室栽培,所以为了充分的利用好温室栽培这一高效技术,就必须要有一套科学的管理方法,用来针对对不同种类的花卉在生长的各个时期所需的不同的光照度进行实时的监控。而光照度控制对于单

5、片机的应用具有一定的实际意义,它代表了一类自动控制的方法。其应用十分广泛。2 照明系统总体设计2.1 照明系统总体设计根据本设计所需要实现的功能,并考虑到硬件电路的复杂性、性价比和软件实现的难易程度等情况。本系统决定由控制模块、按键模块、传感器模块和灯泡驱动模块四个模块组成。本系统的工作原理如下:当系统启动后,当检测到外界光照强度小于了系统设定的上限时,系统将会驱动继电器,点亮灯泡;而当检测到外界光照强度大于或者等于了设定的上限时,灯泡将会熄灭。而本系统设定的光照强度上限是可以调整。2.2 系统硬件方案2.2.1 主控制器控制部分是整个系统的核心部分,功能为发送数据和控制指令处理后控制相应的负

6、载。一些比较常用的电子设计方法有单片机、DSP、及EDA技术。这几种设计方法都有其各自的特点:(1).单片机单片机是集成CPU,ROM,RAM和I/ O口的微型计算机。它有很强的接口性能,非常适合于工业控制,因此又叫微控制器(MCU)。单片机品种齐全,型号多样 CPU 从8,16,32到64位,多数采用了RISC 技术,片上I/O非常丰富,有的单片机集成有A/ D,“ 看门狗”,PWM,显示驱动,函数发生器,键盘控制等。它们的价格也高低不等,这样极大地满足了需求者们的选择。除此之外单片机还具有低电压和低功耗的特点。随着超大规模集成电路的发展,NMOS工艺单片机被CMOS代替,并开始向HMOS

7、过渡。供电电压由5V 降到3V,2V甚至到1V,工作电流由mA降至A ,这在便携式产品中是占有优势的。(2).DSP 芯片DSP 又叫数字信号处理器。它主要被运用于数字信号处理领域,适合重复运算,高密度以及大数据容量的信号处理。现在被广泛应用于通信、便携式计算机和仪表、雷达、航空、家用电器、医疗设备等领域。DSP具有修正的哈佛结构,多总线技术以及流水线结构。将程序与数据存储器分开,使用多总线,取指令和取数据同时进行,以及流水线技术,这些使得其速度有了较大的提高。DSP区别于一般微处理器的另一重要标志是硬件乘法器以及特殊指令,一般微处理器用软件实现乘法,逐条执行指令,速度慢。而DSP 依靠硬件乘

8、法器单周期完成乘法运算,而且还具有专门的信号处理指令,如TM320 系列的FIRS ,LMS,MACD指令等。(3)FPGA/CPLDFPGA是基于SRAM的架构,集成度高,以LE为基本单元,有内嵌Mwmory,DSP等,支持IO标准丰富。具有具有易挥发性,需要有上电加载过程。在实现复杂算法,队列调度,数据处理,高性能设计,大容量缓存设计等领域中有广泛的应用。CPLD是基于EEPROM工艺,集成度低,以MicroCell(包括组合部分与寄存器)为基本单元。具有非挥发特性,可以重复写入。在粘合逻辑,地址译码,简单控制,EPGA加载等设计中有广泛的应用。FPGA/CPLD均可实现硬件上的并行工作,

9、在实时测控和高速应用领域前景广阔;另一方面,FPGA/CPLP器件在功能开发上是软件实现的,但物理机制却和纯硬件电路一样,十分可靠。三种选择方式相比较各有优点且都能够实现控制功能,但单片机的技术门槛较低开发成本也较低非常适合我们这种初学者进行学习和锻炼使用。现在市场上常用的单片机主要有MCS-51、AVR、ARM、PIC等。其中应用最广泛的单片机首推Intel的51系列,由于产品硬件结构合理,指令系统规范,加之生产历史“悠久”,有先入为主的优势常作为单片机学习的教材。且51系列的I/O脚的设置和使用非常简单,当该脚作输入脚使用时,只须将该脚设置为高电平(复位时,各I/O口均置高电平)。当该脚作

10、输出脚使用时,则为高电平或低电平均可。所以在本次设计控制部分的方案中选择51系列单片机作为控制部分的核心器件。2.2.2 硬件设计方案 本次硬件设计采用单片机最小系统、按键模块、传感器模块、灯泡驱动模块和显示模块组成(如图2.1)图2-1 硬件设计结构框图(1).光照传感器模块BH1750FVI光照传感器介绍:BH1750FVI是一种用于两线式串行总线接口的数字型光强度传感器集成电路。这种集成电路可以根据收集的光线强度数据来调整液晶或者键盘背景灯的亮度。利用它的高分辨率可以探测较大范围的光强度变化。(1lx-65535lx)特点:a.支持I2CBUS接口(f/sModeSupport)。b.接

11、近视觉灵敏度的光谱灵敏度特性(峰值灵敏度波长典型值:560nm)。c.输出对应亮度的数字值。d.对应广泛的输入光范围。e.通过降低功率功能,实现低电流化。f.通过50Hz/60Hz除光噪音功能实现稳定的测定g.支持1.8V逻辑输入接口。h.无需其他外部件。i.光源依赖性弱。j.有两种可选的I2Cslave地址。k.可调的测量结果影响较大的因素为光入口大小。l.使用这种功能能计算1.1lx到100000lx马克斯/分钟的范围。m.最小误差变动在20%。n.受红外线影响很小HA2003光照传感器介绍:HA2003传感器是采用先进光电转换模块,将光照强度值转化为电压值,再经调理电路将此电压值转换为0

12、2V或420mA特点:a.高精度的光照强度测量b.体积小巧c.IP65防护等级设计d.传感器结实、耐腐蚀e.响应速度快f.可选用电压或电流输出,电流输出在长缆线传输的时候没有信号衰减g.采用真实太阳光标定,使光源影响最小 两种传感器都有各自的特点,但BH1750FVI光照传感器结构简单,并不依赖其他的外围电路。并且模块内部包含通信电平转换,可以与5v单片机直接连接。所以最终本次设计选择了使用BH1750FVI光照传感器。(2)显示模块LED显示器介绍:LED是一种平板显示器,由一个个小的LED模块面板组成。一般用来显示文字、图像、视频、录像信号等各种信息。适用性强,色彩丰富:由三基色显示单元箱

13、体组成,256级灰度构成16777216种颜色,使电子屏显示色彩丰富、高饱和度、高解析度、显示频率高的动态图像。LED的基本结构是一块电致发光的半导体材料,放置在一个有引线的架子上,然后四周用环氧树脂密封,起到保护内部芯线的作用,所以LED的抗震性能好。而且LED的工作范围较大,其光输出和工作电流成正比,因此可以减小电流的方法来调光。同时LED进行频繁开关并不会对其有太大的损伤。LED光源使用寿命很长,其中不含有害金属汞,不会像高压钠灯或金属卤化物灯在报废时对环境造成危害。LED还有耗电少、成本低、亮度高、故障少、视角大、可视距离远等特点。LCD显示屏介绍:LCD是液晶显示屏Liquid Cr

14、ystalDisplay的全称,是运用于数字型钟表和许多便携式计算机的一种显示器类型。主要有TFT、UFB、TFD、STN等几种类型的液晶显示屏。笔记本液晶屏常用的是TFT。TFT(Thin Film Transistor)是指薄膜晶体管,每个液晶像素点都是由集成在像素点后面的薄膜晶体管来驱动,从而可以做到高速度、高亮度、高对比度显示屏幕信息,是目前最好的LCD彩色显示设备之一,是现在笔记本电脑和台式机上的主流显示设备。和STN相比,TFT有出色的色彩饱和度,还原能力和更高的对比度,太阳下依然看的非常清楚,但是缺点是比较耗电,而且成本也较高。目前液晶显示技术大多以TN、STN、TFT三种技术为

15、主轴 TN型的液晶显示技术可说是液晶显示器中最基本的,而之后其它种类的液晶显示器也可说是以TN型为原点来加以改良。同样的,它的运作原理也较其它技术来的简单。LCD与LED是两种不同的显示技术,LCD是由液态晶体组成的显示屏,而LED则是由发光二极管组成的显示屏,两种显示屏都有各自不同的特点,但LED与LCD的功耗比大约为1:10,LED比LCD更加节能的多。LED拥有比LCD更高的刷新速率,在视频方面会有更好的性能表现。同时LED可以提供宽达160的视角,可以显示各种文字,数字等。而且LED显示屏的单个元素反应速度是LCD液晶屏的1000倍,即使在强光下也可以照看不误,没有太大的影响。LCD显

16、示器与LED显示器相比,LED在亮度、功耗、可视角度和刷新速率等方面,都更具优势。所以本次设计选用了LED显示屏。(3)按键控制键盘是单片机应用系统中使用最广泛的一种数据输入设备。通常,键盘有编码和非编码两种。编码键盘通过硬件电路产生被按按键的键码和一个选通脉冲。选通脉冲可作为CPU的中断请求信号。这种键盘使用方便,所需程序简单,但硬件电路很复杂,所以本次设计并不采用。而非编码键盘按组成结构又可以分成独立式键盘和矩阵式键盘。独立式键盘的工作过程和矩阵式键盘是类似的,无论是硬件结构还是软件设计都比较简单。独立式键盘每个按键是占用一条I/O线,程序编制简单,适用于按键较少的时候。而矩阵键盘的电路连

17、接复杂,软件编程也比较复杂,适用于需要大量的按键的时候。所以在比较了本次设计的实际需要后,选用了独立键盘。3 硬件系统设计与实现3.1 硬件系统的总体设计本设计采用STC89C52单片机为核心控制器件,采集按键和传感器的信号,控制数码管显示和驱动灯泡。系统方框图如图3-1所示。图3-1 系统方框图3.2 单片机系统设计3.2.1 STC89C52单片机简介图3-2单片机引脚图本设计使用的是STC89C52单片机,原因是此款单片机具有众多优点STC89C52是51系列单片机的一个型号,它是ATMEL公司生产的。STC89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反

18、复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的STC89C52单片机可为您提供许多较复杂系统控制应用场合。STC89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash

19、存储器可有效地降低开发成本。同时它还有加密性强,难解密超强抗干扰超低功耗 掉电模式:0.1A空闲模式:2mA正常工作模式:4mA7mASTC89C52的基本结构与8051相同,但是比传统的8051单片机拥有更多的内部Flash,最高可达64KB。片内SRAM容量同样是非常吸引的数字,最高可拥有1280Byte的SRAM。而且还内置EEPROM存储器等功能。另外它还可以用串口直接仿真程序,不需要另外加用仿真器或者下载线。3.2.2 STC89C52单片机引脚功能VCC:接电源正极,一般输入电压为5V。GND:接电源地端。P0口:P0口为一个8位漏级开路双向I/O口,每个脚可吸收8TTL门电流。当

20、P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器

21、进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(计数器0外部输入)P3.5 T1(计数器1外部输入)P3.6 /WR(外部数据存储器写选通

22、)P3.7 /RD(外部数据存储器读选通)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态AL

23、E禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。EA/VPP:当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.2.3 复位电路设计为确保单片机系统中电路稳定可靠工作,复位电路

24、是必不可少的一部分,复位电路的第一功能是上电复位。一般单片机正常工作所需要的供电电压为+5V,由于单片机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC在特定的工作电压范围内以及晶体振荡器稳定工作时,复位信号才被撤除,单片机开始正常工作。复位电路工作原理如图3-3所示,VCC上电时,C充电,在10k电阻上出现电压,使得单片机复位;几个毫秒后,C充满,10k电阻上电流降为零,电压也为零,使得单片机进入工作状态。工作期间,按下S、C放电。S松手,C又充电,在10k电阻上出现电压,使得单片机复位。几个毫秒后,单片机进入工作状态。图3-3 复位电路图3-4电路接线图如图3-4所

25、示,复位电路REST接口与RESET端口相连接。3.2.4 时钟电路的设计 内部时钟,是用芯片内部振荡电路,精度不高,温飘也较大,不需要外部振荡器件。外部时钟,分RC振荡和石英晶振,RC精度不高,成本低,石英晶振,精度高,稳定性好,根据使用场合选择,适合的时钟方式。STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是反相放大器的输入端和输出端,由这个放大器与作为反馈元件的片外晶体或搪瓷谐振器一起构成了一个自激振荡器,这种方式形成的时钟信号称为内部时钟方式。利用芯片内部的振荡电路,在XTAL1和XTAL2两端跨接晶体(或陶瓷)振荡器和两个电容就构成了一个稳

26、定的自激振荡器。晶体振荡频率可在1.2MHz12MHz之间选择。电容值无严格要求,但其取值对振荡频率输出的稳定性、大小、振荡电路起振速度稍有影响,C1、C2可在20pF100pF之间取值。一般当外接晶体时,电容选为30pF。本设计采用外部时钟电路,电路图如图3-5所示。图3-5电路接线图如图3-5所示,时钟电路X1接口与端口X1相连接,X2接口与X2端口相连接。3.3 控制单元设计控制单元是整个显示系统的核心,本系统中采用51系列单片机为核心器件,用来发送控制指令和显示内容,并且直接输出数据通过译码电路控制LED显示屏的显示内容和显示状态。在51系列单片机中选定一款合适的机型来作为控制单元的主

27、控芯片。根据设计的需要该芯片必须要具有的就是方便的编程能力,因为在软件设计时方便的程序下载对程序的验证和编写非常有用,所以选择了STC89C52为控制单元的主控芯片。3.4 光照传感器电路设计本设计中所使用的传感器BH1750FVI实物图如图3-6所示,电路图如图3-7所示:图3-6 BH1750FVI传感器实物图3-7 BH1750FVI传感器电路图图3-8电路接线图如图3-8,传感器SCL接口与P36端口相连接,SDA接口与P37端口相连接。BH1750FVI传感器引脚连接图如图3-9所示。图3-9 连接线路图3.5 继电器驱动电路设计继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在

28、线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)释放。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。继电器一般有两股电路,为低压控制电路和高压工作电路。设置中,通过继电器控制小灯泡工作,如图3-10所示:图3-10

29、继电器驱动电路图3-11电路接线图如图3-11所示,继电器驱动电路jdq接口与P10端口相连接。3.6按键电路设计本次设计中设置有4个按键,分别为:调整、加、减和确认,用来调整设置的上限值,默认上限值为100。这四个键可以采用中断的方法,也可以采用查询的方法来识别。系统采用的是扫描的查询方法来识别按键的四个按键均采用低电平有效,具体电路连接图如图3-12所示。图3-12按键电路图3-13电路接线图如图3-13所示,S2按键接口与P11端口相连接,S3按键接口与P12端口相连接,S4按键接口与P13端口相连接,S5按键接口与P14端口相连接。 3.7显示电路设计对于数字显示电路,通常采用液晶显示

30、或数码管显示。但对于一般的段式液晶屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性差,不适合远距离观看;对于具有驱动电路和单片机接口的液晶显示模块,一般多采用并行接口,对单片机的接口要求较高,占用资源多;另外,STC89C52单片机本身无专门的液晶驱动接口。而数码管作为一种主动显示器件,具有亮度高、响应速度快、防潮防湿性能好、温度特性极性、价格便宜、易于购买等优点,而且有远距离视觉效果,很适合夜间或是远距离操作。因此,本设计的显示电路采用7段数码管作为显示介质。数码管显示可以分为静态显示和动态显示两种。由于本设计需要采用四位数码管显示时间,如果静态显示则占用的口线多,硬件电路复杂。

31、所以采用动态显示。动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。通常各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的公共阳极位选线由另外的I/O口线控制。动态方式显示时,各数码管分时轮流选通,要使其稳定显示必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码,依此规律循环,即可使各位数码管显示将要显示的字符,虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人同时显示的感觉。电路连接图如图3-14所示。图3-14电路接线图如图3-11,d1接口与

32、P27端口相连接,d2接口与P26端口相连接,d3接口与P25端口相连接,d4接口与P24端口相连接。a接口与P00端口相连接,b接口与P01端口相e连接,c接口与P02端口相连接,d接口与P03端口相连接,e接口与P04端口相连接,f接口与P05端口相连接,g接口与P06端口相连接,dp接口与P07端口相连接4 系统软件设计如果说硬件是一个人的身体躯干,那么,软件就是一个人的灵魂、思想。只有合理并且完美的程序才能使指导一个人成功地去完成一项任务。对于单片机来说更是如此,基础的硬件电路焊接好后,就需要从软件设计来下手,想要实现硬件电路的正常工作,往往需要对软件进行系统的设计,设计的思想、设计的

33、目标、设计方案、代码的编写、软件的测试等对软件设计的成功有着非同一般的指导意义。该系统的工作原理如下:系统启动后,系统检测到光照强度小于设定的上限时,驱动继电器,点亮灯泡,系统检测到光照强度大于等于设定的上限时,是不点亮灯泡的。设定的上限可以调整。程序流程图如图4-1所示:图4-1 程序流程图5 电路硬件的焊接与调试5.1电路的焊接硬件焊接严格按照电路图。焊接时要注意短路、虚焊、缺焊的情况都不要出现,而且尽量减少跳线的出现。在每一次焊接完成后都要认真检查有没有出现错误,避免在总体的焊接完毕后,出现不知所以的问题。 下图5-1、5-2为电路硬件正面、背面图:图5-1 电路硬件正面图图5-2 电路

34、硬件背面图5.2 程序烧录采用的是模块:USB转TTL USB-TTL/STC单片机编程器PL2303中九升级板(1) 下载器的用法:如下图5-3和5-4所示图5-3 下载器的接法图5-54下载器配套烧写软件5.3显示调试下载程序完成,再次检查无误后开始进行调试。加电后,在一切正常的情况下,系统初始化后,能正确驱动继电器。如图5-5所示:图5-5实物检测5.4系统调试在单片机的开发过程中我们除了必要的硬件之外,同样离不开软件。随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,Keil提

35、供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。对于使用51系列单片机的人群来说掌握这一软件的使用是十分必要的。结 论本文详细讲述了基于单片机的花房照明控制系统设计方案,并给出了相关程序流程。以单片机STC89C52为中心控制器件,外围电路配有光照度传感器,可以感应到外界环境中光照度的变化,当外界环境光线不足时,就会驱动继电器开关自动开启,当感应到外界光线达到了所需要求时,开关自动关闭。本次设计还涉及到一些电子线路的知识,成为我大学几年的一次总复习。本次设计的创新点在于详细设计了基于单片机STC

36、89C52 的光照度控制系统。本系统可以广泛的应用于各种花卉种植的温室花棚,具有良好的应用前景。并且基于单片机的各种优越的特性,能使得它的经济效益显的更加突出,因此有很好的实用性。通过本次毕业设计,我学到了许多课本上学不到的知识,将自己学到的理论知识与实际相结合。但由于是初次自己设计电路,在整个过程中也存不少问题,碰到问题是件麻烦的事,但解决问题本身又是充满乐趣的.致 谢在本次论文设计过程中,老师给了很多的建议和指导,使我得以最终完成毕业论文设计,在此,对老师致以衷心的感谢和崇高的敬意!回顾这几年的历程,大学时光转瞬即逝,有太多的感谢要送给我亲爱的老师和同学们,感谢老师们对我的教导,感谢同学对

37、我的帮助,谢谢你们!还要感谢一直在我身边帮助我的同学,是他们在我遇到难题时帮我找到大量资料,解决难题。在我平时设计中和我一起探讨问题,让我能及时的发现和解决问题,把设计顺利的进行下去,没有他们的帮助我不可能这样顺利地结稿,在此表示深深的谢意。通过这次毕业设计不仅提高了我独立思考问题解决问题的能力而且培养了认真严谨,一丝不苟的学习态度。由于经验匮乏,能力有限,设计中难免有考虑不周全的地方,希望各位老师多加指教。最后,我要向百忙之中抽时间对本文进行审阅,评议和参与本人论文答辩的各位老师表示感谢!参考文献1 阎石 ,数字电子技术基础.西安:高等教育出版社 20012 赵保经,中国集成电路大全.北京:

38、国防工业出版社,1985.3 高吉祥,电子技术基础实验与课程设计.西安:电子工业出版社,2002.4 陈光禹.现代电子测量技术.北京:国防工业出版社,2000.5 张友德 单片机微型机原理、应用与实验.上海:复旦大学出版社,2004.6 杨宝清、宋文贤 .实用电路手册.南京:机械工业出版,2002.7 童师白、华成英 .模拟电子技术基础.西安:高等教育出版社 ,2001第三版.8 杨文龙.单片机原理及应用.西安:西安电子科技大学出版社,2005.附 录总系统电路图:程序:#include #include /Keil library #include /Keil library#include

39、 #define uchar unsigned char#define uint unsigned int#define DataPort P0/ sbit SCL=P36;/IIC时钟引脚定义sbit SDA=P37;/IIC数据引脚定义sbit P27=P27; sbit P26=P26; sbit P25=P25; sbit P24=P24; sbit shezhi=P11;/设置按键sbit jia=P12;/加按键sbit jian=P13;/减按键sbit queren=P14;/确认按键sbit jdq=P10;/继电器uchar code dis14=0xc0,0xf9,0xa

40、4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff#define SlaveAddress 0x46 /定义器件在IIC总线中的从地址,根据ALT ADDRESS地址引脚不同修改/ALT ADDRESS引脚接地时地址为0x46,接电源时地址为0xB8typedef unsigned char BYTE;typedef unsigned short WORD;BYTE BUF8;/接收数据缓存区 uchar ge,shi,bai,qian,wan;/显示变量int dis_data;/变量void delay_nms(unsigned int k);void In

41、it_BH1750(void);void conversion(uint temp_data);void Single_Write_BH1750(uchar REG_Address);/单个写入数据uchar Single_Read_BH1750(uchar REG_Address);/单个读取内部寄存器数据void Multiple_Read_BH1750();/连续的读取内部寄存器数据/-void Delay5us();void Delay5ms();void BH1750_Start();/起始信号void BH1750_Stop();/停止信号void BH1750_SendACK(b

42、it ack);/应答ACKbit BH1750_RecvACK();/读ackvoid BH1750_SendByte(BYTE dat);/IIC单个字节写BYTE BH1750_RecvByte();/IIC单个字节读void disp();int sz=0,a,b,c,d,xianzhi=100,ss=0,guangzhao;/- /*去抖延迟*/void qudou(void) int i; for(i=0;i2400;i+);/*void conversion(uint temp_data) / 数据转换出 个,十,百,千,万 switch(sz) case 0: temp_dat

43、a=temp_data%10000;/取余运算guangzhao=temp_data;qian=temp_data/1000 ; temp_data=temp_data%1000;/取余运算 bai=temp_data/100 ; temp_data=temp_data%100;/取余运算 shi=temp_data/10 ; temp_data=temp_data%10;/取余运算 ge=temp_data; break;case 1:if(ss15) qian=10; else qian=xianzhi/1000; bai=xianzhi%1000/100;shi=xianzhi%1000

44、%100/10;ge=xianzhi%1000%100%10;break;case 2:qian=xianzhi/1000; if(ss15) bai=10; else bai=xianzhi%1000/100;shi=xianzhi%1000%100/10;ge=xianzhi%1000%100%10;break;case 3:qian=xianzhi/1000; bai=xianzhi%1000/100;if(ss15) shi=10; else shi=xianzhi%1000%100/10;ge=xianzhi%1000%100%10;break;case 4:qian=xianzhi

45、/1000; bai=xianzhi%1000/100;shi=xianzhi%1000%100/10;if(ss15) ge=10; else ge=xianzhi%1000%100%10;break;/毫秒延时*void delay_nms(unsigned int k)unsigned int i,j;for(i=0;ik;i+)for(j=0;j121;j+);/*延时5微秒(STC90C52RC12M)不同的工作环境,需要调整此函数,注意时钟过快时需要修改当改用1T的MCU时,请调整此延时函数*/void Delay5us() disp();/*延时5毫秒(STC90C52RC12M)不同的工作环境,需要调整此函数当改用1T的MCU时,请

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1