




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 . . . I / 28基于单片机温度检测系统设计摘要温度是表征物体冷却程度的物理量,也是一种最基本的环境参数。在农工业生产与日常生活中,对温度的测量与控制始终占据着极其重要的地位。目前,以 DS18B20 为代表的新型单总线数字是温度传感器和 A/D 转换器于一体,直接输出数字量,与单片机接口结构简单,广泛用于距离远,节点分布多的场合,具有较强的推广应用价值,采用单片机对它们进行控制不仅具有控制方便,简单灵活性大等特点,而且还可以大幅度提高被控温度的技术指标,从而能够大大提高产品质量,因此,智能化温度传感技术正被广泛地采用。本温度设计采用现在流行的 AT89C52 单片机,配以 DS18B
2、20 数字温度传感器,该温度传感器可自行设置温度上下限,单片机将检测到的温度信号与输入的温度上,下限进行比较。本设计加入了 1602 液晶显示屏显示,使整个设计更加完整,灵活。随着社会经济的不断发展,现代农业生产离不开环境控制,本文在对国外温室智能控制进行深入分析的基础上,针对温室智能化控制存在的诸多因子,将智能传感器监测和单片机控制相结合,提出了基于单片机的温度检测系统设计方案。本系统采用层次化、模块化设计,整个系统由数据采集系统、单片机控制系统、计算机监控系统组成。系统以单片机为核心,以多个温度、湿度传感器作为测量元件,通过单片机与智能传感器相连,采集存储智能传感器的测量数据。在单片机系统
3、中,还要实现程序的扩展存储、数据的实时显示、超限语音报警和数据辅助存储功能。单片机作为监控计算机与智能传感器连接的中心。本设计主要做了如下几方面的工作:一是确定系统的总体设计方案,包括其功能设计;设计原则;组成与工作原理;二是进行智能传感器的硬件电路设计;包括硬件电路构成与测量原理;温度传感器的选择;单片机的选择;输入输出通道设计;三是进行了调试和仿真,包括硬件仿真和软件仿真。 . . . i / 28目录目录第一章引言第一章引言 1 11.1 设计目的 11.2 设计产品功能 2第二章总体设计方案第二章总体设计方案 2 2第三章温度控制系统设计基础第三章温度控制系统设计基础 4 43.1 温
4、度传感器的历史发展 43.2 DS18B20 数字温度传感器简介 53.2.1 温度传感器部结构 53.2.2 DS18B20 产品的特点 63.2.3 DS18B20 引脚图与引脚功能介绍 63.2.4 DS18B20 的使用方法 73.3 DS18B20 的测温原理 8第四章系统总体设计第四章系统总体设计 9 94.1 1602 液晶显示器和单片机接口技术 94.1.1 1602 液晶显示器简介 94.1.2 功能管脚 104.1.3 特性应用 104.1.4 1602 与单片机接口电路 114.2 单片机单元 114.2.1 AT89C51 单片机简介 114.2.2 晶振电路 144.
5、2.3 复位电路 144.3 系统的硬件组成与设计原理 15第五章系统软件设计第五章系统软件设计 15155.1 程序流程图 155.2 程序 16总结总结 2626致致 2727参考文献参考文献 2828附录附录 2929 . . . 1 / 28第一章第一章 引引 言言随着社会的发展,科技的进步,以与测温仪器在整个领域的应用,智能化已实现待温度控制系统发展的主流方向。温度控制不好可能引起生产安全,产品质量和产量等一系列问题,智能温度控制是许多机器的重要构成部分,它的功能是将温度控制在所需要的温度围,然后进行共建的加工和处理,不论是在生活中还是工业生产过程中,温度的变化对生活,生产的某些细节
6、环节都会造成不同程度的影响,所以适时地对温度进行控制,设计一个温度控制系统,具有广泛的应用前景与实际意义。温度是科技最基本的物理量之一,物理,化学,生物等学科都离不开温度,在工业生产和实验研究中,温度常常是表征对象和过程状态的最重要参数之一。比如,发电厂锅炉的温度必须控制在一定围之一;许多化学反应的工艺过程必须在适当的温度下才能正常进行;炼油过程中,原油必须在不同的温度和压力条件下进行分馏才能得到汽油,柴油,煤油等产品。没有合适的温度,许多电子设备就不能正常工作。因此,各行各业对温度控制的要求越来越高,可见温度的测量和控制是非常重要的。单片机在电子产品的应用已越来越广泛,在很多的电子产品中也用
7、到了温度检测和温度控制。随着温度控制器应用围的日益广泛和多样性,各种适用于不同场合的智能温度控制系统应运而生。1.11.1 设计目的设计目的本设计的容是温度测试控制系统,控制对象是温度,温度控制在日常生活与工业领域相当广泛,比如温度,水池,发酵缸等场所的温度控制。而以往温度控制是由人工完成的而且不够重视,其实在很多场所温度都需要监控以防止意外发生。针对此问题,本系统设计的目的是本课题综合了现代测控技术、电子信息、计算机技术专业领域方方面面的知识,具有综合性、科学性、代表性,可全面检验和促进学生的理论素养和工作能力。掌握一个显示屏和一个温度传感器的原理、性能、使用特点和方法,利用单片机对系统进行
8、编程。 . . . 2 / 28实现一种可连续高精度调温的温度控制系统,它应用广泛、功能强大、小巧美观、便于携带,是一款既实用又廉价的控制系统。本课题的研究可以使学生更好的掌握基于单片机应用系统的分析与设计方法,培养创新意识、协作精神和理论联系实际的学风,提高电子产品研发素质、增强针对实际应用系统设计制作的能力。1.21.2 设计产品功能设计产品功能通过搭建 51 单片机最小系统与周边电路,可是本产品具有以下功能与特点:1. 实现温度计功能,可实现实时显示和报警。2. 实现数字万年历功能。3. 所有 I/O 口全部引出,方便进行二次开发。第二章第二章 总体设计方案总体设计方案温度检测系统有着共
9、同的特点:测量点多,环境复杂,布线分散,现场离控制室远等。若采用一般温度传感器采集温度信号,则需设计信号调理电路,A/D 转换与相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。这样,由于各种因素会造成检测系统较大的偏差;又因检测环境复杂,测量点多,信号传输距离远与各种干扰的影响,会使检测系统的稳定性和可靠性下降,所以温度检测系统的设计关键在于两部分:温度传感器的选择和主控单元的设计。温度传感器应用围广,使用数量庞大,也高居各类传感器之首。首先由温度传感器 DS18B20 采集温度数据,经 AT8C52 单片机中进行运算处理,并液晶屏显示当前温度,由单片机控制是否发出控
10、制信号与报警信号,从而实现恒温监控。在整个过程中,温度始终得以显示,设定温度过程中显示设定温度值,以便于操作。设定完毕后,改为显示当前测定温度值。本系统的电路设计主要有六部分主成:主控制部分芯片采用单片机AT89C51显示部分采用 1602 液晶显示屏实现;温度采集部分采用 DS18B20温度传感器;报警部分蜂鸣器的使用;供电部分;独立按键部分用于控制万年历1. 主控制部分 . . . 3 / 28此部分是电路的核心部分,系统控制采用了单片机 AT89C51,有 Atmel 公司生产的 AT89C51 是一种低功耗,高性能的微控制器,具有 8K 在线系统可编程Flash 存储器,单片机 AT8
11、9C51 具有低电压供电和体积小等特点,四个端口只需要两个就能满足电路系统的设计要求,很适合便携手持式产品的设计使用2显示电路采用技术成熟,价格便宜的 1602 液晶显示器作为输出显示。本次设计使用的 1602 液晶显示器为 5V 电压驱动,带背光,可显示两行,每行 16 个字符,不能显示汉字,置 128 个字符的 ASCII 字符集字库,只有并行接口,无串口接口。3. 温度采集部分DS18B20 温度传感器是美国 DALLAS 公司生产的 1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。可直接
12、读出被测温度。这一部分主要完成对温度温度信号的采集和转换工作,由 DS18B20 数字式温度传感器与其与单片机的接口部分主成,DS18B20 数字式温度传感器把采集到的温度通过数据引脚传到单片机接受温度并存储,此部分只用到 DS18B20 和单片机,硬件很简单。DS18B20 数字式温度传感器通常采用两种方式供电,一种是寄生电源供电方式,另一种是采用外部电源供电方式,此时 DS18B20 的 1 引脚接地,2 引脚作为信号线,3 引脚接电源,本设计采用外部供电方式,外部电源供电方式是DS18B20 最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,可以开发出稳定可靠的多点温度监控
13、系统。 图 2-2 DS18B20 与单片机接口电路4 报警部分此处三极管选取型号为 8550 的 PNP 型三极管,管脚排列见下图 . . . 4 / 28图 2-3 蜂鸣器电路5. 独立按键部分图 2-4 独立按键电路6. 单片机最小系统图 2-5 最小系统第三章第三章 温度控制系统设计基础温度控制系统设计基础3.13.1 温度传感器的历史发展温度传感器的历史发展温度的测量是从热胀冷缩开始,水银温度计至今仍是各种温度计测量的计量标准,可是它的缺点是只能近距离观测,而且水银有毒玻璃管易碎,代替水银的有酒精温度计和金属簧片温度计,它们虽然没有毒性,但测量精度较低,只能作为一个概略指示,不过在居
14、民宅中使用已可满足要求,在工业生产和实验研究中心为了配合远传仪表指示,出现了许多不同的温度检测方法,常用的 . . . 5 / 28有电阻式、热电偶式、PN 结型、辐射型、光纤式与石英谐振型等。它们都是基于温度变化引起其物理参数的变化的原理。随着大规模的集成电路工艺的提高,出现了多种集成的数字化温度传感器。然而测量温度的关键就是温度传感器,温度传感器的发展经历了三个发展阶段:传统的分立式温度传感器;模拟集成温度传感器;只能集成温度传感器。目前典型的温度测控系统由模拟式温度传感器和单片机组成。由于模拟式温度传感器输出的模拟信号必须经过 A/D 转换环节获得数字信号后才能与单片机等微处理器连接,因
15、而使得硬件电路结构复杂,成本较高。因此目前国际上新型温度传感器正从模拟向数字式,从集成化向智能化,网络化的方向飞速发展,以 DS18B20 为代表的新型单总线数字式温度传感器集温度测量和 A/D 转换于一体,直接输出数字量,与单片机接口电路结构简单,广泛使用距离远、节点分布多的场合,具有较强的推广和应用价值。3.23.2 DS18B20DS18B20 数字温度传感器简介数字温度传感器简介3.2.13.2.1 温度传感器部结构温度传感器部结构DS18B20 数字温度传感器是 DALLAS 公司生产的 1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,
16、在一根通信线,可以挂很多这样的数字温度计,十分方便。 . . . 6 / 28图 3-1 温度传感器部结构3.2.2DS18B203.2.2DS18B20 产品的特点产品的特点 独特的单线接口仅需一个端口引脚进行通讯 简单的多点分布应用 无需外部器件 可通过数据线供电 零待机功耗 测温围-55+125,以 0.5递增。华氏器件-67+2570F,以 0.90F 递增 温度以 9 位数字量读出 温度数字量转换时间 200ms(典型值) 用户可定义的非易失性温度报警设置 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件 应用包括温度控制、工业系统、消费品、温度计或任何热感测系统3.2.
17、3DS18B203.2.3DS18B20 引脚图与引脚功能介绍引脚图与引脚功能介绍TO92 封装的 DS18B20 的引脚排列见图 3-2,其引脚功能描述见表 3-1。图 3-2 DS18B20 的引脚图表 3-1DS18B20 详细引脚功能描述 . . . 7 / 28序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的 VDD 引脚。当工作于寄生电源时,此引脚必须接地。3.2.4DS18B203.2.4DS18B20 的使用方法的使用方法由于 DS18B20 采用的是 1Wire 总线协议方式,即在一根
18、数据线实现数据的双向传输,而对 AT89S51 单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对 DS18B20 芯片的访问。由于 DS18B20 是在一根 I/O 线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20 有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先
19、。DS18B20 的复位时序DS18B20 的读时序对于 DS18B20 的读时序分为读 0 时序和读 1 时序两个过程。对于 DS18B20 的读时隙是从主机把单总线拉低之后,在 15 秒之就得释放单总线,以让 DS18B20 把数据传输到单总线上。DS18B20 在完成一个读时序过程,至少需要 60us 才能完成。DS18B20 的写时序对于 DS18B20 的写时序仍然分为写 0 时序和写 1 时序两个过程。对于 . . . 8 / 28DS18B20 写 0 时序和写 1 时序的要求不同,当要写 0 时序时,单总线要被拉低至少 60us,保证 DS18B20 能够在 15us 到 45
20、us 之间能够正确地采样 IO 总线上的“0”电平,当要写 1 时序时,单总线被拉低之后,在 15us 之就得释放单总线。3.33.3 DS18B20DS18B20 的测温原理的测温原理DS18B20 是 DALLAS 公司生产的一线式数字温度传感器,具有 3 引脚 TO-92小体积封装形式;温度测量围为-55+125,可编程为 9 位12 位 A/D 转换精度,测温分辨率可达 0.0625,被测温度用符号扩展的 16 位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个 DS18B20 可以并联到 3 根或 2 根线上,CPU 只需一根端口线就能与诸多 DS18B2
21、0 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路.低温度系数晶振的震荡频率受温度的影响很小,用于产生固定频率脉冲信号送给减法计数器 1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器 2 的脉冲输入,途中还隐含着计数门,当计数门打开时,DS18B20 就对低温度系数晶振器产生的时钟脉冲进行计数,进而完成温度测量,计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55所对应的一个基值,减法计数器 1 对低温度系数晶振产生的脉冲信号进行减法计数。当减法计数器 1 的预值减到 0 时,温度寄存器的值将加 1,减法计数器 1 的预值将从新被装入,减法计数
22、器 1 从新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环,直到减法计数器 2 计数到 0 时,停止温度寄存器值得累加,此时温度寄存器中的数值即为所测温度。对于 DS18B20 的使用,多采用单片机实现数据采集,处理时,将 DS18B20信号线与单片机一位口线相连,单片机可挂接多片 DS18B20,从而实现多点温度检测系统。 . . . 9 / 28第四章第四章 系统总体设计系统总体设计4.14.1 16021602 液晶显示器和单片机接口技术液晶显示器和单片机接口技术4.1.14.1.1 16021602 液晶显示器简介液晶显示器简介1602LCD 是指显示的容为 16X2,即可以显示
23、两行,每行 16 个字符液晶模块(显示字符和数字) 。目前市面上字符液晶绝大多数是基于 HD44780 液晶芯片的,控制原理是完全一样的,因此基于 HD44780 写的控制程序可以很方便地应用于市面上大部分的字符型液晶。工业字符型液晶,能够同时显示 16x02 即 32 个字符。 (16 列 2 行)注:为了表示的方便 ,后文皆以 1 表示高电平,0 表示低电平。1602 液晶也叫1602 字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个 5X7 或者 5X11 等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了
24、字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义 CGRAM,显示效果也不好) 。 1602LCD 是指显示的容为 16X2,即可以显示两行,每行16 个字符液晶模块(显示字符和数字) 。 目前市面上字符液晶绝大多数是基于 HD44780 液晶芯片的,控制原理是完全一样的,因此基于 HD44780 写的控制程序可以很方便地应用于市面上大部分的字符型液晶。4.1.24.1.2 功能管脚功能管脚图 4-1 1602 管脚图1602 采用标准的 16 脚接口,其中:第 1 脚:VSS 为电源地第 2 脚:VCC 接 5V 电源正极第 3 脚:V0 为液晶显示器对比度调整端,接正电
25、源时对比度最弱,接地电源时对比度最高(对比度过高时会 产生“鬼影” ,使用时可以通过一个 10K 的电位器调整对比度) 。第 4 脚:RS 为寄存器选择,高电平 1 时选择数据寄存器、低电平 0 时选择指令寄存器。第 5 脚:RW 为读写 . . . 10 / 28信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。第 6 脚:E(或 EN)端为使能(enable)端。第 714 脚:D0D7 为 8 位双向数据端。第 1516 脚:空脚或背灯电源。15 脚背光正极,16 脚背光负极。4.1.34.1.3 特性应用特性应用+3.3V 电压,对比度可调 含复位电路 提供各种控制命令,如:
26、清屏、字符闪烁、光标闪烁、显示移位等多种功能 有 80 字节显示数据存储器 DDRAM 建有 192 个 5X7 点阵的字型的字符发生器 CGROM8 个可由用户自定义的 5X7 的字符发生器 CGRAM微功耗、体积小、显示容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。4.1.44.1.4 16021602 与单片机接口电路与单片机接口电路系统显示电路由单片机 AT89C51、字符液晶显示器 LM016L 和 1Kx8 的排阻构成。单片机实现对 LCD 命令和显示数据的读写控制功能,P0 口作数据口,与LM016L 的 D0D7 相接,在 P0 口 D0D7 数据线之间分别接 8 个上
27、拉电阻,以确保电路能够正常显示。AT89C51 的 P1 口作为 LCD 的控制线,P2.0P2.2 分别接 LM016L 的 RS、RW 和 E 端;LM016L 的其它三个控制端 VDD 和 VSS、VEE 分别接电源和地。系统显示电路组成如图所示。图 4-2 1602 与单片机接口 . . . 11 / 284.24.2 单片机单元单片机单元4.2.14.2.1 AT89C51AT89C51 单片机简介单片机简介AT89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低
28、电压,高性能 CMOS8 位微处理器,俗称单片机。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51 是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。它的管脚图如下图所示。图 4-3 AT89C52 各引脚图1主要特性:(1)与 MCS-51 兼容 (2)42K 字节可编程闪烁存储器(3)寿命:1000写/擦循环(4)数据保留时间(5)10 年全静态工作:(6)0Hz-24Hz 三级程序存储器锁定(7)128*8 位部 RA
29、M(8)32 可编程 I/O 线(9)5 个中断源(10)可编程串行通道低功耗的闲置和掉电模式片振荡器和时钟电路2管脚说明: VCC:供电电压。GND:接地。P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。 . . . 12 / 28P1 口:P1 口是一个部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接
30、收输出 4TTL 门电流。P1 口管脚写入 1 后,被部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在 FLASH 编程和校验时,P1 口作为第八位地址接收。P2 口:P2 口为一个部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位
31、地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。P3 口:P3 口管脚是 8 个带部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL门电流。当 P3 口写入“1”后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断 0)P3.3 /INT1(外部中断 1)P3.4 T0(记时器
32、0 外部输入)P3.5 T1(记时器 1 外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止
33、 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。 . . . 13 / 28 PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH) ,不管是否有部程序存储器。注意加密方式 1 时,/EA 将部锁定为RESET;当/EA 端保持高电平时,此间部程序存储
34、器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP) 。 XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。4.2.24.2.2 晶振电路晶振电路振荡器特性:XTAL1 和 XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置为片振荡器。石晶振荡和瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。表4-1AT89C52主要功能特性主要功能特性兼容 MCS51 指令系统8K 可反复擦写 Flash
35、ROM32 个双向 I/O 口256x8bit 部 RAM3 个 16 位可编程定时/计数器中断时钟频率 0-24MHz2 个串行中断可编程 UART 串行通道2 个外部中断源共 6 个中断源2 个读写中断口线3 级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能4.2.34.2.3 复位电路复位电路复位操作有上电自动复位相按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图18(a)所示。这佯,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。 . . . 14 / 28按键手动复位有电平方式和脉冲方式两种。其中,按
36、键电平复位是通过使复位端经电阻与Vcc电源接通而实现的,其电路如图18(b)所示;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的,其电路如图54(c)所示:(a)上电复位 (b)按键电平复位 (c)按键脉冲复位图 3-3 复位电路上述电路图中的电阻、电容参数适用于 6MHz 晶振,能保证复位信号高电平持续时间大于 2 个机器周期。本系统的复位电路采用图 5-5(b)上电复位方式。4.34.3 系统的硬件组成与设计原理系统的硬件组成与设计原理图 3.-1 硬件电路图第五章第五章 系统软件设计系统软件设计5.15.1 程序流程图程序流程图多功能按键温度传感器复位电路AT89S52显示电路声
37、光报警 . . . 15 / 285.25.2 程序程序#include #include #define uchar unsigned char#define uint unsigned intsbit DQ = P25 ; /定义 DS18B20 端口 DQ sbit BEEP=P27 ; /蜂鸣器驱动线bit presence ;sbit LCD_RS = P24 ; sbit LCD_RW = P21 ;sbit LCD_EN = P26 ;uchar code cdis1 = DS18B20 OK ;uchar code cdis2 = TEMP: . C ; . . . 16 /
38、28uchar code cdis3 = DS18B20 ERR0R ;uchar code cdis4 = PLEASE CHECK ;unsigned char data temp_data2 = 0 x00,0 x00 ;unsigned char data display5 = 0 x00,0 x00,0 x00,0 x00,0 x00 ;unsigned char code ditab16 = 0 x00,0 x01,0 x01,0 x02,0 x03,0 x03,0 x04,0 x04,0 x05,0 x06,0 x06,0 x07,0 x08,0 x08,0 x09,0 x09
39、;void beep() ; unsigned char code mytab8 = 0 x0C,0 x12,0 x12,0 x0C,0 x00,0 x00,0 x00,0 x00 ;#define delayNOP() ; _nop_() ;_nop_() ;_nop_() ;_nop_() ; ;/*/void delay1(int ms)unsigned char y ;while(ms-)for(y = 0 ; y250 ; y+)_nop_() ;_nop_() ;_nop_() ;_nop_() ;/*/*检查 LCD 忙状态 */*lcd_busy 为 1 时,忙,等待。lcd-
40、busy 为 0 时,闲,可写指令与数据。 */*/ . . . 17 / 28bit lcd_busy() bit result ;LCD_RS = 0 ;LCD_RW = 1 ;LCD_EN = 1 ;delayNOP() ;result = (bit)(P0&0 x80) ;LCD_EN = 0 ;return(result) ; /*写指令数据到 LCD */*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 */*/void lcd_wcmd(uchar cmd) while(lcd_busy() ;LCD_RS = 0 ;LCD_RW = 0 ;LCD_EN = 0 ;
41、_nop_() ;_nop_() ; P0 = cmd ;delayNOP() ;LCD_EN = 1 ;delayNOP() ;LCD_EN = 0 ; /*/*写显示数据到 LCD */*RS=H,RW=L,E=高脉冲,D0-D7=数据。 */* . . . 18 / 28*/void lcd_wdat(uchar dat) while(lcd_busy() ;LCD_RS = 1 ;LCD_RW = 0 ;LCD_EN = 0 ;P0 = dat ;delayNOP() ;LCD_EN = 1 ;delayNOP() ;LCD_EN = 0 ; /* LCD 初始化设定 */*/void
42、 lcd_init() delay1(15) ; lcd_wcmd(0 x01) ; /清除 LCD 的显示容 lcd_wcmd(0 x38) ; /16*2 显示,5*7 点阵,8 位数据delay1(5) ;lcd_wcmd(0 x38) ; delay1(5) ;lcd_wcmd(0 x38) ; delay1(5) ;lcd_wcmd(0 x0c) ; /显示开,关光标delay1(5) ;lcd_wcmd(0 x06) ; /移动光标delay1(5) ;lcd_wcmd(0 x01) ; /清除 LCD 的显示容delay1(5) ;/* 设定显示位置 */ . . . 19 /
43、28/*/void lcd_pos(uchar pos) lcd_wcmd(pos | 0 x80) ; /数据指针=80+地址变量/*自定义字符写入 CGRAM */*/void writetab() unsigned char i ;lcd_wcmd(0 x40) ; /写 CGRAMfor (i = 0 ; i 0 ; i-)DQ = 0 ; / 给脉冲信号dat = 1 ;DQ = 1 ; / 给脉冲信号if(DQ)dat |= 0 x80 ;Delay(4) ;return (dat) ;/* 写一个字节 */*/WriteOneChar(unsigned char dat)unsi
44、gned char i = 0 ;for (i = 8 ; i 0 ; i-)DQ = 0 ;DQ = dat&0 x01 ;Delay(5) ; . . . 21 / 28DQ = 1 ;dat=1 ;/* 读取温度 */*/Read_Temperature(void)Init_DS18B20() ;WriteOneChar(0 xCC) ; / 跳过读序号列号的操作WriteOneChar(0 x44) ; / 启动温度转换Init_DS18B20() ;WriteOneChar(0 xCC) ; /跳过读序号列号的操作WriteOneChar(0 xBE) ; /读取温度寄存器t
45、emp_data0 = ReadOneChar() ; /温度低 8 位temp_data1 = ReadOneChar() ; /温度高 8 位 /* 数据转换与温度显示 */*/Disp_Temperature()display4=temp_data0&0 x0f ;display0=ditabdisplay4+0 x30 ; /查表得小数位的值display4=(temp_data0&0 xf0)4)|(temp_data1&0 x0f)4) ;display3=display4/100+0 x30 ;display1=display4%100 ;display2=display1/10+0 x30 ;display1=display1%10+0 x30 ;if
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水利工程中的地下水资源管理与保护考核试卷
- 棉麻行业发展趋势分析考核试卷
- 海洋生物制药临床研究与评价考核试卷
- 电子商务中的社交购物趋势考核试卷
- 滑动轴承的静力学与动力学分析考核试卷
- 影视设备仓储物流咨询批发考核试卷
- 光电子器件在太赫兹技术的应用前景考核试卷
- 生态环境宣传教育与普及考核试卷
- 曲阜师范大学《植物造景与庭院设计》2023-2024学年第二学期期末试卷
- 山东省德州夏津县2024-2025学年初三质量检测试题(三)化学试题含解析
- 青马工程笔试试题及答案
- 豆粕交易合同协议
- 边缘计算与5G融合技术研究-全面剖析
- 8.1薪火相传的传统美德 同步课件 -2024-2025学年统编版道德与法治七年级下册
- 飞机的纵向静稳定性飞行原理课件
- 电子化采购招投标平台系统建设项目解决方案
- 磁分离技术在天然气管道黑粉处理中应用的研究与效果分析
- 学术交流英语(学术写作)智慧树知到期末考试答案章节答案2024年哈尔滨工程大学
- 金属矿床地下开采——矿床开拓方法设计(完整版)
- 基于PLC的地铁排水控制系统优秀95分毕业设计
- 接空冷冷却塔设备及管道安装施工方案
评论
0/150
提交评论