温度采集和语音报温系统设计)

上传人:无*** 文档编号:204540141 上传时间:2023-04-26 格式:DOC 页数:57 大小:764KB
收藏 版权申诉 举报 下载
温度采集和语音报温系统设计)_第1页
第1页 / 共57页
温度采集和语音报温系统设计)_第2页
第2页 / 共57页
温度采集和语音报温系统设计)_第3页
第3页 / 共57页
资源描述:

《温度采集和语音报温系统设计)》由会员分享,可在线阅读,更多相关《温度采集和语音报温系统设计)(57页珍藏版)》请在装配图网上搜索。

1、温度采集和语音报温系统设计摘 要温度是一种最基本的环境参数,日常生活和工农业生产中经常要检测温度。随着半导体技术的飞速发展,各种数字化、智能化温度测量技术的应用范围越来越广。传统的温度采集方式是采用热电偶或热电阻,由于其输出为模拟信号,必须经过A/D转换环节获得数字信号后才能与单片机等微处理器连接,使得硬件电路结构比较复杂,制作成本较高。近年来,以美国DALLAS公司生产的DS18B20为代表的新型单总线数字式温度传感器得到广泛的应用。本文设计了一个以DS18B20传感器为核心,通过单片机来控制的温度采集,语音播报系统。该系统将温度直接转变成数字信号送入单片机中进行实时采集,通过LCD1602

2、液晶显示模块将结果显示出来,增加了摄氏温度与华氏温度转换对比显示功能,设定了整点语音自动播报时间温度,手动实时播报时间温度功能。关键字:AT89S52;LCD1602;数字温度传感器;ISD1420The system designing of temperature collection and voice reported that temperatureAbstract: Temperature is one of the m94ost basic environmental parameters, and it usually must be measured in daily lif

3、e and industrial&agricultural production. Withthe rapid development of semiconductor technology,moreand more,digital&intelligenttemperature measuring technology is widely applied.So it is particularly important tomaster the technology of designing a temperature measurement&control system inhardware

4、and software.The traditional mode of Temperature measurement adopted thermocouple orthermistor whose output is analog signals and must be converted to digital signals,thentransmitted into SCM(Simple Chip Machine).So it is rather complex with little higher cost.In recent years,DS18B20(DALLAS USA),as

5、a representative of the new digitaltemperature sensor with single bus,is widely used.In this project,a temperature measuring&transmition system controlled by SCM and PC is designed.At front end,the real-timetemperature data acquired and converted to digital type through DS18B20 sensor are sentinto S

6、CM,and it is displayed on LCD1602 module. Increased Celsius temperature conversion contrast with Fahrenheit and sets up a display function beep voice automatically broadcast time temperature, manual real-time broadcast time temperature function.Key words:AT89S52;LCD1602;Digital Temperature Sensor;IS

7、D1420目录第一章前言11.1 概述11.2 温度采集器件的发展11.3 存在的问题分析21.4 研究思路2第二章系统总体结构设计32.1 系统的结构框图32.2 主要电路功能介绍3第三章系统的硬件设计63.1 控制电路63.1.1 单片机简介63.1.2单片机外围电路设计83.1.3 AT89S52复位电路93.1.4 AT89S52时钟电路103.2简述DS18B20传感器的工作特性113.2.1 DS18B20功能简介113.2.2 DS18B20结构引脚图123.2.3 DS18B20内部结构123.2.4 DS18B20控制模式143.3 LCD显示电路193.4 报警电路203.

8、5 语音播报电路203.5.1 ISD1420语音芯片录放音电路设计213.5.2 ISD1420与AT89S52接口电路设计24第四章系统的软件设计254.1 开发工具介绍254.2 系统程序设计254.2.1 主程序设计254.2.2测温子程序设计26第五章仿真数据结果分析28结论29致谢30参考文献3152本科毕业设计(论文)第一章前言1.1 概述随着科技的不断发展,现代社会对各种信息参数的准确度和精确度的要求都有了几何级的增长,而如何准确而又迅速的获得这些参数就需要受制于现代信息基础的发展水平。在三大信息信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)中,传感器属

9、于信息技术的前沿尖端产品,尤其是温度传感器技术,在我国各领域已经引用的非常广泛,可以说是渗透到社会的每一个领域,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。1.2 温度采集器件的发展测量温度的关键是温度传感器,温度传感器的发展经历了三个发展阶段:1传统的分立式温度传感器2模拟集成温度传感器3智能集成温度传感器目前的智能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的,它是微电子技术、计算机技术和自动测试技术(ATE)的结晶,特点是能输出温度数据及相关的温度控制量,适配各种微控制器(M

10、CU)。社会的发展使人们对传感器的要求也越来越高,现在的温度传感器正在基于单片机的基础上从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展,并朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展,本文将介绍智能集成温度传感器DS18B20的结构特征及控制方法,并对以此传感器,AT89S52单片机为控制器构成的数字温度测量装置的工作原理及程序设计作了详细的介绍。与传统的温度计相比,其具有读数方便,测温范围广,测温准确,输出温度采用数字显示,主要用于对测温要求比较准确的场所,或科研实验室使用。本次设计使用AT89S52单片机,测

11、温传感器使用DS18B20,用LCD液晶来实现温度显示。1.3存在的问题分析DS18B20从单线信号线上汲取能量:在信号线DQ处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。要想使DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,由于每个DS18B20在温度转换期间工作电流达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,只靠4.7K上拉电阻就无法提供足够的能量,会造成无法转换温度或温度误差极大。1.4研究思路本文主要对DS18B20数字温度传感器的研究,设计了一个简易的温度采

12、集系统。由于该温度传感器的精度有限,所以显示的温度只能精确到0.1摄氏度。通过DS18B20将采集到的温度信息以数字信号的形式传给单片机,经过处理后一端传给LCD显示,另一端传给ISD1420语音芯片经处理后实现报温,从而实现既能显示温度信息,又能播报温度信息的功能。由于成本较低,容易被多数家庭所采纳,可用于工业的大批量生产。第二章系统总体结构设计2.1 系统的结构框图系统以AT89S52单片机作为核心控制器件,外围主要有实时语音芯片ISD1420、温度传感器DS18B20等,均为串行通信器件,使得系统线路简单可靠性高。系统结构框图如图2-1所示:显示模块控制电路电源电路报警电路温度采集语音录

13、放键盘控制图2-1 系统结构框图2.2 主要电路功能介绍1电源电路由于干电池输出功率不高,只能勉强驱动单片机,而且在整个系统工作中,电压会随着时间的推移不断降低,进而出现死机等情况,因此本系统采用独立的1805稳压电源。电源的稳压的特性较好,能够保证整个系统稳定工作。2.温度采集DS18B20是美国达拉斯半导体公司推出的第一片支持“一线总线”接口的温度传感器。它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,可以将温度直接转化成串行数字量供微处理器处理。因此,在温度测量系统中,采用抗干扰能力强的新型数字温度传感器是解决这些问题的有效方案,新型数字温度传感器DS18B20具有体积更

14、小、精度更高、适用电压更宽、采用一线总线、可组网优点,在实际测温的过程中取得了良好的测量效果。其供电方式简单,可用数据线供电,所需的外围器件较少,甚至不需要外围器件。因此,在本次设计中采用DS18B20作为温度采集器。3.键盘控制由于在本设计中所需要的控制点数较少,只需要几个功能键,简便、易操作、成本低就成了首要考虑的因素。所以,采用了独立式按键结构。4.控制电路本次毕业设计的核心部分是单片机的控制,给以相关的命令,按照人们的意愿执行相应的操作,这次选用的是ATMEL公司生产的常用芯片AT89S52,主要是它的价格便宜,而且通用性较强,容易获得。在设计中,单片机的P0.0到P0.7与LCD的D

15、0到D7相连,控制它的时间和温度显示。P1.0到P1.7与语音芯片ISD1420的A0到A7相连,实现语音片段的地址传输。5.显示模块本次设计采用的是采用LCD显示屏进行显示。LCD显示屏是一种低压、微功耗的显示器件,工作电流仅为几微安,是其它显示器无法比拟的,同时可以显示大量信息,除数字外,还可以显示字母,曲线,比传统的LED数码显示器的画面有了质的提高。虽然LCD显示器的价格比传统的LED数码管要贵些,但它的显示效果更好,是当今显示器的主流,所以采用LCD作为显示器。采用LCD,更容易实现题目的要求,对后续的功能兼容性高,只需将软件修改即可,可操作性强,易于度数,采用RT1602两行十六字

16、符的显示,能同时显示时间,温度。6.报警电路报警电路比较简单,主要由一个发光二极管和蜂鸣器构成。三极管器开关的作用。当温度低于下限温度或高于上限温度时二极管闪烁蜂鸣器报警。7.语音录放本系统除了实现温度的显示外还有一个重要功能是实现语音报温。在这次设计中采用了ISD1420语音芯片实现语音录放功能。ISD1420是采用模拟存取技术集成的可反复录放的20秒语音芯片,掉电语音不丢失,最大可分160段,最小每段语音长度为125ms,每段语音都可由地址线控制输出,每125ms为一个地址,由A0-A7八根地址线控制。该芯片采用多电平直接模拟量存储专利技术,每个采样值可直接存储在片内单个EEPROM单元中

17、,因此能够非常真实、自然地再现语音、音乐、音调和效果声。此外,ISD1420还省去了A/D和D/A转换器,方便扩展更多的功能。第三章系统的硬件设计3.1 控制电路在本设计中,考虑到单片机构成的应用系统有较大的可靠性,容易构成各种规模的应用系统,且应用系统有较高的软、硬件利用系数。还具有可编程性,硬件的功能描述可完全在软件上实现。本设计还需要利用单片机的定时计数器、中断系统等等。所以,选择以单片机为核心进行设计具有极大的必要性。3.1.1 单片机简介CPU即中央处理器的简称,是单片机的核心部件,它完成各种运算和控制操作,CPU由运算器和控制器两部分电路组成。 1. 运算器电路 运算器电路包括AL

18、U(算术逻辑单元)、ACC(累加器)、B寄存器、状态寄存器、暂存器1和暂存器2等部件,运算器的功能是进行算术运算和逻辑运算。 2. 控制器电路控制器电路包括程序计数器PC、PC加1寄存器、指令寄存器、指令译码器、数据指针DPTR、堆栈指针SP、缓冲器以及定时与控制电路等。控制电路完成指挥控制工作,协调单片机各部分正常工作。 3. 定时器/计数器 MCS52单片机片内有两个16位的定时/计数器,即定时器0和定时器1。它们可以用于定时控制、延时以及对外部事件的计数和检测等。 4. 存储器 MCS52系列单片机的存储器包括数据存储器和程序存储器,其主要特点是程序存储器和数据存储器的寻址空间是相互独立

19、的,物理结构也不相同。 5. 并行I/O口 MCS52单片机共有4个8位的I/O口(P0、P1、P2和P3),每一条I/O线都能独立地用作输入或输出。P0口为三态双向口,能带8个TTL门电路,P1、P2和P3口为准双向口,负载能力为4个TTL门电路。 6. 串行I/O口 MCS52单片机具有一个采用通用异步工作方式的全双工串行通信接口,可以同时发送和接收数据。 7. 中断控制系统 8051共有5个中断源,即外中断2个,定时/计数中断2个,串行中断1个。 8. 时钟电路 MCS52芯片内部有时钟电路,但晶体振荡器和微调电容必须外接。时钟电路为单片机产生时钟脉冲序列,振荡器的频率范围为1.2MHz

20、12MHz,典型取值为6MHz。 9.总线 以上所有组成部分都是通过总线连接起来,从而构成一个完整的单片机。系统的地址信号、数据信号和控制信号都是通过总线传送的,总线结构减少了单片机的连线和引脚,提高了集成度和可靠性。 每个8051 处理周期包括12 个振荡周期每12 个振荡周期用来完成一项操作如取指令和计算指令执行时间可把时钟频率除以12 取倒数然后指令执行所须的周期数因此如果你的系统时钟是11.059MHz 除以12 后就得到了每秒执行的指令个数为921583条指令取倒数将得到每条指令所须的时间1.085ms 。AT89S52的管脚图如图3-1所示:图3-1AT89S52管脚图3.1.2单

21、片机外围电路设计本设计选用的AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80S52引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S52具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32

22、个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S52设计和配置了振荡频率,并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式。AT89S52单片机综合了微型处理器的基本功能。当AT89S52芯片接到来自温度传感器的信号时,其内部程序将根据信号的类型进行处理,并且将处理的结果送到显示模块

23、、报警模块、语音播报模块,发送控制信号控制各模块。该模块在硬件设计方面,其外围电路提供能使之工作的晶振脉冲、复位按键,四个I/O口分别用于外围设备连接。单片机AT89S52硬件连接图如图3-2所示,其中P0接口外接上拉电阻以保证高低电平的准确性。单片机AT89S52的 I/O端口具体分配与下表3-1:图3-2单片机与外围设备硬件连接图表3-1 AT89S52的 I/O端口具体分配AT89S52IO端口外接点P0.0-P0.7LCD显示地址端口P1.0-P1.7语音芯片播音地址端口P2.0DS18b20通道P2.1-P2.4连接键盘控制端口P2.6连接报警器端口P3.3开始播音口P3.6LCD读

24、/写选择端P3.7LCD数据/命令端P2.7LCD使能端3.1.3 AT89S52复位电路系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下即单片机的片内电路初始化,使单片机从一种确定的初态开始运行。AT89S52的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,复位电路通常采用上电自动复位和按钮复位两种方式。手动复位:手动复位需要人为在复位输入端加高电平让系统复位。一般采用的方法是在RST端和正电源VCC之间接一个按键,当按下按键后,VCC和RST端接通,RST引脚处有高电平,而且按键动作一般是数十毫秒、大于两个

25、机器周期的时间,能够安全的让系统复位。上电复位:上电复位电路是种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。图3-3 复位电路在本设计中复位电路的设计是采用简单,用得比较广的复位电路接法,如图3.1.3所示,它具有上电复位和按键复位的双重复位功能。3.1.4 AT89S52时钟电路时钟是单片机的心脏,单片

26、机各功能部件的运行都是以时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。本文用的是内部时钟方式。电路图3.1.4所示:图3-4 时钟电路AT89S52单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。3.2简述DS18B20传感器的工作特性3.2.1 DS18B20功能简介DS18B20数字温度计是DALLAS公司生

27、产的1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。DS18B20产品的特点:1.DS18B20因为采用了单总线技术,可通过串行口线,也可通过其他I/O口线与微机直接接传感器直接输出被测温度值(二进制数)。2.在DS18B20中的每个器件上都有独一无二的序列号。3.实际应用中不需要外部任何元器件即可实现测温。4.测量温度范围在55。C到125。C之间。5.数字温度计的分辨率用户可以从9位到12位选择。6.内部有温度上、下限告警设置。7.用户可自设定非易失性的报警上下限值。8.支持多点组网功能,多

28、个DS18B20可以并联在惟一的三线上,实现多点测温。9.负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。3.2.2 DS18B20结构引脚图图3-5 DS18B20引脚DS18B20的引脚较为简单,功能实现主要靠DQ脚实现。表3-2为个引脚功能介绍:表3-2 DB18B20详细引脚功能描述序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。3.2.3 DS18B20内部结构DS18B20主要由64位ROM,存储器,逻辑控制器,暂存器,8位CR

29、C产生器和温度传感器构成,它的内部框图如图3-6所示:图3-6 DS18B20内部框图1. 64位ROM存储器件独一无二的序列号,如表3-3所示:表3-3 ROM各位功能2. DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM.后者用于存储TH,TL值。第5字节则是用户第3字节的镜像。第6,7,8字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的。第九个字节为前8个的crc效验码。DS18B20九个寄存器的名称及作用 如表3-4所示:表3-4 9个寄存器功能介绍序号寄存器名称作用序号寄存器名称作用0温度低字节存放补码4、5保留字节1、21温度

30、高字节6计数器余值2TH/用户字节1温度上限7计数器/C3TL、用户字节2温度下限8CRC检验码表3-5是两个个8位的RAM中,存放二进制的数,高五位是符号位,如果温度大于0OC,这五位数为0,将测到的数值乘以0.0625,即得到实际的温度值;如果温度小于0OC,高五位为1,测到的数值需要取反加1,再乘以0.0625,才得到实际的温度值。高速暂存器RAM共占0、1两个单元:表3-5 8位ROM表3-6给出了一些数字输出数据与对应的温度值的例子。表3-6 输出数据与温度对应关系3DS18B20不需额外的供电电源;当总线为高电平时,功率由单总线上的上拉电阻通过DQ引脚提供;高电平总线信号同时也向内

31、部电容CPP充电,CPP在总线低电平时为器件供电。3.2.4 DS18B20控制模式一DS18B20的命令序列初始化:DS18B20所有的数据交换都由一个初始化序列开始。由主机发出的复位脉冲和跟在其后的由DS18B20发出的应答脉冲构成。当DS18B20发出响应主机的应答脉冲时,即向主机表明它已处在总线上并且准备工作。ROM命令:ROM命令通过每个器件64-bit的ROM码,使主机指定某一特定器件(如果有多个器件挂在总线上)与之进行通信。DS18B20的ROM如表3-7所示,每个ROM命令都是8 bit长。表3-7 ROM命令命令描述协议此命令发出后1-Wire总线上的活动SEARCH ROM

32、识别总线上挂着的所有DS18B20的ROM码F0h所有DS18B20向主机传送ROM码READ ROM当只有一个DS18B20挂在总线上时,可用此命令来读取ROM码33hDS18B20向主机传送ROM码MATCH ROM主机用ROM码来指定某一DS18B20,只有匹配的DS18B20才会响应55h主机向总线传送一个ROM码SKIP ROM用于指定总线上所有的器件CCh无ALARM SEARCH与SEARCH ROM命令类似,但只有温度超出警报线的DS18B20才会响应ECh超出警报线的DS18B20向主机传送ROM码功能命令:DS18B20的功能命令如表3-8所示:表3-8DS18B20向主机

33、传送供电状态命令描述协议此命令发出后1-Wire总线上的活动温 度 转 换 命 令Convert T开始温度转换44hDS18B20向主机传送转换状态(寄生电源不适用)存 储 器 命 令Read Scratchpad读暂存器完整的数据BEhDS18B20向主机传送总共9字节的数据Write Scratchpad向暂存器的2、3和4字节写入数据(TH, TL和精度)4Eh主机向DS18B20传送3个字节的数据Copy Scratchpad将TH, TL和配置寄存器的数据复制到EEPROM48h无Recall E2将TH, TL和配置寄存器的数据从EEPROM中调到暂存器中B8hDS18B20向主

34、机传送调用状态Read Power Supply向主机示意电源供电状态B4hDS18B20向主机传送供电状态二DS18B20信号时序DS18B20采用严格的单总线通信协议,以保证数据的完整性。该协议定义了几种信号类型:复位脉冲、应答脉冲、写0、写1、读0和读1。除了应答脉冲所有这些信号都由主机发出同步信号。总线上传输的所有数据和命令都是以字节的低位在前。初始化序列:复位脉冲和应答脉:在初始化过程中,主机通过拉低单总线至少480s,以产生复位脉冲(TX)。然后主机释放总线并进入接收(RX)模式。当总线被释放后,4.7k上拉电阻将单总线拉高。DS18B20检测到这个上升沿后,延时15s60s,通过

35、拉低总线60s240s产生应答脉冲。初始化波形如下图3-7所示:图3-7 初始化波形读和写时序:在写时序期间,主机向DS18B20写入数据;而在读时序期间,主机读入来自DS18B20的数据。在每一个时序,总线只能传输一位数据。读/写时序如图3-8:写时序:存在两种写时序:“写1”和“写0”。主机在写1时序向DS18B20写入逻辑1,而在写0时序向DS18B20写入逻辑0。所有写时序至少需要60s,且在两次写时序之间至少需要1s的恢复时间。两种写时序均以主机拉低总线开始。产生写1时序:主机拉低总线后,必须在15s内释放总线,然后由上拉电阻将总线拉至高电平。产生写0时序:主机拉低总线后,必须在整个

36、时序期间保持低电平(至少60s)。在写时序开始后的15s60s期间,DS18B20采样总线的状态。如果总线为高电平,则逻辑1被写入DS18B20;如果总线为低电平,则逻辑0被写入DS18B20。读时序:DS18B20只能在主机发出读时序时才能向主机传送数据。所以主机在发出读数据命令后,必须马上产生读时序,以便DS18B20能够传送数据。所有读时序至少60s,且在两次独立的读时序之间至少需要1s的恢复时间。每次读时序由主机发起,拉低总线至少1s。在主机发起读时序之后,DS18B20开始在总线上传送1或0。若DS18B20发送1,则保持总线为高电平;若发送0,则拉低总线。当传送0时,DS18B20

37、在该时序结束时释放总线,再由上拉电阻将总线拉回空闲高电平状态。DS18B20发出的数据在读时序下降沿起始后的15s内有效,因此主机必须在读时序开始后的15s内释放总线,并且采样总线状态。换位理解DSl8B20传感器对读写时序的要求DSl8B20 写数据时,主机产生读时间片。当主机把IO数据线在7s时间内从高逻辑电平拉至低逻辑电平时,维持时间最少1s就产生写时间片。如写入0,则应维持低电平4560s以上,如写入1,应在第8s后释放数据线,在7s 时间内拉到为逻辑高电压, 并维持4560s以上。写时间片必须有最短为60s的持续期,在各写周期之间必须有最短为1s的恢复时间。从DS18B20 读数据时

38、,主机产生读时间片。主机在7s时间内把数据线从逻辑高电平拉至低电平,产生读时间片。数据线必须保持在逻辑低电平至少1s;来自DS18B20的输出数据在读时间片下降沿之后15s有效。因此,在产生读时间片8s后主机必应把IO 数据线释放,由上拉电阻将数据线拉回至逻辑高电平,主机在15s末期对数据线采样,如果线为高电平,就读为1,如果线为低电平,便读为0。读时间片的最短持续期限为60s,各个读时间片之间必须有最短为1s的恢复时间。在考虑到线缆对波形的延迟和DS18B20传感器发送数据表现的典型时间,在实际操作中,建议将主机对数据线的采样滞后59s,可提高正确读取DS18B20的可靠性。图3-8 读写时

39、序三 DS18B20工作原理DS18B20测温原理如图3-9所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3-9中的斜率累加器用于补偿和修正测温过

40、程中的非线性,其输出用于修正计数器1的预置值。图3-9 DS18B20测温原理3.3 LCD显示电路该模块是由RT1602液晶显示器件组成, 第3脚: VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E

41、端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。由上可知1602基本操作时序如表3-9。其第1516脚:背光电源脚。RT1602与单片机的应用连接电路图如图3-10所示:表3-9 LCD基本操作时序基本时序操作输入输出读状态RS=L,R/W=H,E=HDOD7=状态读数据RS=H,R/W=H,E=H无写指令RS=L,R/W=L,E=高脉冲,DOD7=指令码DOD7=数据读指令RS=H,R/W=L,E=高脉冲,DOD7=数据无图3-10液晶显示模块接口电路3.4 报警电路系统采用蜂鸣器作为闹铃输出。电路连接如图3-11所示。电路中采用PNP管9012来控制蜂鸣器

42、的开关,由图可以看出当Bell引脚为高电平时,PNP管截止,蜂鸣器不工作;当Bell引脚为低电平时,PNP管导通,蜂鸣器工作。其中R2为限流电阻。图3-11 报警电路3.5 语音播报电路本电路采用的核心语音芯片ISD1402语音芯片是美国ISD(Information Storage Device)公司的产品。它包括时钟振荡器、128K可编程电擦除只读存储器(EEPROM)、低噪前置放大器、自动增益控制电路、抗干扰滤波器、差分功率放大器等电路。ISD1400系列语音芯片采用直接存储模拟信号,自动待机省电,可编程电擦除只读存储和总线技术。ISD1400是一种具有高保真、录音数据永久保存、省电、适

43、用于同单片机接口特点的新一代语音芯片。ISD1420是ISD1400系列中录音时长为20s语音芯片。ISD1420是采用模拟存取技术集成的可反复录放的20秒语音芯片,掉电语音不丢失,最大可分160段,最小每段语音长度为125ms,每段语音都可由地址线控制输出,每125ms为一个地址,由A0-A7八根地址线控制。3.5.1ISD1420语音芯片录放音电路设计分段录音时,ISD1420的A0-A7用作地址输入线,A6、A7不可同时为高电平,所以地址范围为00H-9FH,即为十进制码0-159共160个数值。这表明ISD1420的EEPROM模拟存储器最多可被划分为160个存储单元,也就是说ISD1

44、420最多可存储160个语音段,语音段的最小时间长度为0.125S。不同分段的选择是通过对A0-A7端接不同的高低电平来实现。ISD1420分段录音可以通过硬件(开关)来实现也可以通过软件编程来实现。图3-12为硬件实现录音和放音的电路图。图3-12语音芯片录音和放音电路其中ISD1420各引脚说明如下:A0-A7地址输入端,当A6和A7不全为高电平时,A0-A7为分段录音信息地址线,不同的地址对应不同的录音片断。MIC话筒输入端,话筒输入信号通过电容交流耦合至此引脚并传给片上预放大器,耦合电容C7的值和该端内阻R7(10K)决定语音信号通频带下限频率。 MICREF话筒参考输人端,MICRE

45、F是预放大器的反相输入端,配合外电路可使片上预放大器具有较高的噪声抑制比和共模抑制比。ANA IN模拟信号输人端,对于话筒输入,ANA IN 引脚应通过外部电容C4与ANA OUT引脚连接,耦合电容C4决定片上控制预放大器通频带的下限频率。ANA OUT预放大器的输出端,预放大器的电压增益取决于AGC电平,对于小信号输入电平,其增益最大为24dB,对于强信号,增益较低。AGC自动增益控制端,AGC 动态地调整预放大器增益,使加至MIC输入端的非失真信号的范围扩展。内阻抗(5欧)和外部电容决定AGC的响应时间,外部电容和外部电阻的RC时间常数决定AGC的释放时间。SP+、SP- 喇叭输出端,该端

46、可直接驱动16欧的喇叭。XCLK外接时钟输入端,ISD1420具有内部时钟,一旦接人外部时钟,内部时钟会自动失去作用。改电路不用外部时钟该引脚接地,一般不推荐使用外部时钟,除非要求时钟信号特别精确。RECLED工作状态指示端,在录音或放音时该端输出低电平,可驱动一个LED来指示状态。在录音过程中指示灯一直亮着,在放音结束时,指示灯闪烁一下。PLAYE边沿触发放音控制端,该端输人一低脉冲,芯片即进入放音状态,直至遇到信息结束标记(EOM)或到存储空间的末尾时回放过程结束,电路自动进入准备状态。回放过程中PLAYE变化不会影响回放过程。PLAYL电平触发放音控制端,该端电平变为低电平并保持,芯片进

47、入放音状态,放音过程持续到该端电平由低变高或遇到信息结束标记(EOM),结束后电路进入准备状态。REC录音触发端,REC 一旦变为低电平,芯片就进入录音状态,REC的权限优先于PLAYE和PLAYL,在放音期间若遇REC 接低电平时,放音就会立即停止并转入录音状态开始录音。录音期间REC 应始终保持低电平,REC变高或存储空间变满时录音过程结束,这时在录音截止的地方会记录一个信息结束标记(EOM)。VCCD、VCCA数字电源正端和模拟电源正端。VSSD、VSSA数字地和模拟地。电路实现录音功能说明如下,S1、S2、S3分别是控制录音和放音按键,当按下S1时开始录音,S2、S3为两种方式的放音按

48、键,当按一下S2时开始放音,是下降沿触发的,而S3为电平控制的,必须一直按着此键直至放音结束。LED和限流电阻组成录放音指示电路,当录音结束、录音超出时限(存储器溢出)或放音结束时,ISD1420的25脚呈高电平,LED熄灭。对ISD1420进行分段录音之前要先列出语音信息与分段地址的对照表,如表3-9所示。然后检查电路连接、接线和电源情况。并通过对照表来设置8个开关选择要录音的地址,最后按下录音键直至录音结束,松开录音键,重复此操作就可以将自己需要录入的内容全部录入到芯片中。另外,A0和A1都需要接地,因为我们要确保分段间隔不小于0.5S,所以至少要四段,否则录音的信息可能会重叠, 。用户录

49、制的语音每一段结束后芯片自动设有段结束标志(EOM),芯片录满后设有溢出标志(OVF)。表3-9 分段语音信息与地址对照表语音信息分段地址A7A6A5A4A3A2A1A0100H 0 0 0 0 0 0 0 0208H 0 0 0 0 1 0 0 0310H0 0 0 1 0 0 00418H0 0 0 1 10 00520H0 0 1 0 0 0 00628H0 0 1 0 1 0 00730H0 01 1 0 0 00838H0 01 1 1 0 00940H0 1 0 00 0 0 0十48H0 1 0 0 1 0 00摄氏度50H0 1 0 1 0 0 0 0现在温度是58H1 0 0

50、 1 1 0 0 03.5.2 ISD1420与AT89S52接口电路设计ISD1420录音和放音电路可以通过硬件开关控制。本设计录音是用硬件控制,但是播报温度放音是通过AT89S52来控制的。单片机某一段的起始地址进行放音操作,遇到段结束标志(EOM)即自动停止放音,单片机收到段结束标志(EOM)就开始触发下一段语音的起始地址,如此控制,即可以将很多、不同段的语音组合在一起成一句话放音出来,实现语音的自动组合。ISD1420与AT89S52的接口连接入下:AT89S52的P1端口连接地址线ISD1420的A0-A7,ISD1420放音电路通过AT89S52的P3.3口控制PLAYER放音。第

51、四章系统的软件设计4.1 开发工具介绍单片的使用除了硬件,同样也要软件的使用,我们写汇编程序编程CPU可执行的机器码有两种方法,一种是手工汇编,一种是机器汇编。机器汇编通过汇编软件变为机器码,用于MSC-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从使用普通汇编语言到高级语言的不断发展,Keil是目前最流行开发MCS-51系列单片机的软件。Keil c51汇编,PLM语言和C语言的程序设计,界面友好。Keil是美国keil software公司出品的52系列兼容单片机c语言开发系统。用过汇编语言后再使用C语言来开发,体会更加深刻。 Keil C51软件提供丰富的库,与汇编

52、相比,C语言在功能上,结构上,可读性,可维护性上有明显的优势,因而易学易用函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生产的汇编代码,就能体会到KeilC51DE 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解,在开发大型软件时更能体现高级语言的优势。4.2 系统程序设计4.2.1 主程序设计主程序是在程序运行的过程中必须先经过初始化,包括键盘程序,测量程序,以及各个控制端口的初始化工作。系统在初始化完成后就进入读取温度测量程序,实时的测量当前的温度,得到温度后判断温度是否超过温度设置的上下限。超出(低于)温度上下限,调用报警子程

53、序。再显示电路在LCD上显示。系统软件设计的总体流程图4-1所示开机初始化判断温度在设定范显示温度子程序报警子程序显示时间子程序测量温度子程序判断显示模式子程序显示温度上下限子程序键盘扫描子程序图4-1 主程序流程图4.2.2测温子程序设计由在整个语音温度计的设计中是以正确采集温度为前提的,因为如果温度采集就不正确,那么即使后续电路如显示和报温电路均正确,最后的结果仍然不能达到我们所要的目标,也就是不能正确的对环境温度进行显示和报温,所以关于DS18B20的温度采集是非常重要的。DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。操作协议为:初始化DS18B20(发

54、复位脉冲)发ROM功能命令发存储器操作命令处理数据。其测温子程序流程图如4-2所示。部分控制DS18B20指令功能如表4-1所示:开始初始化写跳过ROM指令写启动温度转换指令延时初始化写跳过ROM指令写读温度转换指令读取温度图4-2 测温子程序流程图表4-1 控制DS18B20指令表指 令指令代码操 作 说 明跳过ROMCCH忽略64位ROM编码温度转换44H启动DS18B20进行温度转换读暂存器BEH读暂存器9个字节内容写暂存器4EH将数据写入暂存器的TH、TL字节复制暂存器48H把暂存器的TH、TL字节写到E2RAM中重新调E2RAMB8H把E2RAM中的TH、TL字节写到暂存器TH、TL

55、中读电源供电方式B4H启动DS18B20发送电源供电方式的信号给主CPU第五章仿真数据结果分析各项功能仿真方法及仿真结果如下表5-1:表5-1 各项功能仿真方法及结果类别仿真项目仿真方法仿真结果基 本 部 分正常开机有嘟声开机实现仿真实现测量范围开机显示,调整DS18B20的温度是否都可以显示仿真实现显示时间和温度开机显示仿真实现调整时间、日期,设定最低、最高温度按SW5进入时间、最低、最高温度调整功能,SW6加1,SW7减1,最后按SW5确认温度设定结束仿真实现报警功能调整DS18B20温度分别超过上限与下限,启动蜂鸣器与指示灯仿真实现语音播放功能观察连接语音芯片P1和高低电平的变化仿真失败

56、结论本文设计的语音温度计,结构简单,操作便捷,可用于生活中的简单温度测量,由于成本较低,加以改进后可用于工业的批量生产。由于这次设计的电路只具有温度的现实和语音报温功能,若想更好的适应人们生活的要求,可以在其中加入温度控制功能,这是在日后需要改进的地方。经过这段时间的方案论证,论文的编写,硬件及其相应程序的编写,使我了解并掌握了AT89S52单片机,DS18B20温度传感器,LCD1602以及ISD1420语音芯片的工作原理,为今后学习更为复杂的类似元器件做好准备。通过系统的整体设计,不仅锻炼了自己的动手能力,更锻炼了自己分析问题,处理问题的能力。这对于我们这些即将步入工作岗位的大学生来说极其

57、重要。虽然这次的毕业设计最终完成,但仍存在很多不足。例如在远离图的设计上不够合理,这给在后来的焊接过程中带来很多不便,导致飞线太多,一是影响了整体的美观,更重要的是降低了系统的可靠性,这个在以后的设计中应该注意。这次毕业设计基本的完成了任务书的要求,实现了温度的控制和语音播报。通过仿真表明系统的设计是正确的,可行的。但是由于设计者的设计经验和知识水平有限,本文设计的语音温度计还存在许多不足和缺陷。致谢参考文献1陈雷,雷宏洲.C/C+程序设计教程.清华大学出版社,2007年2蔡振江,马跃进,韩庆瑶等.单片机原理及应用M .北京:电子工业出社,20073赵景波,王劲松等.Protel电路设计.电子

58、工业出版社,2007.4韩九强, 周杏鹏.传感器与检测技术.清华大学出版社 (2010-09出版) .5郭强. 液晶显示应用技术M .北京:电子工业出版社,2003.6沙占友.智能化集成温度传感器原理与应用M .北京:机械工业出版社,2002.7清源计算机工作室. Protel 99SE 原理图与PCB 及仿真M.北京:机械工业出版社,2004.8刘树棠,朱茂林,荣玖.基于运算放大器和模拟集成电路的电路设计M .3 版.西安:西安交通大学出版社,20049周月霞,孙传友.DS1820传感器及其测温方法的改进J石油仪器,2002(12):363810 JAN AXELSON.串行端口大全M .精

59、英科技,译北京:中国电力出版社,2001:14715611周月霞,孙传友.DS18B20数字温度传感器的功能特性及其设计J .世界采矿快报2000(9):329330.12赵新民,王祁.智能仪器设计基础.哈尔滨:哈尔滨工业大学出版社,1999.13J.C.Whitaker. Thermal Design of Electronic Equipment. CRC Press LLC. Lond on200114A.P. Knyupfer .Dynamic error in analog-digitalconversionJ .Measurement Techniques.Volue 11,Num

60、ber 9.12251229.15Marius Grundmann.The Physics of SemiconductorsM .Springer Berlin Heidelberg.2006, 577620.附录一:系统总体原理图附录二:源程序/*语音温度计*/*以下源代码是主程序部分main.c*/#include #include LCD1602.h#include clock.h#include key.h#include DS18B20.h#include temp.h#include BEEP.h#include ISD1420.h#include speakTEMP.hvoid delayMs(unsigned int ms) /延时K*1ms,12.000mhz unsigned char j;while(ms-)for(j=0; j=125; j+);void init() /主初始化 P1=0xff; /初始化p1口,全设为1 P3=0xff;top_temp = 30;bottom_temp = 1;de

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!