




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、吉吉 林林 农农 业业 大大 学学本本 科科 毕毕 业业 设设 计计论文题目: 室内温湿度语音播报系统的设计 学生姓名: 专业年级:电子信息科学与技术 指导教师: 职称: 讲 师 2008 年 6 月 3 日i目目 录录题目.i摘要及关键字.i1 前言.11.1 题目的来源与开发意义.11.2 系统功能概述.12 方案的提出及论证.12.1 温湿度传感器的选择.12.2 语音录放电路的选择.23 系统硬件设计.33.1 系统硬件总体设计概述.33.2 系统框图.33.3 系统各模块的设计.43.3.1 温湿度测量模块.43.3.2 语音录放模块.43.3.3 显示模块.53.3.4 时钟模块.
2、63.3.5 键盘控制模块.73.4 硬件电路主要器件.73.4.1 at89c51 单片机.73.4.2 温湿度传感器 sht11.73.4.3 isd4003 系列语音芯片.113.4.4 ds1302 的结构及工作原理 .144 系统软件设计.164.1 系统软件总体设计思想.164.2 各功能模块的软件设计.164.2.1 温湿度测量的程序设计.164.2.2 语音播报的程序设计.174.2.3 温湿度显示的程序设计.185 系统调试.195.1 硬件电路调试.195.2 各功能模块软件调试.196 结论.19参考文献.20致 谢.20ii附录一:系统总体电路原理图 .21附录二:程序
3、流程图.22吉林农业大学本科毕业设计i室内温湿度语音播报系统的设计学 生: 专 业:电子信息科学与技术 指导教师:摘摘 要:要:本设计主要是研究室内温湿度的测量并实现语音播报的功能,在该系统中采用at89c52单片机作主控制器,采用瑞士scnsirion 公司推出的高度集成的温湿度传感器芯片sht-11,实现室内温湿度的测量并通过单片机的串行口进行静态显示,再通过采用语音芯片isd4003所组成的语音电路实现温湿度的语音播报,另外本系统还兼有多功能时钟功能。本设计采用静态显示大大节省了单片机的i/o资源,软件部分用c语言编写,易读、可移植性好。本系统主要包括温湿度测量模块、语音录放模块、温湿度
4、显示模块、时钟模块和键盘控制模块五个部分。关关键词键词: :单片机;sht-11;isd4003;温湿度测量;语音播报the design of indoor temperature and humidityvoice broadcast systemname:he haitao major:electronics information science and technologytutor:gong heabstract: this design mainly researches for the measurement of indoor temperature and humidity
5、 and achieves the function of the voice broadcast, in which, at89c2 scm is used as master controller and a highly integrated temperature and humidity sensor chip sht-11 developed by switzerland scnsirion company is adopted to achieve the measurement of indoor temperature and humidity and make a stat
6、ic display through the serial interface of scm, then voice broadcast of temperature and humidity is achieved through the use of voice circuit composed of voice chip isd4003.in addition, the system also features the function of muti-functional clock. this design adopts a static display to save the i/
7、o resources of scm significantly. software is compiled with c-language partially, easy to be read and has a good portability. this system mainly includes five parts of temperature and humidity measurement module, voice recording module, temperature and humidity display module, clock module and keybo
8、ard control module.keywords: scm;sht-11;isd4003;measurement of temperature and humidity;voice broadcast吉林农业大学本科毕业设计11 前言1.1 题目的来源与开发意义作为获取信息的手段传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因此,不仅必须掌握各类传感器的结构、原理及
9、其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信和信息处理结合起来,适应传感器的生产、研制、开发和应用。为了提高对传感器的认识和了解,尤其是对温湿度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统,在生产和生活中应用性都比较强。本文利用单片机结合传感器技术和语音技术而开发设计了这一室内温湿度语音播报系统。本设计不仅可以显示室内的温湿度,而且能够实现温湿度的语音播报,使其更人性化,操作方便,控制灵活。1.2 系统功能概述本设计系统主要包括温湿度测量
10、模块、语音录放模块、温湿度显示模块、时钟模块和键盘控制模块五个部分。采用高度集成的温湿度传感器芯片sht-11测量室内温湿度,经由显示模块进行显示,并通过语音录放模块实现温湿度的语音播报,采用at89c51单片机作为主控制器,最后通过程序对其外围电路进行控制。实现温湿度的语音播报是本设计的创新之处,使其实用性更强。 2 方案的提出及论证2.1 温湿度传感器的选择在本设计中,传感器是实现测量的首要环节,是测量系统的关键部件,如果没有传感器对原始被测信号进行准确可靠的捕捉和转换,一切准确的测量都将无法实现。方案一:采用热电阻温度传感器。热电阻是利用导体的电阻随温度变化的特性制成的测温元件。现应用较
11、多的有铂、铜、镍等热电阻。其主要的特点为精度高、测量范围大、便于远距离测量。铂的物理、化学性能极稳定,耐氧化能力强,易提纯,复制性好,工业性好,电阻率较高,因此,铂电阻用于工业检测中高精密测温和温度标准。缺点是价格贵,温度系数小,受到磁场影响大,在还原介质中易被玷污变脆。按 iec 标准测温范围-200650,吉林农业大学本科毕业设计2百度电阻比 w(100)=1.3850 时,r0 为 100 和 10,其允许的测量误差 a 级为(0.15+0.002 |t|),b 级为(0.3+0.005 |t|)。铜电阻的温度系数比铂电阻大,价格低,也易于提纯和加工;但其电阻率小,在腐蚀性介质中使用稳定
12、性差。在工业中用于-50180测温。这种温度传感器采集的是模拟信号,需要 a/d 转换器,因此外围电路比较复杂,性能也不稳定。采用 hos-201 湿敏传感器。hos-201 湿敏传感器为高湿度开关传感器,它的工作电压为交流 1v 以下,频率为 50hz1khz,测量湿度范围为 0100%rh,工作温度范围为 050,阻抗在 75%rh(25)时为 1m。这种传感器原是用于开关的传感器,不能在宽频带范围内检测湿度,因此,主要用于判断规定值以上或以下的湿度电平。然而,这种传感器只限于一定范围内使用时具有良好的线性,而且该传感器也是采集的模拟信号。方案二:温度测量传感器采用 dallas 公司 d
13、s18b20 的单总线数字化温度传感器1,2,测温范围为-5525,可编程为 9 位12 位 a/d 转换精度,测温分辨率达到 0.0625,采用寄生电源工作方式, 单片机只需一根口线便能与 ds18b20 通信,占用单片机口线少,可节省大量引线和逻辑电路。 采用 hs1100/hs1101 湿度传感器3。hs1100/hs1101 电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结构,由顶端接触(hs1100)和侧面接触(hs1101)两种封装产品,适用于线性电压输出和频率输出两种
14、电路,适宜于制造流水线上的自动插件和自动装配过程等。相对湿度在 1%100%rh 范围内;电容量由 16pf 变到 200pf,其误差不大于2%rh;响应时间小于 5s;温度系数为0.04 pf/,因此该湿度传感器的精度是较高的。但要将测量的模拟信号转换为数字信号,需加 a/d 转换器。方案三:采用瑞士 scnsirion 公司推出的基于 cmosenstm 技术的新型智能温湿度传感器sht114,5,集温、湿度传感器、信号放大和调理、a/d 转换、i2c 总线接口于一个芯片上,带有工业标准 i2c 总线数字输出接口。sht11 智能温湿度传感器具有数字式输出,并具有免调试、免标定、免外围电路
15、及可全互换等特点。从而克服了传统模拟式湿度传感器需要设计信号调理电路,以及所需要的复杂校准和标定过程,同时也大大提高了湿度传感器的测量精度。该芯片只需两根口线与单片机相连,节省了单片机的 i/o 资源,而且不需要 a/d 转换电路,电路简单。从硬件电路的难易程度、性能和控制灵活性上考虑,我选择了方案二。2.2 语音录放电路的选择方案一:吉林农业大学本科毕业设计3at89c52单片机温湿度测量电路静态显示电路语音播报电路键盘控制电路时钟电路采用中青世纪公司 2003 年最新开发的智能语音产品 pm50 系列语音芯片,它既是语音播放电路,也是智能单片机,其开发设计简单、智能控制简单,音质效果好。该
16、芯片由专用的语音单片机和 flashram 存储器集合构成,它既有几秒到 100 秒的多段语音播放功能,也有单片机可编程的智能特性,大规模复杂电路已经缩微到只有 cob28 封装(18*36mm)的印板上,可以方便地作为 dip28 封装的标准集成电路来使用。方案二:采用isd公司生产的isd4000系列中的isd4003-04语音芯片6,它既可以放音也可以录音。该芯片采用cmos技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(spi或microwire)送入。芯片采用多电平直接模
17、拟量存储技术, 每个采样值直接存贮在片内闪烁存贮器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。虽然pm50系列语音芯片的性价比要优于isd4000系列,但考虑到pm50系列无录音功能,无法录制自己想要的语音,因此我选择了方案二。3 系统硬件设计3.1 系统硬件总体设计概述本设计系统的硬件部分主要包括温湿度测量模块、语音录放模块、温湿度显示模块、时钟模块和键盘控制模块五个部分。硬件部分是以at89c51单片机作为主控制器,通过温湿度传感器sht11对室内温湿度进行测量,可以提供全标定的温湿度数字输出,通过串行口用6个数码
18、管组成的静态显示电路分别显示温度和湿度,并且该系统还兼具多功能时钟的功能。为了使该系统实用性更强,更人性化,采用isd4003组成的语音模块对温湿度进行语音播报,并用按键加以控制,按一下键就能将当前室内的温度和湿度播报出来。3.2 系统框图本系统的总体框图如图3-1所示:图 3-1 系统总体框图fig. 3-1 overall system block diagram吉林农业大学本科毕业设计43.3 系统各模块的设计3.3.1 温湿度测量模块温湿度测量模块采用温湿度传感器sht11,通过引脚data和sck与单片机进行数据通信。sck用于单片机与sht11之间的通讯同步;data三态门用于数据
19、的读取。data在sck时钟下降沿之后改变状态,并仅在sck时钟上升沿有效。数据传输期间,在sck时钟高电平时,data必须保持稳定。为避免信号冲突,单片机应驱动data在低电平,需要一个外部的上拉电阻。图中在data 端接入了一只4.7 k 的上拉电阻,同时还在vdd 及gnd 端接入了一只0.1 f的去耦电容。硬件电路图如图3-2所示5:图3-2 温湿度测量模块电路图fig .3-2 temperature and humidity measurements circuit3.3.2 语音录放模块语音录放模块采用 isd4003 芯片,整个语音录放电路由录音电路和放音电路组成。从图中可以看
20、到 isd4003 与单片机的连线较少,p2.2 接 isd4003 的片选引脚,控制ssisd4003 是否选通;p2.0 接 isd4003 的串行输出引脚 miso;p2.1 接 isd4003 的串行输入引脚 mosi,从该引脚读入放音的地址;p2.3 和 p3.2 分别接 isd4003 的串行时钟引脚sclk 和中断引脚。isd4003 的输出端接一个 lm386 的功率放大器,以提高输出语int音的功率。lm386 是美国国家半导体公司生产的音频功率放大器,在 6v 电源电压下,它的静态功耗仅为 24mw,使得 lm386 特别适用于电池供电的场合。硬件电路图如图3-3 所示6:
21、吉林农业大学本科毕业设计5 图3-3 语音录放电路图fig. 3-3 voice recording and playback circuit3.3.3 显示模块显示模块采用串行静态显示,通过引脚 rxd(p3.0,串行数据接收引脚)和引脚txd(p3.1,串行数据发送引脚)进行数据传输,经过串并转换器 74ls164 并行输出数据。采用串行输出可以大大节省单片机的内部资源,串并转换器采用 74ls164,驱动七段数码管8,低电平时允许通过 8ma 的电流,无需添加其他的驱动电路,采用较小的驱动电流就可以得到较高的显示亮度,其电路图如图 3-4 所示7,8:吉林农业大学本科毕业设计6 图3-4
22、显示电路图fig. 3-4 show circuit3.3.4 时钟模块 时钟电路由时钟芯片 ds1302 及其外围电路组成,由于 ds1302 是串行时钟芯片,与单片机的连线少,只需要三根口线分别与ds1302串行总线的i/o,sclk,相连。rst其电路图如图3-5所示:图3-5 时钟电路图fig. 3-5 clock circuit吉林农业大学本科毕业设计73.3.5 键盘控制模块整个系统的工作通过按键进行控制,按下 an1 键显示当前室内温湿度值并语音播报;按下 an2 键显示当前时间并语音播;按下 an4 键显示当前室内温度值并语音播报;按下 an5 键显示当前室内湿度值并语音播报;
23、按下 an3 键进入时间调整状态,此时按下 an4 键调整小时位,按下 an5 键调整分位;an6 键为时间调整确认/音乐键。图3-6 按键控制电路图fig. 3-6 keyboard control circuit3.4 硬件电路主要器件3.4.1 at89c51 单片机at89c51是一种带4k字节闪烁可编程可擦除只读存储器(fperomfalsh programmable and erasable read only memory)的低电压,高性能cmos8位微处理器,俗称单片机。at89c51是一种带4k字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100
24、次。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚相兼容。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,at89c2051是它的一种精简版本。at89c51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要特性:与mcs-51兼容;4k字节可编程闪烁存储器,寿命:1000写/擦循环,数据保留时间:10年;全静态工作:0hz-24hz;三级程序存储器锁定;128*8位内部ram;32可编程i/o线;两个16位定时器/计数器;5个中断源;可编程串行通道;低功耗的闲置和掉电模式;片内振荡器和
25、时钟电路。3.4.2 温湿度传感器 sht11sht11 温湿度传感器的主要特性如下:将温湿度传感器、信号放大调理、a/d转换、i2c总线接口全部集成于一芯(cmosenstm技术);可给出全校准相对湿度及温度值输出;带有工业标准的i2c总线数吉林农业大学本科毕业设计8字输出接口;具有露点值计算输出功能;具有卓越的长期稳定性;湿度值输出分辨率为14位,温度值输出分辨率为12位,并可编程为12位和8位;小体积(7.655.0823.5mm),可表面贴装;具有可靠的crc数据传输校验功能;片内装载的校准系数可保证100%互换性;电源电压范围为2.4-5.5v;电流消耗,测量时为550ua,平均为2
26、8ua,休眠时为3ua。sht11温湿度传感器采用smd(lcc)表面贴片封装形式,管脚排列及典型应用电路如图3-7所示。引脚说明如下:gnd:接地端;data:双向串行数据线;data三态门用于数据的读取。data在sck时钟下降沿之后改变状态,并仅在sck时钟上升沿有效。数据传输期间,在sck时钟高电平时,data必须保持稳定。为避免信号冲突,微处理器应驱动data在低电平。需要一个外部的上拉电阻(例如:10k)将信号提拉至高电平。sck:串行时钟输入;vdd电源端:0.45.5v电源端;电源引脚(vdd,gnd)之间可增加一个100nf的电容,用以去耦滤波。nc:空管脚。 图 3-7 s
27、ht11 引脚图及典型应用电路 fig.3-7 sht11 foot map and typical application circuit工作原理sht11的湿度检测运用电容式结构,并采用具有不同保护的“微型结构”检测电极系统与聚合物覆盖层来组成传感器芯片的电容,除保持电容式湿敏器件的原有特性外,还可抵御来自外界的影响。由于它将温度传感器与湿度传感器结合在一起而构成了一个单一的个体,因而测量精度较高且可精确得出露点,同时不会产生由于温度与湿度传感器之间随温度梯度变化引起的误差。cmosenstm技术不仅将温湿度传感器结合在一起,而且还将信号放大器、模数转换器、校准数据存储器、标准i2c总线等
28、电路全部集成在一个芯片内。sht11传感器的内部结构框图如图3-8所示:吉林农业大学本科毕业设计9图3-8 sht11内部结构框图 fig.3-8 sht11 internal structure diagramsht11的每一个传感器都是在极为精确的湿度室中校准的。sht11传感器的校准系数预先存在otp内存中。经校准的相对湿度和温度传感器与一个14位的a/d转换器相连,可将转换后的数字温湿度值送给二线i2c总线器件,从而将数字信号转换为符合i2c总线协议的串行数字信号。湿度值输出sht11可通过i2c总线直接输出数字量湿度值,其相对湿度数字输出特性曲线图3-8所示。由图3-9可看出,sht
29、11的输出特性呈一定的非线性,为了补偿湿度传感器的非线性,可按如下公式修正湿度值:rhlinear =c1 +c2*sorh +c3*sorh 式中sorh为传感器相对湿度测量值,系数取值如下:12 位:sorh:c1=,c2=0.040,c3=462.8 108 位:sorh:c1=,c2=0.648,c3= 447.2 10图3-9 从sorh转换到相对湿度fig.3-9 conversion from sorh to relative humidity吉林农业大学本科毕业设计10温度值输出5由于sht11温度传感器的线性非常好, 故可用下列公式将温度数字输出转换成实际温度值: t=d1+
30、d2*sot当电源电压为5v,且温度传感器的分辨率为14位时: d1 =, d2 =0. 0140当温度传感器的分辨率为12位时: d1=, d2 =0. 0440sht11传感器共有5条用户命令,具体命令格式见表3-1所列。表3-1 sht11命令集tab. 3-1 sht11 list of commands命令编码说明测量温度00011温度测量测量湿度00101湿度测量读寄存器状态00111“读”状态寄存器写寄存器状态00110“写”状态寄存器软启动11110重启芯片,清楚状态记录器的错误记录11毫秒后进入下一个命令当发出了温湿度测量命令后,控制器就要等到测量完成。使用8/12/14位的
31、分辨率测量分别需要大约11/55/210ms的时间。为表明测量完成,sht11会使数据线为低,此时控制器必须重新启动sck,然后传送两字节的测量数据与1字节crc校验和。控制器必须通过使data为低来确认每一个字节,所有的量均从右算,msb列于第一位。通讯在确认crc数据位后停止。如果没有用crc-8校验和,则控制器就会在测量数据lsb后保持ack为高以停止通讯,sht11在测量和通讯完成后会自动返回睡眠模式。需要注意的是:为使sht11的温升低于0.1,此时的工作频率不能大于标定值的15%(如:12位精确度时,每秒最多进行3次测量)。测量温度和湿度命令所对应的时序如图3-10所示。吉林农业大
32、学本科毕业设计11图3-10 测量时序概览 (ts = 启动传输) fig3-10 overview of measurement sequence (ts = transmission start)寄存器配置sht11传感器中的一些高级功能是通过状态寄存器来实现的,寄存器各位的类型及说明见表3-4所列。表3-2 sht11状态寄存器位tab. 3-2 sht11 status register bits位类型说明缺省备注7预留06读电量不足 (低电压检测)0对应vdd 2.471对应 vdd 2.47x无默认值,此位仅在测量结束后更新5预留04预留03仅供测试, 不使用02读/写加热0关1读
33、/写不从 otp 加载0加载0读/写1= 8位相对湿度/12位温度分辨率0=12相对湿度/14位温度分辨率012位相对湿度14位温度3.4.3 isd4003 系列语音芯片引脚图及引脚描述吉林农业大学本科毕业设计12 图 3-11 isd4003 引脚图fig.3-11 isd4003 foot map电源:(vcca,vccd) 为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上,模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量造近器件。 地线:(vssa,vssd) 芯片内部的模拟和数字电路也使用不同的地线。几个 vssa 尽量在引
34、脚焊盘上相连,并用低阻通路连至电源上,vssd 也用低阻通路连至电源上。这些接地通路要足以使 vssa 与 vssd 之间的阻值小于 3。芯片的背面是通过衬底电阻连接到 vss 的,在做 cob 时托盘须接 vss 或悬空。 同相模拟输入:(ana in+) 这是录音信号的同相输入端。输入放大器可用单端或差分驱动。单端驱动时,信号由耦合电容输入,最大幅度为峰峰值 32mv,耦合电容和本端的3k 电阻输入阻抗决定了芯片频带的低端截止频率。差分驱动时,信号最大幅度为峰峰值 16mv。反相模拟输入:(ana in-)差分驱动时, 这是录音信号的反相输入端。信号通过耦合电容输入,最大幅度为峰峰值 16
35、mv。音频输入:(aud out)提供音频输出,可驱动 5k 的负载。片选:( ss)此端为低,即向该 isd4003 芯片发送指令,两条指令之间为高电平。串行输入:(mosi)此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供 isd 输入。串行输出:(miso) isd 的串行输出端。isd 未选中时,本端呈高阻态。串行时钟:(sclk) isd 的时钟输入端,由主控制器产生,用于同步 mosi 和 miso 的数据传输。数据在 sclk 上升沿锁存到 isd,在下降沿移出 isd。中断:(/int) 本端为漏极开路输出。isd 在任何操作(包括快进)中检测到 eo
36、m 或ovf 时,本端变低并保持。中断状态在下一个 spi 周期开始时清除。中断状态也可用rint 指令读取。 ovf 标志-指示 isd 的录、放操作已到达存储器的未尾。 eom 标志-只在放音中检测到内部的 eom 标志时,此状态位才置 1。行地址时钟:(rac) 漏极开路输出。每个 rac 周期表示 isd 存储器的操作进行了一行(isd4003 系列中的存贮器其 1200 行)。该信号 175ms 保持高电平,低电平为 25ms。快进模式下,rac 的 218.75s 是高电平,31.25s 为低电平。该端可用于存储管理技术。 外部时钟(xclk):本端内部有下拉元件。芯片内部的采样时
37、 钟在出厂前已调校,误差在+1%内。 商业级芯片在整个温度和电压范围内, 频率变化在+2.25%内。工业级芯片在整个温度和电压范围内,频率变化在-6/+4%内,此时建议使用稳压电源。若要求更高精吉林农业大学本科毕业设计13度,可从本端输入外部时钟(如前表所列)。由于内部的防混淆及平滑滤波器已设定,故上述推荐的时钟频率不应改变。输入时钟的占空比无关紧要,因内部首先进行了分频。在不外接地时钟时,此端必须接地。 自动静噪(amcap):当录音信号电平下降到内部设定的某一阈值以下时,自动静噪功能使信号衰弱,这样有助于养活无信号(静音)时的噪声。通常本端对地接 1f 的电容,构成内部信号电平峰值检测电路
38、的一部分。检出的峰值电平与内部设定的阈值作比较,决定自动静噪功能的翻转点。大信号时,自动静噪电路不衰减,静音时衰减 6db。1f 的电容也影响自动静噪电路对信号幅度的响应速度。本端接 vcca 则禁止自动静噪。isd4003 工作于 spi 串行接口。spi 协议是一个同步串行数据传输协议,协议假定微控制器的 spi 移位寄存器在 sclk 的下降沿动作,因此对 isd4003 而言,在时钟止升沿锁存 mosi 引脚的数据,在下降沿将数据送至 miso 引脚。信息快进:用户不必知道信息的确切地址,就能快进跳过一条信息。信息快进只用于放音模式。放音速度是正常的 1600 倍,遇到 eom 后停止
39、,然后内部地址计数器加 1,指向下条信息的开始处。上电顺序:器件延时 tpud(8khz 采样时,约为 25 毫秒)后才能开始操作。因此,用户发完上电指令后,必须等待 tpud,才能发出一条操作指令。例如:从 00 从处发音,应遵循如下时序:发 power up 命令;等待 tpud(上电延时);发地址值为 00 的 setplay 命令;发play 命令。器件会从此 00 地址开始放音,当出现 eom 时,立即中断,停止放音。如果从 00 处发音,则按以下时序:发 power up 命令;等待 tpud(上电延时);发power up 命令;等待 2 倍 tpud;发地址值为 00 的 se
40、trec 命令;发 rec 命令。器件便从 00 地址开始录音,一直到出现 ovf(存贮器末尾)时,录音停止。表3-3 指令表 tab. 3-3 opcode summary指令5 位控制码操作摘要powerup00100上电:等待 tpud 后器件可以工作set play11100从指定地址开始放音。必须后跟 play 指令使放音继续play11110从当前地址开始放音(直至 eom 或 ovf)set rec10100从指定地址开始录音。必须后跟 rec 指令录音继续rec10110从当前地址开始录音(直至 ovf 或停止)set mc11101从指定地址开始快进。必须后跟 mc 指令快进
41、继续mc11111执行快进,直到 eom.若再无信息,则进入ovf 状态吉林农业大学本科毕业设计14stop0x110停止当前操作stop wrdn0x01x停止当前操作并掉电rint0x110读状态:ovf 和 eom注:快进只能在放音操作开始时选择。 spi 控制寄存器控制器件的每个功能,如录放、录音、信息检索(快进)、上电/掉电、开始和停止操作、忽略地址指针等。详见下表: 表 3-4 spi 控制寄存器tab. 3-4 spi control register位值功 能位值功 能run=10允许/禁止操作开始停止pu =10电源控制上电掉电p/r=10录/放模式放取录iab=10操作是否
42、使用指令地址忽略输入地址寄存的内容使用输入地址寄存的内容mc=10快进模式允许快进禁止p10-p0a10-a0行指针寄存器输出输入地址寄存器注:iab 置 0 时,录、放操作从 a9-a0 地址开始。为了能连贯地录、放到后续的存储空间,在操作到达该行末之前,应发出第二个 spi 指令将 iab 置 1,否则器件在同一地址上反复循环。这个特点对语音提示功能很有用。rac 脚和 iab 位可用于信息管理。吉林农业大学本科毕业设计153.4.4 ds1302 的结构及工作原理ds1302是美国dallas公司推出的一种高性能、低功耗、带ram 的实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行
43、计时,且具有闰年补偿功能,工作电压宽达2.55.5v。采用三线接口与cpu进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或ram 数据。ds1302内部有一个318的用于临时性存放数据的ram 寄存器。ds1302是ds1202的升级产品,与ds1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。引脚功能及结构图ds1302的引脚如图3-12所示:图 3-12 ds1302 引脚图 fig.3-12 ds1302-pin mapvcc1为后备电源,vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。ds1302由vcc1或vcc2
44、两者中的较大者供电。当vcc2大于vcc1+0.2v时,vcc2给ds1302供电。当vcc2小于vcc1时,ds1302由vcc1供电。x1、x2为振荡源,外接32.768hz晶振。rst是复位,片选线,通过把rst输入驱动置高电平来启动所有的数据传送。输入有两种功能:(1) 接通控制逻辑,允许地址/命令序列送入移位寄存器;rstrst(2) rst提供了终止单字节或多字节数据的传送手段。当为高电平时,所有的数据传rst送被初始化,允许对ds1302进行操作。如果在传送过程中置rst为低电平,则会终止此次数据传送,并且i/o引脚变为高阻态。上电运行时,在vcc2.5v之前,必须保持低rst电
45、平。只有在sclk为低电平时,才能将rst置为高电平。i/o为串行数据输入输出端(双向),下文有详细说明。sclk为时钟输入端。dsl302的控制字节说明ds1302的控制字节如表3-5所示,最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到ds1302中;位6如果为0,则表示存取日历时钟数据,为1表示存取ram 数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。表3-5 ds1302控制字节 tab. 3-5 ds1302 control bytes765432101ram a4a3a2a1a0rd吉林
46、农业大学本科毕业设计16/ck/wr数据输入输出io在控制指令字输入后的下一个sclk时钟的上升沿时数据被写入ds1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个sclk脉冲的下降沿读出ds1302的数据,读出数据时从低位0位至高位7。dsl302的寄存器ds1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为bcd码形式,其日历、时间寄存器及其控制字如表3-6所列。表3-6 ds1302寄存器分配表 tab. 3-6 ds1302 register allocation 命令字各位内容寄存器名写操作读操作取值范围76543210秒寄存器80h8
47、1h0059启动十位个位分寄存器82h83h00590十位个位时寄存器84h85h0112或002312/24010十位个位日寄存器86h87h0128,29,30,3100十位个位月寄存器88h89h011200010m个位周寄存器8ah8bh010700000个位年寄存器8ch8dh0099十位个位此外,ds1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与ram 相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。ds1302与ram 相关的寄存器分为两类,一类是单个ram 单元,共31个,每个单元组态为一个8位的字节,其命令控制字为c0hfdh
48、,其中奇数为读操作,偶数为写操作;另一类为突发方式下的ram 寄存器,此方式下可一次性读写所有的ram 的31个字节,命令控制字为feh(写)、ffh (读)。4 系统软件设计4.1 系统软件总体设计思想为了便于程序的调用和程序的调试,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明,使硬件在软件的控制下协调运作。电路在上电后,程序首先完成温湿度传感器sht11的初始化,然后进入温湿度测量子程序,从sht11读出当前室内的温湿度数据,在此时如果数据已经传递完毕,则ack=1,终止通讯,否则继续;之后调用温湿度转换程序,将温湿度数据转换成摄氏温度/吉林农业大学本科毕业设计17相对湿度。在
49、此期间查询按键状态,如果有按键按下,则转去执行该按键指向的工作程序,语音播报当前室内的温湿度。4.2 各功能模块的软件设计4.2.1 温湿度测量的程序设计当一个sck高电平时,data 出现低电平,然后sck变为低电平,接着当sck 高电平时data变为高电平则表示开始数据读写(启动序列)。然后是3 b的地址+5 b的命令,然后在sck继续发送一个周期的时钟表示ack,这时传感器开始测量,约1155210 ms(分别对应81214位精度)后,传感器在data上送出低电平表示测量结束,然后送出测量数据和校验值。为保证测量的可靠,应核对校验值。下面是sht11的读写程序:/* 函数名称: iics
50、endbyte 入口参数: ch 函数功能: 发送一个字节*/void iicsendbyte(unsigned char ch) unsigned char idata n=8; /* 向sda上发送一位数据字节,共八位*/ while(n-) if(ch&0 x80) = 0 x80) /* 若要发送的数据最高位为1则发送位1 */ sda = 1; /* 传送位1 */scl = 1;scl = 0; else sda = 0; /* 否则传送位0 */scl = 1;scl = 0; ch = ch1; /* 数据左移一位*/* 返回接收的数据 函数功能: 接收一字节子程序吉林
51、农业大学本科毕业设计18*/unsigned char iicreceivebyte(void)unsigned char idata n=8; /* 从sda线上读取一上数据字节,共八位*/unsigned char tdata;while(n-) sda = 1; scl = 1; tdata = tdata1; /* 左移一位,或_crol_(temp,1) */ if(sda = 1) tdata = tdata|0 x01; /* 若接收到的位为1,则数据的最后一位置1 */ else tdata = tdata&0 xfe; /* 否则数据的最后一位置0 */ scl=0;
52、return(tdata);4.2.2 语音播报的程序设计isd4003工作于spi串行接口,spi协议要求数据在时钟上升沿移入、在下降沿移出,即在时钟上升沿锁存mosi引脚的数据,写入命令字,在下降沿将数据送至miso引脚,读端口的状态字和命令字。命令字的高5位为操作码,低11位为操作地址。等上电后,直接指定地址放音,后跟从当前地址放音,完成放音操作。但由于我们无法知道每段录音的具体地址,所以我在录音后通过放音程序指定播放地址找到每段录音的首地址,放在一个缓冲区里,以便选音播放时调用。下面是isd4003的串行发送子程序:/* isd4003 spi串行发送子程序,8位数据*/void sp
53、i_send(unsigned char isdx) unsigned char isx_counter; ss=0; /*ss=0,打开spi通信端*/ sclk=0; for(isx_counter=0;isx_counter1; sclk=1; delayus(2); sclk=0; delayus(2); 4.2.3 温湿度显示的程序设计测量的温湿度采用静态显示,利用单片机的串行口 rxd(p3.0)和 txd(p3.1)进行数据通讯。将 sht11 采集到的温湿度数据进行处理,得到各个位上的数值,调用显示子程序进行显示。下面是串行口的显示子程序12:void displaysled(
54、int q,int dp)uchar code distab.13=0 x0ee,0 x28,0 x0cd,0 x6d,0 x2b,0 x67,0 x0e7,0 x02c,0 x0ef,0 x6f, 0 x0, 0 xab,0 x86; /* 0 1 2 3 4 5 6 7 8 9 消隐码 h t */ scon=0; if(dp=1) sbuf=distab.q|0 x10; /*产生小数点*/ else sbuf=distab.q; while(ti=0); ti=0;5 系统调试5.1 硬件电路调试硬件电路的调试在系统设计中占有很重要的地位,是对设计的电路能否正常工作,是否能达到设计的要
55、求的检查和测量。调试过程就是利用符合指标要求的各种仪器,例如万用表、示波器、信号发生器、逻辑分析仪等各种测量仪器,对焊接好的电路进行调整吉林农业大学本科毕业设计20和测量,以判断其性能好坏13。首先,电路焊接完成后,不急于通电,先认真检查接线是否正确,找出是否有遗漏或者接错的地方。然后用万用表检查电路中是否有短路和断路的现象,并检查所有的电源线是否导通,所有的地线是否导通。接通电源,用万用表检测各部分电路的电压和电流是否正常。在前三步都没有错误后,编写相应的程序来检查各个功能模块是否正常工作,只到确认硬件电路没有问题为止。5.2 各功能模块软件调试硬件电路检查无误后,需要对系统的各个模块进行软
56、件与硬件相结合的调试。使用wave 系列仿真器,将仿真器接入硬件电路中,并和电脑的串行口相连。把编写的各个模块的程序先单独调试,通过 wave 软件观察定义的各个量的数据是否是预计的,如果不是,经过逐步调试查出错误所在,并加以更正。在各个模块的程序都正常工作后,将其建立成一个工程,并编写主程序,再加以调试,最后得到正确结果,实现系统功能。6 结论本次设计由于自己理论知识的有限和实践经验的不足,使得本设计还存在着一些不足与缺陷,但是基本实现了设计要求的功能。通过本次毕业设计,收获的不仅是理论方面的知识,更重要的是锻炼了实际动手能力,还有初步掌握了设计一个系统时需要的设计思想和方法,这对以后的学习
57、和工作都是一个很大的帮助。参考文献1 楼然苗,李光飞.单片机课程设计指导m.第 1 版. 北京:北京航空航天大学出版社,2007:55762 万光毅,严义,邢春香. 单片机实验与实践教程(一) m. 第 2 版. 北京:北京航空航天大学出版社,2006:1932073 蒋敏兰,胡生清,幸国全.ad590 温度传感器的非线性补偿及应用j.传感器技术,2001,20(10):54554 孟臣,李敏. sht71数字式温湿度传感器原理与应用j. 世界电子元器件,2003,(8):66685 孟臣,李敏,李爱传. i2 c总线数字式温湿度传感器sht11及其在单片机系统的应用 j . 国外电子元器件,
58、 2004,(3):5054.6 2006 数码语音芯片、产品及应用电路资料汇编m.中青世纪科技,2006:36407 李华.mcs-51 单片机实用接口技术m.北京:北京航空航天大学出版社,23458 英国guiyun tian.单片机原理及应用(英文版)m.北京:高等教育出版社, 吉林农业大学本科毕业设计21gain1-input2+input3gnd4gain8bypa ss7v6vout 5lm386ss1mos12mos03vssd4nc5nc6nc7nc8nc9nc10vssa11vssa12andout13amcap14scl k28vccd27xclk26int25rac24v
59、ssa23nc22nc21nc20nc19vcca18ana in+17ana in-16nc15isd40030.1uf1.0uf4.7ufle dmicrophonepot2speaker1.0uf1.0uf0.1uf0.1ufnpn10k100k0.1uf10k1k10uf1k+5v2.2uf8.2k12mhz0.01uf0.01ufdata2sck3vdd4gnd1sht 114.7k0.1ufa1b2q03q14q25q36q410q511q612q713clk8mr974ls164a1b2q03q14q25q36q410q511q612q713clk8mr974ls164a1b2q03q14q25q36q410q511q612
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 阿米巴经营考试题及答案
- 街道社工考试题及答案
- 神经源性膀胱护理查房
- 物业管理及物业电工培训
- 冠脉搭桥术后心理护理
- 肿瘤学概论:化疗专题
- 质量意识培训报告
- 导尿管技术及尿管护理
- 犬猫尿常规检查规范与解读
- 钢板材质培训
- 呼伦贝尔职业技术学院辅导员考试试题2024
- 团体心理咨询的主要理论专家讲座
- TCHALPA 0004-2023 民用无人机应急救援应用专业操控员合格证考试点管理办法
- 无损检测PTⅡ级渗透检测理论考试题库
- 《安全仪表系统SIS》课件
- 《项目管理WBS分解》课件
- 万科物业新员工入职考试卷附答案
- 极化曲线研究论文
- 幼儿园大班班本课程《再见幼儿园》
- 兴趣与能力的培养的课程设计
- 为什么天空是蓝色的
评论
0/150
提交评论