基于单片机AT89C51的语音温度计的设计学士学位论文.docx
- 文档编号:15251297
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:81
- 大小:322.39KB
基于单片机AT89C51的语音温度计的设计学士学位论文.docx
《基于单片机AT89C51的语音温度计的设计学士学位论文.docx》由会员分享,可在线阅读,更多相关《基于单片机AT89C51的语音温度计的设计学士学位论文.docx(81页珍藏版)》请在冰点文库上搜索。
基于单片机AT89C51的语音温度计的设计学士学位论文
基于单片机AT89C51的语音温度计的设计
摘要
本系统是一个基于单片机AT89C51的语音温度计的设计,用来测量环境温度,整个设计系统分为5部分:
单片机控制、温度传感器、液晶显示、语音报温以及键盘控制电路,整个设计是以AT89C51为核心,选用DS18B20单总线数字温度传感器,RT1602液晶显示器实现,液晶显示当前日期、时间和温度。
当测量温度超过设定的温度上下限时,启动蜂鸣器和指示灯报警。
温度显示稳定,且温度测量误差≤±1℃,温度值小数部分保留两位有效数字。
增加了手动实时播报时间温度功能。
LCD采用的是RT1602,它具有功耗低、体积小、显示内容丰富、超薄轻巧等优点,应用越来越广泛。
整个设计其外围电路相对比较简单,实现容易。
在本论文中附带了软件实现的流程图以及部分子程序以及各种硬件电路图。
关键词:
DS18B20;液晶显示;语音播报;声光报警
Abstract
ThissystemisadesignofthespeechthermometeraccordingtothemicroprocessorAT89C51,whichisusedtomeasuretheenvironmenttemperature,Thewholedesignsystemisdividedinto5parts:
Amicroprocessorcontrol,temperaturesensor,theLCDdisplay,thespeechreportandthekeyboardcontrolcircuit,atthesametime.ThewholedesigntakeAT89C51asthecore,choosetosinglebusdigitaltemperaturesensorDS18B20,DS1302serialclockchip,RT1602LCDmonitorrealization,LCDdisplaythecurrentdate,time,weeksandtemperature.Whenmeasuringtemperatureoversettemperaturefluctuationlimit,startwithlightalarmbuzzer.Temperaturedisplaystability,andtemperaturemeasurementerroracuities1℃,plusorminustemperaturethedecimalpartretainedtwosignificantdigits.Increasedmanualreal-timebroadcasttimetemperaturefunction.TheLCDIchooseisRT1602,itspowerconsumeislow,ithasmanyadvantages,forexample,thevolumeissmall,thecontentsisabundant,superthinandagileetc,anditsapplicationisbecomingmoreandmoreextensive.Thewholedesignliesinitsoutercircuitismuchmoresimple,anditcancarryoutmoreeasily.Inmythesis,thereareflowchartandpartsofsubprogramandvarioushardwarecircuitdiagrams.
Keyword:
DS18B20;LCD;speechfunction;soundingandlightalarm
1引言1
1引言
电子计算机的发展和变化是极为惊人的,自从1946年世界上第一胎电子计算机问世到现在为止不过几十几年的时间,电子计算机的发展已经经历了四个时代:
第一代为电子管数字计算机时代,发展年代为1946年到1958年。
此时,逻辑元件采用的是电子管,主存储器用到的是磁鼓,磁芯,外用存储器采用的是磁带,运行速度为每秒几千次到几万次。
其用途是用来进行科学计算。
第二代是采用晶体管的计算机,期发展时代为1958年到1964年。
逻辑元件由原来的电子管变为了晶体管。
第三代计算机中采用的是中,小规模的集成电路,其发展时代是从1964年到1971年。
1971年之后就出现了集成在一块大规模集成电路上的处理器--微型电子计算机的核心。
通常认为第四代计算机的起点是70年代的中期以后,那时中,大型计算机中应用的是大规模集成的电子芯片,第四代计算机时代在80年代仍然持续。
微处理器的由抵挡向高档发展的同时,单片微型计算机也在不断的发展中:
1975年美国德州仪器(TI)公司推出TMS-1000,英代尔公司推出40044位单片机。
1980年英代尔公司在MCS-48系列的基础上,又推出高性能的MCS-51系列8位单片机。
1982年16位单片机问世后。
英代尔又推出了MCS-96系列16位单片机。
而今32位单片机又以其强大的功能提供给应用者。
目前单片机正在继续向提高性能的方向发展着:
一方面继续增加芯片的时钟频率,使之更加适应快速的应用环境,另外芯片内的存储器容量也在继续增加,使得芯片存放程序和数据的能力可以不断扩大。
单片机的另一个功能就是其特有的功能。
实际上,单片机的品种远比微处理器的品种多,原因在于单片机能够根据不同的应用环境发挥各自不同的性能上的特点[1]。
随着集成技术的发展和应用广泛的迫切需要,单片机的发展十分迅速,其发展趋势具有以下特点:
高度可靠性,高速度性,低功率,技术高新化,宽电压,品种多样化。
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。
例如精密的测量设备(电压表、功率计,示波器,各种分析仪)。
21世纪是人类全面进入信息电子化的时代,现代信息技术的三大基础是信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)。
人类探知领域和空间的拓展,人们需要获得的电子信息种类也日益增加,需要信息传递的速度也就更快,信息处理能力也要增强,因此要求与此相对应的信息采集技术――传感器技术必须跟上信息化发展的需要。
传感器技术是人类得到自然界信息的触觉,它为人们认识和控制相应的对象提供更方便的条件和更可靠的依据。
现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。
它属于信息技术的前沿尖端产品,尤其是温度传感器被广泛应用于工农业生产、科学研究和生活等领域,应用数量居各种传感器之首。
近百年来,温度传感器的发展经历了三个阶段:
(1)传统的分立式温度传感器(含敏感元件);
(2)模拟集成温度传感器/控制器;(3)智能温度传感器。
目前,国际上新型温度传感器正从由模拟式向数字式、从集成化向智能化、网络化的方向发展。
作为现代信息技术的三大核心技术之一的传感技术,将是二十一世纪世界各国在高新技术发展方面争夺的一个重要领域。
2方案论证
分析本题,根据设计要求先确定了本系统的整体设计原理框图如图所示
图2.1原理框图
2.1电源模块
方案一:
采用四只干电池作为电源。
该方案的优点是设计简明扼要,成本低;,能独立驱动单片机,适合小电流负载。
方案二:
采用独立的稳压电源。
电源的稳压的特性较好,能够保证整个系统稳定工作。
但是产生了很多赘余的线路。
综上分析,为使系统调试方便,能够稳定工作,成本低,简明扼要等要求,所以决定选择第一种方案。
2.2温度传感器模块
方案一:
AD590是单片集成的敏感电流源,激励电压在+4V—+30V间选择,其测量范围为-55摄氏度-150摄氏度,所输出的电流数值(微安数)等于绝对温度K的数值。
AD590具有标准化的输出和固有的线性关系,分不同的测温范围和精度供设计者选用,通过微调电路对AD590的输出进行修正,可达到很高的测试精度。
AD590不需要低电平测量设备和电桥,可以使用长导线,而不会因为电压的降低和感应的噪声电压而产生误差;它又是一个高阻抗的电流源;对激励的电压变化不够敏感。
但是AD590需要把被测温度转化为电流再通过放大器和A/D转换器才能输出数字量送给单片机进行温度控[1]。
方案二:
DS18B20是美国达拉斯半导体公司推出的第一片支持“一线总线”接口的温度传感器。
它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,可以将温度直接转化成串行数字量供微处理器处理。
因此,在温度测量系统中,采用抗干扰能力强的新型数字温度传感器是解决这些问题的有效方案,新型数字温度传感器DS18B20具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网优点,在实际测温的过程中取得了良好的测量效果。
其供电方式简单,可用数据线供电,所需的外围器件较少,甚至不需要外围器件。
通过比较,根据本设计电路简单和设计的要求考虑,温度传感器DS18B20具有更高的性价比,DS18B20能够构建经济的测温网络。
因而在本次设计中,选用的是达拉斯公司生产的数字温度传感器DS18B20,故采用的是方案二。
2.3显示模块
方案一:
采用八位数码管,将单片机的数据通过数码管显示出来。
该方案简单易行,成本低,但所需的元器件较多,且不容易进行操作,可读性较差,一旦设定后,很难加入其它的功能,显示格式受控制,且耗电量大。
方案二:
采用LCD显示屏进行显示。
LCD显示屏是一种低压、微功耗的显示器件,只要2-3伏就可以工作了,工作电流仅为几微安,是其它显示器无法相比的,同时可以显示大量信息,除数字外,还可以显示字母,曲线,比其他传统的LED数码显示器的画面有了质的提高。
虽然LCD显示器的价格比传统的LED数码管要贵些,但它的显示效果更好,是当今显示器的主流应用的产品,所以采用LCD作为显示器。
采用LCD显示屏,更容易实现题目的要求,对后续功能的兼容性很高,只需将软件修改即可完成不同的功能,可操作性强,易于读数,采用RT1602两行十六字符的显示屏进行显示,能同时显示日期,时间,温度。
综上分析,LCD显示屏具有方便显示和画面显示清晰等特点所以采用第二种方案。
2.4键盘控制模块
方案一:
4×4矩阵式键盘。
此方案对于本系统来说无非是浪费I/O占用MCU的资源,不利于系统的扩展和开发,会使系统的实用性降低,况且本系统根本不需要16个按键。
方案二:
独立式按键。
对于独立式按键来说,如果设置过多按键,虽然会占用较多I/O口,给布线带来不便,此方案适用于按键较少的情况。
综上分心,在本设计中所需要的控制点数的较少,只需要几个功能键,简便、易操作、成本低就成了首要考虑的因素。
所以此时,采用方案二。
2.5语音播报模块
方案一:
通过A/D转换器、单片机,存储器,D\A转换器实现声音信号的采样、处理、存储和实现。
首先将声音信号放大,通过AD转换器采样将语音模拟信号转换成数字信号,并由单片机和处理存放到存储器中,实现录音操作。
在录、放音过程中由单片机控制D/A转换器,将存储器中的数据转化成声音信号。
此方案安装调试复杂,集成度低,成本也不低。
方案二:
采用ISD1420语音录放。
ISD1420是采用模拟存取技术集成的可反复录放的20秒语音芯片,掉电语音不丢失,最大可分160段,最小每段语音长度为125ms,每段语音都可由地址线控制输出,每125ms为一个地址,由A0-A7八根地址线控制。
该芯片采用多电平直接模拟量存储专利技术,每个采样值可直接存储在片内单个EEPROM单元中,因此能够非常真实、自然地再现语音、音乐、音调和效果声。
此外,ISD1420还省去了A/D和D/A转换器,方便扩展更多的功能。
综上所述,选择方案二,即ISD1420[1]。
3设计原理
本系统选用的模块包括:
单片机系统,电源模块,LCD显示模块,语音播报模块,温度传感器模块,键盘控制模块。
3.1单片机模块
本次的毕业设计的核心部分是单片机的控制,给以相关的执行命令,按照人们的意愿执行相应的操作命令,这次选用的是日常生活中常用的芯片AT89C51,主要是他的价格便宜,而且通用性较强,容易获得并能完美的完成设计要求。
3.1.1单片机介绍
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。
单片机的命名比较杂乱,在计算机技术中,但基本的意思就是单片微型计算机(Single-ChipMicrocomputer)的简称。
形象的说,单片机是一种简化了的计算机,其主要针对各种小型设备和便携式的设备等嵌入式系统。
1946年,世界上第一胎电子数字计算机ENIAC在美国宾西法尼亚大学研制成功。
随后,计算机技术便突飞猛进,很难想象其在短短的几十年的时间居然发展得如此神速,普及得如此广泛。
在计算机技术中,单片微型计算机,也就是单片机,也是异军突起,发展十分迅速,已成为电子工程师必备的技术。
单片机内部集成了中央处理器(CentralProcessingUnit,CPU)、只读存储器(ReadOnlyMemory,ROM)、随即存取存储器(RandomAccessMemory,RAM)、定时器/计算器及I/O(Input/Output)接口等部件。
这些部件使单片机具有了和计算机同等强大的功能[2]。
a.运算器电路
运算器电路包括ALU(算术逻辑单元)、ACC(累加器)、B寄存器、状态寄存器、暂存器1和暂存器2等部件,运算器的功能是进行算术运算和逻辑运算。
b.控制器电路
控制器电路包括程序计数器PC、PC加1寄存器、指令寄存器、指令译码器、数据指针DPTR、堆栈指针SP、缓冲器以及定时与控制电路等。
控制电路完成指挥控制工作,协调单片机各部分正常工作。
c.定时器/计数器
定时/计数器就相当于一个方便的闹钟,主要用于单片机硬件的定时或者计数。
典型的8051单片机有两个16位的可编程定时器/计数器,以实现定时或者计数两种功能。
通过定时器/计数器可以为串口通信组件提供波特率的计量,也可以产生相应的中断控制程序的转向。
d.存储器
存储器包括数据存储器和程序存储器,其主要特点是程序存储器和数据存储器的寻址空间是相互独立的,物理结构也不相同。
e.并行I/O口
MCS-52单片机共有4个8位的I/O口(P0、P1、P2和P3),每一条I/O线都能独立地用作输入或输出。
P0口为三态双向口,能带8个TTL门电路,P1、P2和P3口为准双向口,负载能力为4个TTL门电路。
f.串行I/O口
MCS-521单片机具有一个采用通用异步工作方式的全双工串行通信接口,可以同时发送和接收数据。
g.中断控制系统
中断系统式一种应急响应的系统。
典型的8051单片机提供了两个外部中断、两个定时/计数器中断和一个串行中断。
中断系统统一管理所有的中断源的响应,同时这些中断源提供了2级的优先级别供选择[2]。
h.时钟振荡电路
时钟振荡电路为单片机指令的执行提供了一个统一的步调。
典型的8051单片机内置了时钟振荡电路,只需外接一个无源晶振和振荡电容便可以工作。
时钟振荡电路产生的时钟,是供整个单片机运行的脉冲时序。
当然,单片机还提供了灵活的外部时钟源工作方式。
i.总线
以上所有部分都是通过总线连接起来,从而构成一个完整的单片机。
系统的地址信号、数据信号和控制信号都是通过总线传送的,总线结构减少了单片机的连线和引脚,提高了集成度和可靠性。
选用单片机的结构:
1一个8位算术逻辑单元
232个I/O口4组8位端口可单独寻址
3两个16位定时计数器
4全双工串行通信
56个中断源两个中断优先级
6128字节内置RAM
7独立的64K字节可寻址数据和代码区
每个8051处理周期包括12个振荡周期,每12个振荡周期用来完成一项操作。
如取指令和计算指令执行时间,可把时钟频率除以12取倒数,然后指令执行所须的周期数。
因此如果你的系统时钟是11.059MHz,除以12后就得到了每秒执行的指令个数为921583条,指令取倒数将得到每条指令所须的时间1.085ms。
3.1.2单片机外围电路设计
本次设计采用的是一个种高性能、功耗低CMOS8位的单片机--AT89C51,片内包含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89C51具有如下特点:
40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,看门狗(WDT)电路,2个16位可编程定时计数器,2个全双工串行通信口,片内时钟振荡器。
另外,AT89C51中还配置和设计了振荡频率,可通过软件设置到省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM中的数据,停止芯片其它功能直到外中断激活或硬件复位。
同时该芯片还采用了其他三种封装形式即:
PDIP、TQFP和PLCC等。
微型处理器的基本功能都综合在了AT89C51中。
当温度传感器的信号送达至AT89C51芯片时,部程序将依据送达信号的类型进行处理,并将处理结果送达显示模块、报警模块、语音播报模块。
并且发送控制信号控制各个模块。
模块在硬件设计方面上,外围电路提供能使其工作的晶振脉冲和复位按键,四个I/O口分别用于外围设备的连接。
单片机AT89C51的I/O端口具体分配与下表3.1:
表3.1AT89C51的I/O端口具体分配
AT89C51的IO端口
外接点
P0.1-P0.7
语音芯片播音地址端口
P1.0-P1.7
LCD地址显示端
P2.0
DS18b20通道
P2.4-P2.7
连接键盘控制端口
P2.1-P2.3
DS1302
P0.0
开始播音口
P3.1
LCD读/写选择端
P3.0
LCD数据/命令端
P3.2
LCD使能端
3.1.3AT89C51复位电路
任何微机系统执行的第一步都是系统复位,其作用是使整个控制芯片回到默认的硬件状态下即:
单片机的片内电路初始化过程。
也就是使单片机从一种确定的初态开始运行。
AT89C51的复位过程是通过外部的复位电路实现的。
复位引脚RST通过一个施密特触发器与复位电路相连结,施密特触发器作用是用来抑制噪声,复位电路通常采用两种方式:
上电自动复位、按钮复位。
手动复位:
人为的在复位输入端加上高电平让使系统复位得方法即为手动复位。
一般方法是利用一个在RST端和正电源VCC之间的按键,当按下按键时,VCC和RST端接通,RST引脚处高电平,按键动作时间一般是数十毫秒,大于两个机器周期的时间,能够安全的使系统复位。
上电复位:
上电复位电路属于简单的复位电路,需要在RST复位引脚接一个电容到VCC上,接一个电阻到地就可以了。
上电复位作用是在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号会随着VCC对电容的充电过程而回落,所以电容的充电时间决定RST引脚复位的高电平维持时间。
为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。
在本设计中复位电路的设计是采用简单、用得比较广泛的复位电路接法,如图3.1所示,它具有按键复位和上电复位的双重复位功能。
图3.1复位电路
3.1.4AT89C51时钟电路
时钟的作用相当于单片机的心脏,单片机各功能部件的运行工作状况都是以时钟频率为基准,有条不紊的按照给定的时钟频率工作。
所以,时钟频率直接影响得是单片机的工作速度,单片机系统的稳定性也取决于时钟电路的质量。
常用的时钟电路有两种方式:
一种是内部时钟方式,另外一种是外部时钟方式。
本文用的是内部时钟方式。
电路图3.2所示:
图3.2时钟电路
AT89C51单片机内部有一个用于构成高增益反相放大器的振荡器,这个高增益反向放大器的输入端芯片引脚为XTAL1,输出端引脚为XTAL2。
这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。
3.2温度传感器模块
本模块主要作用是进行温度采集,然后AT89C51进行分析处理采集到的数据。
本次设计中采用了DS18B20作为温度数据采集器,它的精度可以精确到0.0625,完全可以用来进行环境温度的测量和采集。
DS18B20是美国DALLAS公司生产的单总线数字温度传感器,其作用是可把温度信号直接转换成串行数字信号供微处理器处理,而且可以在一条总线上挂接任意多个DS18B20芯片,构成多点温度检测系统无需任何外加硬件。
DS18B20数字温度传感器可提供9~12位温度读数,读取或写入DS18B20的信息仅需一根总线,总线本身可以向所有挂接的DS18B20芯片提供电源,而不需额外的电源。
由DS18B20这一特点,非常适合于多点温度检测系统,硬件结构简单,方便联网,在仓储管理、工农业生产制造、气象观测、科学研究以及日常生活中被广泛应用[1]。
3.2.1DS18B20的测温原理
DS18B20内有一个能直接转化为数字量的温度传感器,其分辨率9,10,11,12bit并且可编程,通过设置内部配置寄存器来选择温度的转换精度,出厂时默认设置12bit。
温度的转换精度有0.5℃、0.25℃、0.125℃、0.0625℃。
温度转换后以16bit格式存入便笺式RAM,可以用读便笺式RAM命令(BEH)通过1-Wire接口读取温度信息,数据传输时低位在前,高位在后。
温度/数字对应关系如表3.2所示(分辨率为12bit时)。
由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。
操作协议为:
初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据
表3.2温度和数据对应表
温度
二进制数据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 AT89C51 语音 温度计 设计 学士学位 论文