路灯控制系统

更新时间:2023-12-23 09:25:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

课程设计说明书(论文)

题 目 路灯控制系统

课 程 名 称 检测技术课程设计 院 系

专 业 电气工程及其自动化 班 级 学 生 姓 名 学 号 240102226 设 计 地 点 工程中心8-315 指 导 教 师

设计起止时间:2013年6月3日至 2013年 6月14日

课程设计任务书

课 程 名 称 检测技术及系统课程

设计

院(系、部、中心)

专 业 电气工程及其自动化

班 级

起 止 日 期 13.6.4~13.6.14

指 导 教 师

1.课程设计应达到的目的 通过对本课程的设计,使学生掌握常见被测量的检测原理、方法和技术,了解国内外对这些工程量进行测控的系统组建原理,通过对检测系统的设计与分析,增强学生理解和运用所学知识来解决实际问题的能力,逐步掌握根据具体测控要求、性能指标设计出先进测控系统的方法和技术。 2.课程设计题目及要求 题目:路灯控制系统设计 要求: (1)检测控制亮度范围:0~100Lux,根据环境亮暗程度控制路灯开关状态; (2)根据题意,明确路灯控制系统性能指标及其能完成的功能; (3)根据系统要求,选择合适的传感器(尽量选择实验室中已有的传感器); (4)设计传感器测量电路; (5)选择单片机的品种、型号,设计单片机的外围测量电路; (6)计算有关的电路参数,有条件的情况下,根据实验室现有设备进行实验数据的测取,明确测量电路输出与被测非电量的关系; (7)画出系统原理框图(此部分放在说明书的开始); (8)画出系统电路图,最好用PROTEL画; (9)在说明书中详细说明本系统工作原理。

3.课程设计任务及工作量的要求〔包括课程设计计算说明书、图纸、实物样品等要求〕 (1)给出设计说明书一份; (2)有条件的情况下尽量给出必要的实验数据; (3)在说明书中附上完整的系统电路原理图(手画或用PROTEL画)。 4.主要参考文献 1、李现明,吴皓编著.自动检测技术.北京:机械工业出版社,2009 2、徐仁贵.单片微型计算机应用技术.北京:机械工业出版社.2001 3、陈爱弟.Protel99实用培训教程.北京:人民邮电出版社.2000 5.课程设计进度安排 起 止 日 期 13年6月3日 13年6月4日 13年6月5日 13年6月6日 13年6月7日 13年 6月 8日 13年 6月 9日 13年 6月 10日 13年 6月 13日 13年 6月 14日 工 作 内 容 布置设计任务,熟悉课题,查找资料; 结合测控对象,选择合适的传感器,理解传感器性能; 设计传感器测量电路,选择合适的单片机,设计其外围电路; 设计电路参数,有条件情况下,在实验室进行实验,进一步理解测量电路输入输出关系; 继续设计论证电路参数,完善系统设计方案; 查找资料,理解系统各部分工作原理; 理清系统说明要点,着手设计说明书的书写; 书写设计说明书,充分理解系统每一部分作用; 完善设计说明书,准备设计答辩。 设计答辩。 6.成绩考核办法 平时表现30%,设计成果40%,答辩表现30%. 教研室审查意见: 教研室主任签字: 年 月 日 院(系、部、中心)意见: 主管领导签字: 年 月 日 目录

引言:........................................................................ 3 1 概况与现状分析.............................................................. 3 2 总体电路设计及方案论证...................................................... 4 2.1 总体电路设计及分析........................................................ 4 2.2 方案论证................................................. 错误!未定义书签。 3 单片机介绍.................................................................. 9 3.1 单片机概述............................................................... 9 3.2 单片机的主要功能及应用领域.............................................. 10 3.3 单片机的发展趋势........................................................ 11 4 硬件电路设计............................................................... 12 4.1 AT89c51简介 ............................................................ 12 4.2 光敏电阻介绍............................................................. 8 4.3 4.3 LM324运算放大器 ..................................................... 9 4.4 单片机最小系统电路...................................................... 10 4.5 光电检测电路............................................................ 15 4.6 A/D转换模块 ........................................................... 12 4.7 硬件电路原理图.......................................................... 12 5 软件设计................................................... 错误!未定义书签。 5.1 protues软件介绍 ........................................................ 17 5.2 keil c51简介 ........................................................... 18 5.3 主程序.................................................. 错误!未定义书签。 6 系统调试及仿真............................................................. 20 7 总结与致谢................................................................. 21 参考文献..................................................................... 22 8 ,附录...................................................... 错误!未定义书签。

基于单片机的光控路灯系统的设计

摘要:随着社会进步,需求和单片机应用领域的不断扩展,各类智能产品、控制系统都是以单片机技术为核心来进行开发设计。本系统采用MSC-51系列单片机AT89C51和相关的光电检测设备设计路灯控制器,

关键词:路灯;单片机技术;控制

引言

当今,路灯已经是城市道路景观的一个重要部分,已经成为城市照明系统中不可缺少和不可分割的一部分,成为了市民出行和城市美化、亮化的一个基本要求。随着社会文明的不断发展,城市照明已不仅局限于街道的照明,而且发展成了了城市景观等装饰性照明的综合市政工程。社会对亮灯率、开关灯的准确率、故障检测的实时性和维修的及时性要求不断提高。

1 概况与现状分析

1.1 智能路灯发展的概况

我国目前大部分城市都采用全夜灯的方式进行照明,普遍存在的问题有两点:一方面因为后半夜行人稀少,采用全夜灯的方式浪费太大,因此,有的地方采取前半夜全亮,后半夜全灭的照明方式;有的地方在后半夜采用亮一隔一或亮一隔二的节能措施,此种方式虽然节约了电费支出,却带来了社会治安和交通安全问题,不利于城市安全问题。

另一方面,在后半夜因行人稀少,而应该降低路灯的亮度,以避免光源污染,影响居民的晚间的休息。但由于后半夜是用电低谷期,电力系统电压升高,路灯反而比白天更亮了。这不仅造成了能源浪费,还大大影响了设备和灯具的使用寿命。而且,我国绝大多数地区的路灯关开灯都是采用人工控制或者定时控制,这样也有许多不利之处:若采用人工控制,则路灯开关存在着一定的不确定性,同时也占用了一定的人力资源;定时控制则存在着夏冬季白黑昼时间不同的情况,使得天还没黑路灯就开,天还没亮路灯就灭的情况,大大影响了人们的日常出生活。

1.2 现状分析

随着社会经济的不断发展,能源短缺已经日益制约着经济发展的严重障碍,其中电力短缺已成为制约国民经济的突出矛盾。我国目前的市场上有多种路灯节

能控制产品,能达到一定的节能效果,但就功能和效果上还不能尽如人意,主要有以下几种情况:第一种,采用自耦变压器及磁饱和电抗器的降压技术。其不足是由于反应速度较慢,用电高峰时电压降到非稳定区容易造成灯光闪灭,不能自动调节,同时如果电压突然升高,则会对灯具造成损坏,相对来说稳压效果较差;第二种是采用电子器件构成的可控硅式设备。该设备主要采取简单的相控技术,不足之处是元器件较容易发热损坏。而为了更好的达到控制的目的,现在国内外都开始采用智能控制方式,如光控、声控、时控等,国外甚至开始采用太阳能供能光控方式来控制路灯,基本可以达到完全自给自足的效果。而本文中研究的就是光控路灯的控制器设计。

2 总体电路设计及方案论证

2.1 总体电路设计

本次毕业设计课题是《基于单片机的光控路灯的设计》。此课题要求以路灯控制器为对象,完成硬件系统和软件程序的设计,实现以光线强弱方式来控制路灯的亮灭功能,属于软硬件相结合的题目。其中硬件电路部分主要包括以下几个部分:单片机最小系统、路灯控制电路部分、光电检测电路部分;软件部分主要包括二个电子软件Protues、 Keil-C51软件和路灯控制、光电检测两个程序模块。工作原理如下图所示:

外部光线强度光电检测单片机路灯控制图2-1 工作原理图

2.2 设计方案

硬件电路设计由6个部分组成; LM324放大电路,A/D转换电路,AT89C51单片机系统,LED显示系统、时钟电路、复位电路。

3 单片机介绍

3.1 单片机概述

单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(CPU)、随机数据存储器(RAM)、只读存储器(ROM)、输入/输出电路(I/O口)等电路集成到单片芯片上,构成一个最小而完善的计算机系统。有时还包括定时器/计数器,串行通信口、显示驱动电路(LCD或LED驱动电路)、脉宽调制电路(PWM)、模拟多路转换器以及A/D转换器等电路,并具有独立的指令系统[3]。这些电路能在软件控制之下,准确、迅速、高效地完成程序设计者事先规定的任务。它能够单独地完成现代工业控制系统所要求的智能化控制功能。

单片机不同于单板机,芯片在没有开发出来以前,只具有功能极其强大的超大规模集成电路,如果再赋予它特定的程序,它便是一个最小的、完整的微型计算机控制系统。单片机的使用需要用户了解其芯片的内部结构和相应的指令系统以及其他一些集成电路设计技术和系统设计所需要的理论技术。在特定的程序控制下,就能使该芯片实现特定的功能。

然而,不同单片机的硬件结构和指令系统不尽相同,即它们的技术特征也不同,硬件特征主要和单片机芯片的内部结构有关,因此,设计人员必须熟练掌握其性能是否满足需要的功能和应用系统所要求的特性指标(功能特性、控制特性和相关的电气参数特性等),这些信息我们可以从生产厂商的技术手册中得到。指令特性则指我们熟悉的单片机寻址方式、数据处理和逻辑处理方法、输入/输出特性等。开发环境包括指令的兼容性及可移植性,软、硬件资源等。要利用单片机开发实际的应用系统,就必须掌握其硬件结构特征、指令系统和开发环境。

单片机控制系统已基本取代了以前复杂的电子线路或数字电路构成的控制系统,用软件来实现产品的智能化。现在,单片机的控制范畴无所不在,其应用领域也越来越广泛。

单片机的应用意义远不限于它的应用范畴或由此带来的经济效益,更重要的是它从根本上改变了传统的控制方法和设计理念,向着嵌入式系统方向发展。随着嵌入式系统的快速发展和在各行各业的深入应用,人们的电子设备的小型化、智能化的要求也越来越高。在航空航天、机械加工、工程控制、智能仪器仪表、家用电器、通信系统等领域,单片机都正在发生着非常重要的作用。单片机应用技术业已成为现代电子技术应用领域十分重要的高新技术之一,是电子工程技术人员必备的知识技能,它能使你设计出更具智能化和方便的产品。

单片机及其应用系统之所以能发挥着如此重要的作用,归纳起来有如下的原因:

(1)单片机具有体积小、功能强、价格低、使用灵活等特点,具有明显的优势和广阔的应用前景。

(2)单片机具有独立的指令系统,可以将我们的设计思想充分表达出来,使产品智能化。

(3)系统配置以满足控制对象的要求出发点,使得系统具有较高的性价比。 (4)应用系统通常将程序驻留在片内(外)ROM中,抗干扰能力强,可靠性高,使用方便。

(5)单片机本身并不具备开发能力,一般情况下,需要借助专用的开发工具在相应的开发环境下,进行系统的开发和调试,但最终形成的产品简单实用,成本低,效益高。

(6)单片机应用系统所使用的存储芯片可选用EPROM、EEPROM、OTP芯片或利用掩膜形式生产,便于批量生产和应用。大多数单片机如51系列,开发芯片和扩展应用芯片相互配套,降低了系统成本。

(7)由于系统小巧玲珑,控制功能强、体积小,便于嵌入被控设备内,大大推动了产品的智能化。

单片微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

单片机经过1、2、3、4代的发展,以达到了32位单片机,是目前单片机的顶级产品,具有极高的运算速度。随着微电子技术和集成电子技术的不断发展,单片机正朝着高集成度、低功耗、低电压、多功能方向发展。MCS-51系列单片是众多单片机中的一种,由于它们都是基于8051内核发展起来的,所以称51单片机,而本次设计就是基于51单片机完成的。 3.2 单片机的主要功能及应用领域

现在的单片机功能越来越强大,集成度越来越高,有很多曾经的外围器件都已经在内部集成。

它的功能很多:比较器;模数/数模转换器;PWM;多种多样的接口;LCD驱动;存储器等等。同时它也是计算机—单片微型计算机。部分单片机的计算能力已经比早期PC的CPU强大,速度也越来越快。甚至也有类似双核CPU的设计出现。因为能够运行程序,所以可以做很多的事情。几乎您上网用的计算机能做的事情,它都同样能做。只是能力没那么强大。比如:可以读写硬盘、可以接受按键输入、可以显示输出、可以驱动打印、您甚至可以给它接个鼠标。当然这可能涉及一些接口的问题,但是CPU也不是直接做这些事情的。

它的输入输出,如前面所说,也是多种多样的。可以是模拟量,也可以是数字量,标准的USB接口也已经集成在了单片机内部。

此外,单片机的体积小、价格低、可靠性高、适用面宽、有着其本身的指令系统等诸多优势,在各行各业都得到广泛应用。单片机的应用领域可归纳为几个方面:

(1)智能化家用电器:各种家用电器普遍采用单片机智能化控制代替传统的电子线路控制,升级换代,提高档次。如洗衣机、空调、电视机、录像机、微波炉、电冰箱、电饭煲以及各种视听设备等。

(2)办公自动化设备:现代办公室使用的大量通信和办公设备多数嵌入了单片机。如打印机、复印机、传真机、绘图机、考勤机、电话以及通用计算机中的键盘译码、磁盘驱动等。

(3)商业营销设备:在商业营销系统中已广泛使用的电子秤、收款机、条形码阅读器、IC卡刷卡机、出租车计价器以及仓储安全监测系统、商场保安系统、空气调节系统、冷冻保险系统等都采用了单片机控制。

(4)工业自动化控制:工业自动化控制是最早采用单片机控制的领域之一。如各种测控系统、过程控制、机电一体化、PLC等。在化工、建筑、冶金等各种工业领域都要用到单片机控制。

(5)智能化仪表:采用单片机的智能化仪表大大提升了仪表的档次,强化了功能。如数据处理和存储、故障诊断、联网集控等。

(6)智能化通信产品:最突出的是手机,当然手机内的芯片属专用型单片机。

(7)汽车电子产品:现代汽车的集中显示系统、动力监测控制系统、自动驾驶系统、通信系统和运行监视器(黑匣子)等都离不开单片机。

(8)航空航天系统和国防军事、尖端武器等领域:单片机的应用更是不言而喻。

单片机应用的意义不仅在于它的广阔范围及所带来的经济效益,更重要的意义在于,单片机的应用从根本上改变了控制系统传统的设计思想和设计方法。以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。以前自动控制中的PID调节,现在可以用单片机实现具有智能化的数字计算控制、模糊控制和自适应控制。这种以软件取代硬件并能提高系统性能的控制技术称为微控技术。随着单片机应用的推广,微控制技术将不断发展完善。 3.3 单片机的发展趋势

随着微电子技术和集成电路技术的迅速发展,目前各个公司研制出了能够适用于各种领域的单片机。高性能单片机芯片市场也异常活跃,采用新技术,使单片机的种类、性能不断提高,应用领域迅速扩大[4]。单片机的改进和发展归纳起

来有以下几个方面:

(1)CPU的改进:现在CPU开始采用双CPU结构,提高了芯片的处理能力。 (2)存储器的发展:增大了片内存储器容量;片内采用EEPROM和Flash可在线编程,读/写更方便;采用了编程加密技术。

(3)内部资源增多:片内资源越丰富,产品的体积就越小,可靠性就越高。 (4)I/O接口形式增多,性能提高。

(5)引脚的多功能化:单片机现在普遍采用管脚复用的设计方案。 (6)低电压和低功耗:单片机制造时普遍采用CMOS工艺。

4 硬件电路设计

4.1 AT89c51简介

MCS-51系列单片机是由美国的Intel公司开发研制,并于1980年推出的产品。与MCS-48系列单片机相比,其以典型的体系结构和完善的专用寄存器集中管理方式,方便的逻辑位操作功能及丰富的指令系统[5],堪称一代“名机”,为之后的其他单片机的发展奠定了基础。因此,MCS-51系列单片机结构先进,功能强大,增加了更多的电路单元和功能模块,指令数达111条。其中的代表作便是AT89C5x系列单片机,而本文所用的便是AT89C51单片机。现简要介绍如下:

1. 中断系统

8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。

2. 时钟电路

8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。

4.2 光敏电阻介绍

光敏电阻是一种特殊的电阻,其阻值随着光线强度的变化而变化。其工作原理是基于内光电效应。在半导体光敏材料两端装上电极引线,将其封装在带有透明窗的管壳里就构成光敏电阻如图所示。为了增加灵敏度,两电极常做成梳状。构成光敏电阻的材料有金属的硫化物、硒化物、碲化物等半导体。

半导体的导电能力取决于半导体导带内载流子数目的多少。当光敏电阻受到光照时,价带中的电子吸收光子能量后跃迁到导带,成为自由电子,同时产生空穴,电子—空穴对的出现使电阻率变小。光照愈强,光生电子—空穴对就越多,

阻值就愈低。当光敏电阻两端加上电压后,流过光敏电阻的电流随光照增大而增大。入射光消失,电子-空穴对逐渐复合,电阻也逐渐恢复原值,电流也逐渐减小。

在光敏电阻两端的金属电极之间加上电压,其中便有电流通过,受到适当波长的光线照射时,电流就会随光强的增加而变大,从而实现光电转换。光敏电阻没有极性,纯粹是一个电阻器件,使用时既可加直流电压,也可以加交流电压。

光敏电阻是采用半导体材料制作,利用内光电效应工作的光电元件。它在光线的作用下其阻值往往变小,这种现象称为光导效应,因此,光敏电阻又称光导管。用于制造光敏电阻的材料主要是金属的硫化物、硒化物和碲化物等半导体。通常采用涂敷、喷涂、烧结等方法在绝缘衬底上制作很薄的光敏电阻体及梳状欧姆电极,然后接出引线,封装在具有透光镜的密封壳体内,以免受潮影响其灵敏度。光敏电阻的原理结构如图所示。在黑暗环境里,它的电阻值很高,当受到光照时,只要光子能量大于半导体材料的禁带宽度,则价带中的电子吸收一个光子的能量后可跃迁到导带,并在价带中产生一个带正电荷的空穴,这种由光照产生的电子—空穴对增加了半导体材料中载流子的数目,使其电阻率变小,从而造成光敏电阻阻值下降。光照愈强,阻值愈低。入射光消失后,由光子激发产生的电子—空穴对将逐渐复合,光敏电阻的阻值也就逐渐恢复原值[9]。

图4-3 光敏电阻原理图

在光敏电阻两端的金属电极之间加上电压,其中便有电流通过,受到适当波长的光线照射时,电流就会随光强的增加而变大,从而实现光电转换。光敏电阻没有极性,纯粹是一个电阻器件,使用时既可加直流电压,也可以加交流电压。

4.3 LM324运算放大器

4.3 1 LM324简介

LM324芯片是价格便宜的模拟电路中常用的带差动输入功能的四运算放大

器。可工作在单电源下,电压范围是3.0V-32V或+16V。其特点可归纳如下:(1)

短跑保护输出(2)真差动输入级(3)可单电源工作:3V-32V(4)低偏置电流:最大100nA(LM324A)(5)每封装含四个运算放大器。(6)具有内部补偿的功能。(7)共模范围扩展到负电源 (8)行业标准的引脚排列(9)输入端具有静电保护功能

[10]

。由于LM324芯片四运放电路具有电源电压范围宽,静态功耗小,可单电源使

4.3.2主放大器设计

众多需要检浏的微弱光信号通常都是通过各种传感器来进行非电量的转换,

用,价格低廉等优点,因此被广泛应用在各种电路中。

从而使检测对象转变为电量(电流或电压)。由于所测对象本身为微弱量,同时受各种不同传感器灵敏度的限制,因而所得到的电量自然是小信号,一般不能直接用于采样处理。本设计中的光电二极管前置放大电路主要起到电流转电压的作用,但后续电路一般为A/D转换电路,所需电压幅值一般为2 V。然而,即使是这样,而输出的电压信号一般还需要继续放大几百倍,因此还需应用主放大电路。其典型放大电路如图4所示。

该主放大器的放大倍数为A=l+R2/R3,其中R2为反馈电阻。为了后续电路的正常工作,设计时需要设定合理的R2和R1值,以便得到所需幅值的输出电压。即有

4.4 单片机最小系统电路

单片机最小系统是单片机系统的核心,其他的外围电路都是在最小系统的基础上实现的。单片机最小系统是由单片机、复位电路、时钟电路、电源和地端组成,一般情况下,单片机系统采用外接石英晶体与内部运放组成时钟振荡器作为

系统时钟源,而在多机系统中,单片机只作为一个功能模块使用,为节省硬件和统一系统的时钟信号,常采用外时钟源。单片机最小系统是单片机控制电路的核心[11]。

在整个系统中,单片机控制电路是整个系统的核心,负责对光电检测电路采集到光信号进行处理和加工,并按照之前设定好的指令进行执行、运算,并将结果传送给相应的执行电路。

单片机控制电路相关的电路原理图如下图所示:

4.5 光电检测电路

在设计中使用光敏电阻作为光传感器件对外界光线进行检测,主要是利用了光敏电阻在光线的作用下其阻值往往变小的这种光导效应现象,也有基于光敏二极管、光敏三极管等光电检测元件的相关电路,如下图所示是光电检测电路将检测到的信号以高低电平的形式传送给单片机,从而完成整个光电检测的过程。

4.6 A/D转换模块

本试验采用的A/D芯片为ADC0804,它是CMOS 8位单通道逐次渐近型的模/数转换器,其规格及引脚图如图3所示,根据手册我们可以得到各个引脚的大致功能如下:

/CS:芯片片选信号,低电平有效,即/CS=0,该芯片才能正常工作,在外接多个ADC0804芯片时,该信号可以作为选择地址使用,通过不同的地址信号使能不同的ADC0804芯片,从而可以实现多个ADC通道的分时复用。

/WR:启动ADC0804进行ADC采样,该信号低电平有效,即/WR信号由高电平变成低电平时,触发一次ADC转换。

/RD:低电平有效,即/RD=0时,可以通过数据端口DB0~DB7读出本次的采样结果。

UIN(+)和UIN(-):模拟电压输入端,模拟电压输入接UIN(+)端,UIN(-)端接地。双边输入时UIN(+)、UIN(-)分别接模拟电压信号的正端和负端。当输入的模拟电压信号存在“零点漂移电压”时,可在UIN(-)接一等值的零点补偿电压,变换时将自动从UIN(+)中减去这一电压。

VREF/2:参考电压接入引脚,该引脚可外接电压也可悬空,若外界电压,则ADC的参考电压为该外界电压的两倍,如不外接,则Vref与Vcc共用电源电压,此时ADC的参考电压即为电源电压Vcc的值。

CLKR和CLKIN:外接RC电路产生模数转换器所需的时钟信号,时钟频率CLK = 1/1.1RC,一般要求频率范围100KHz~1.28MHz。

AGND和DGND:分别接模拟地和数字地。

/INT:中断请求信号输出引脚,该引脚低电平有效,当一次A/D转换完成后, 将引起/INT=0,实际应用时,该引脚应与微处理器的外部中断输入引脚相连(如51单片机的INT0,INT1脚),当产生/INT信号有效时,还需等待/RD=0才能正确读出A/D转换结果,若ADC0804单独使用,则可以将/INT引脚悬空。 DB0~DB7:输出A/D转换后的8位二进制结果。

4.7 硬件电路原理图

经过长时间的设计,仿真,才得出了本次毕业设计的硬件电路部分。通过前面的分析,我们可以发现本次设计课题的硬件电路部可分为以下四个组成部分:单片机控制电路部分、路灯控制电路部分、光电检测与执行电路部分和两位一体的数码显示电路电路部分。

将前面介绍的电路加以分析和组合,就可以得到整个硬件电路部分的相关原理图,现将硬件原理图表示如下:

5 软件设计

5.1 protues软件介绍

Proteus软件是英国Labcenter electronics公司出版的EDA工具软件[13]。

它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

其功能特点如下: Proteus软件具有其它EDA工具软件(例:multisim)的功能。这些功能是:原理布图;PCB自动或人工布线;SPICE电路仿真。

其功能特点如下:Protues软件具有其它EDA工具软件(例:multisim)的功能。这些功

能是:(1)原理布图 (2)PCB自动或人工布线 (3)SPICE电路仿真

革命性的特点: (1)互动的电路仿真。用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。 (2)仿真处理器及其外围电路。可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,Protues建立了完备的电子设计开发环境。

5.2 keil c51简介

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统[14],与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。

Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

5.3 程序设计总方案

根据模块的划分原则,将该程序划分初始化模块,A/D转换子程序和显示子程序,这三个程序模块构成了整个系统软件的主程序,如图12所示。

开始 初始化 调用A/D转换子程序 调用显示子程序 结束

6 系统调试及仿真

6.2 系统仿真

系统的硬件及软件都已经调试完成,然后利用protues进行系统仿真。在仿真中,利用光敏电阻模拟天黑天亮,用滑动变阻器来调整光亮的强度。 仿真图如下所示

然后,调整滑动变阻器阻值,使之达到天黑的效果。此时,单片机控制路灯亮,仿真效果图如下所示:

7 总结

本次课程设计是以基于单片机的光控路灯控制器为研究对象,通过对控制系统所要完成的功能进行分析,从而确定所要用到的元器件,然后根据其工作原理将各个功能部分进行组合连接,完成其硬件图。然后利用C51编程软件根据系统的功能要求进行编程,导入单片机中,最后进行调试及仿真。

在整个设计过程中,指导老师的认真讲解以及同学们的热心帮助让我收获了很多,不仅学会了两款新的软件protues和KEIL C51,也了解了单片机的一些工作原理及常见的用途。在此对所有帮助过我的老师和同学表示真挚的感谢

参考文献

1.《单片微型计算机原理、应用及接口技术》 张迎新主编,国防工业出版社。

2.《单片机原理与接口技术》 余锡存主编 西安电子科技大学出版社 3.《微型计算机技术及应用》 戴梅萼 编著 清华大学出版社 4.《微型计算机原理及应用》 李伯成 主编 西安电子科技大学出版社

5.《微机原理及应用》张宗根 主编 陕西师范大学出版社

八 附录

电路图

程序

#include

#define uchar unsigned char

#define uint unsigned int sbit rs=P2^5; sbit lcden=P2^7; sbit wr=P2^6;

sbit WRR=P3^6; sbit RDD=P3^7; sbit CS=P2^0;

sbit k1=P2^1; sbit k2=P2^2; sbit k3=P2^3;

uchar love=0; void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); }

void write_com(uchar com) { rs=0; wr=0; lcden=0; delay(1); P0=com; delay(1); lcden=1; delay(1); lcden=0; }

void write_date(uchar date) { rs=1; wr=0; lcden=0; P0=date; delay(1); lcden=1;

delay(1); lcden=0; }

void init_lcd() { lcden=0; write_com(0x38); delay(1); write_com(0x0c); delay(1); write_com(0x06); delay(1); write_com(0x01); delay(1); write_com(0x80); delay(1); write_date('L');

write_com(0x81); delay(1); write_date('o'); write_com(0x82); delay(1); write_date('v'); write_com(0x83); delay(1); write_date('e'); write_com(0x84); delay(1); write_date(' '); write_com(0x85); delay(1); write_date('D'); write_com(0x86); delay(1); write_date('o'); write_com(0x87);

delay(1); write_date('n'); write_com(0x88); delay(1); write_date('g'); write_com(0x89); delay(1); write_date(' '); write_com(0x8a); delay(1); write_date('S'); write_com(0x8b); delay(1); write_date('h'); write_com(0x8c); delay(1); write_date('e'); write_com(0x8d); delay(1); write_date('n'); write_com(0x8e); delay(1); write_date('g'); }

void write_sfm(uchar add,uchar date) { uchar ge,shi; shi=date/10; ge=date; write_com(0x80+0x40+add); write_date(0x30+shi); write_date(0x30+ge); }

void init_ad() {

P1=0; P0=0; CS=0; }

void start() { WRR=0; WRR=1; }

void main() { uchar result; k1=0; k2=0; k3=0; init_ad(); init_lcd(); P1=0xff; while(1) { //P1=0; CS=0; start(); delay(5); RDD=0; delay(8); result=P1; RDD=1; delay(20); //lcdinit(); P0=~result; //while(1); //result=result/256*5; /* lcdwritetable(0x83,\ lcddisplay(0x80+0x40+5,result*5/256+48); lcddisplay(0x81+0x40+5,'.'); lcddisplay(0x82+0x40+5,result*5*10/256+48); lcddisplay(0x83+0x40+5,result*5*100/256+48); lcddisplay(0x84+0x40+5,'V'); delay(1000); */ //P0=P1; if(((result*5/256)>=2)&&((result*5*10/256)>=2))

}

{ k1=1; k2=1; k3=1; } else{ k1=0; k2=0; k3=0; }

write_com(0x80+0x40+5); write_date(result*5/256+'0'); write_com(0x80+0x40+6); write_date('.');

write_com(0x80+0x40+7);

write_date(result*5*10/256+'0'); write_com(0x80+0x40+8);

write_date(result*5*100/256+'0'); write_com(0x80+0x40+9); write_date('V');

delay(10); }

本文来源:https://www.bwwdw.com/article/bn75.html

Top