




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
语音播报计时器的设计毕业论文目 录摘 要IAbstractII1 绪论11.1 本设计的目的和意义11.2 本设计的研究现状11.3 设计要求22 系统设计方案32.1 方案论证与比较32.2.1时钟电路部分32.1.2语音提醒电路部分42.2 系统总体方案设计43 硬件电路的设计63.1单片机电路设计63.1.1 AT89S51的特点63.1.2时钟振荡电路63.1.3复位及复位电路73.2 时钟电路的设计83.2.1串行时钟芯片DS1302简介93.2.2 DS1302的引脚及功能93.2.3 DS1302数据传送时序103.3 LED显示电路设计113.3.1 LED显示器的选择123.3.2 LED的段驱动芯片选择123.3.3 LED位驱动芯片的选择133.3.4 LED驱动电路与单片机的连接143.4 按键电路设计153.4.1键盘的工作原理163.4.2键盘的功能介绍163.5提醒电路的设计173.5.1蜂鸣器电路的设计173.5.2语音提醒电路的设计184 系统程序设计224.1主程序设计224.2 LED动态显示程序模块的设计234.3按键检测和处理程序244.4语音提醒程序设计264.4.1语音录入程序264.5.2放音程序275 系统调试及分析285.1硬件调试285.2软件调试296 结论32谢 辞33参考文献34附录35附录2 36I语音播报记事器的设计1 绪论1.1 本设计的目的和意义随着时代的发展与进步,人们的生活节奏越来越快,竞争也日趋激烈。因此,合理的安排时间,遵守时间,准时上课、上班、赴约、到会、洽谈等是每个人的愿望。但是,往往稍一疏忽又无人提醒,造成迟到或其他事件,甚至产生了严重的后果和经济损失。此时,若有一台智能语音记事器,将各种约定时间记录下来,按时进行语音提醒,就可以避免迟到、缺席事件的产生。也会给我们的工作和学习带来极大的方便。1.2 本设计的研究现状近年来,集成电路技术的飞速发展,单片语音集成电路领域就出现了重大变革,产生了许多新的技术和产品,开拓了更广泛的应用领域,并朝着更大容量,更优音质,更高智能,更具有灵活性的方向发展。90年代初期,美国ISD公司利用本公司的专利“直接模拟存储技术”(DAST)把模拟数据成功的存入半导体存储器中。其突破性的EEPROM存储方法可以将模拟语音数据直接写入单个存储单元,不需要经过A/D或D/A转换。比同等数字方式具有更大的集成度,且存储的数据不挥发。此系列产品具有音质自然、使用方便、单片存储、反复录放、低功耗、抗断电等许多特点。ISD系列语音录放组件可用于各种一段式语音留言装置、语音报警及语音提示装置中,能够在电源断开的情况下,长期保存信息,又可以随意更改录入的内容,整个体积小巧,使用领域十分广泛,也极为方便。鉴于此,我们在通讯设备、电话机、智能仪器仪表、治安报警系统、语音报站/报数/报价器、语音复读机、教学仪器、智能玩具、高档电子礼品等场合获得了广泛的应用。随着人们生活的提高,人们已经不满足单一时钟的需求,因此语音技术应用于时钟给人们的生活带来了更多的方便, 从目前语音技术的研究现状来讲,技术已经有了很大发展。传统语音组合电路的设计十分复杂,开发工具十分昂贵,语音录制及软件编制工作量巨大,而且组合出来的语音效果也不甚理想,尤其在投资不大的产品、系统中最为突出,从而制约了这一技术的应用和发展。语音识别和语音合成技术是实现人机语音通信及建立一个有听和讲能力的口语系统所必需的两项关键技术。使其具有类似于人一样的说话和听懂人说话的能力。目前常见的语音记事报时系统是触发式语音记事报时系统,它通过人工触发相关按键,实现语音正确记事报时。但是这种系统由于需要人为触发,其实并没有实现真正意义上的自动报时功能。如今,语音识别技术的广泛应用,就出现了一些具有实用价值的语音专用芯片,这为智能语音报时系统的研制提供了技术条件。现在开发的系统都是在现有触发式语音报时系统的基础上,增加语音识别电路,使得开发后的系统能够具有对话应答报时记事的功能,实现语音记事报时真正自动化、智能化。1.3 设计要求本设计实现一种语音播报记事器,其功能要求如下:(1)具有标准的日历/时钟,即年、月、日、星期、时、分和秒,闰年自动修正的功能。(2)显示器由4位数字型数码管组成。(3)显示时间值和日期,常态下显示时间,利用一个按键控制显示日期。(4)能够随时对当前时间进行调整。(5)能够随时输入定时播报(闹钟)时间。(6)定时播报(闹钟)时间到,发出语音提醒信号和蜂鸣器提示信号。2 系统设计方案2.1 方案论证与比较语音播报记事器的电路分为两大部分:一部分是时钟电路,另一部分是语音提醒电路。下面来分别论证两部分电路的方案。2.2.1时钟电路部分应用单片机控制实时时钟系统根据基准信号产生的途径,可以分为两种,一种以单片机中的定时器作为实时时钟基准;二是利用专用实时时钟日历芯片产生基准时钟信号。单片机按键接入电路时钟电路复位电路LED显示器段码驱动LED显示器位码驱动4位LED显示器电路图2-1基于单片机定时器的时钟电路框图第一种方案:图2-1为基于单片机定时器的时钟部分电路框图。在这种方案下时钟源由单片机定时器提供,定时闹钟由软件实现,定时器在单片机内部,无需外加器件, 通过编程实现每1秒产生一次中断,每产生一次中断,秒单元加1,秒单元加到59时,跳回到零再继续加,同时分单元加1,以次类推,从而实现时、分、秒的走时,并显示。由于此方法在断电后将停止走时,且通电后必须对时钟再进行调时、校准。精度受单片机外接电容等的影响,成本低但精度差,而且程序设计困难。第二种方案:图2-2为基于时钟芯片的时钟电路框图。时钟源由实时时钟芯片提供,实时时钟能自动产生时钟基准信号,且带日期及闰年调整功能,记时功能和集成度高,程序设计相对简单。图2-2 基于时钟芯片的时钟电路框图通过上述方案设计及性能比较,在本设计中采用第二种方案。2.1.2语音提醒电路部分如图2-3所示,语音提醒电路部分由单片机、语音芯片、扬声器、送话器和蜂鸣器组成。语音芯片配合相应的外围电路就可以构成一个录放音电路。在录音和放音时可以通过按键控制,极其方便。与单片机连接后放音可以由单片机控制。单片机语音芯片扬声器送话器蜂鸣器控制图2-3语音提醒电路框图2.2 系统总体方案设计根据设计要求与设计方案选择,采用单片机作为核心控制部件,采用可檫除、可分段语音处理芯片ISD1420记录语言以及其他外围电路组成语音提醒系统。该系统由实时时钟、当前时间调整、提醒时间设置、LED译码/驱动、时间显示和语音处理等模块组成。系统设计框图如图2-4所示。时钟源由实时时钟芯片提供,由于时钟芯片可以与单片机进行双向通信,所以,可以先通过时间设置把当前时间值写入单片机中,然后再通过单片机把当前时间写入时钟芯片。提醒时间设置类似于当前时间的设置,当定时时间到时,单片机控制语音模块驱动扬声器播报语音及蜂鸣器发声。单片机实时时钟芯片提醒时间设置当前时间调整LED译码驱动模块4位LED显示语音处理模块扬声器送话器蜂鸣器控制图2-4语音播报记事器系统设计框图3 硬件电路的设计3.1单片机电路设计单片机是将中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、定时器/计数器及输入输出接口电路等计算机主要部件集成在一块集成电路芯片上的微型计算机。现在世界上已经有很多大公司能够生产单片机,随着超大规模集成电路的迅猛发展,单片机的功能也日渐强大,运算速度日益提高,相继出现了32位和64位单片机,但根据实际系统的需要和产品的性价比,本设计选用ATMEL公司生产的8位单片机AT89S51。3.1.1 AT89S51的特点AT89S51是ATMEL公司采用CMOS工艺生产的低功耗、高性能8位单片机,与MCS-51单片机兼容,其功能特点为:(1)4K字节闪烁存储器(FLASH),可进行1000次写、擦除操作。(2)静态操作,外接0Hz24MHz晶振。(3)三层加密程序存储器。(4)128字节内部数据存储器(RAM)。(5)32根可编程输入/输出线。(6)两个6位定时/计数器。(7)6个中断源。(8)一个可编程串口。(9)支持低功耗模式和掉电模式。3.1.2时钟振荡电路 AT89S51内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图3-1所示,在XTAL1和XTAL2引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.212MHz之间选择,电容值在530pF之间选择,电容值的大小可对频率起微调的作用。图3-1 内部方式时钟电路 图3-2 外部方式时钟电路外部方式的时钟电路如图3-2所示,XTAL1接地,XTAL2接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。本系统采用内部时钟方式且晶振选择的是12MHz。 3.1.3复位及复位电路 (1)复位操作复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表3-1所示。表3-1 一些寄存器的复位状态寄存器复位状态寄存器复位状态PC0000HTCON00HACC00HTL000HPSW00HTH000HSP07HTL100HDPTR0000HTH100HP0P3FFHSCON00HIPXX000000BSBUF不定IE0X000000BPCON0XXX0000BTMOD00H(2)复位信号及其产生RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。复位操作有上电自动复位相按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图3-3(a)所示。这样,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。按键手动复位有电平方式和脉冲方式两种。其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的,其电路如图3-3(b)所示;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的,其电路如图3-3(c)所示。 本系统采用按键电平复位。 图3-3(a)上电复位 图3-3(b)按键电平复位 图3-3(c)按键脉冲复位3.2 时钟电路的设计本设计采用的是美国DALLAS公司生产的能提供秒、分、时、日、月及年等信息,对小于31天的月末日期进行调整,还包括闰年的校正功能的串行时钟芯片DS1302,它与单片机的连接如图3-4所示,时钟芯片的SCL、I/O、RST三个引脚分别与单片机的P2.0、P2.1、P2.2三个端口相连。时钟芯片X1和X2脚由32.768kHz晶振和两个5.6pF的电容组成回路。图3-4 实时时钟电路与单片机的连接3.2.1串行时钟芯片DS1302简介DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,采用串行通信方式与单片机通信,体积仅仅是传统的时钟芯片的1/4,得到广泛应用。它可以对年、月、日、周、时、分、秒进行计时,且具有闰年补偿功能,工作电压宽达2.55.5V。采用三线接口与CPU进行同步通信,并可采用多字节传送方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源备用电源双电源引脚。DS1302的时钟校准也较为容易,若采用专用晶振器,几乎无须调整即可达到国家要求的时钟误差标准。适用于长时间无人职守的监测控制系统或需要经常记录某些具有特殊意义的数据及对应时间的场合。3.2.2 DS1302的引脚及功能DS1302的引脚如图3-5所示,各引脚的功能如下:(1)VCC1、GND:+5V电源和接地引脚。(2)X1、X2:外接晶振引脚,晶振频率为32.768kHz。(3)RST:片选信号引脚,高电平有效。(4)I/O:串行数据输入/输出引脚。(5)SCLK:数据传送控制时钟输入引脚。(6)VCC2:备用电源输入引脚。图3-5 DS1302引脚排列3.2.3 DS1302数据传送时序DS1302与单片机的通信仅需3根线,即RST(复位线)、I/O(数据线)及SCLK(串行时钟线)。数据可按每次1字节或多达31字节的形式传送到时钟寄存器或RAM,也可以从中读出。DS1302数据传送时序如图3-6所示。开始数据传送,首先把RST置为高电平,然后提供地址和命令信息(8位)。在进行单字节传送或多字节传送时,开始的8位命令字节用于指定RAM和时钟寄存器中哪个将被访问。在开始8个时钟周期把命令装入移位寄存器之后,在SCLK时钟控制下,读操作时输出数据,写操作时输入数据。图3-6 DS1302数据传送时序DS1302有单字节传送方式和多字节传送方式。通过把RST复位线驱动至高电平,启动所有的数据传送。数据输入时,时钟的上升沿数据必须有效,数据的输出在时钟的下降沿。如果RST为低电平,那么所有的数据传送将被中止,且I/O引脚变为高阻状态。上电时,在VCC12.5V之前,RST=0。当RST1状态时,SCLK必须为逻辑0。单字节数据输入跟随在写命令字节的8个SCLK周期之后,在随后的8个SCLK周期的上升沿输入数据字节,数据从低位开始输入。单字节数据输出跟随在输入读命令字节的8个SCLK周期之后,在随后的8个SCLK周期的下降沿输出数据字节。注意,被传送的第一个数据位发生在写命令字节的最后一位之后的第一个下降沿。只要RST保持为高电平,如果继续有SCLK周期,它们将继续发送数据字节。这一操作使DS1302具有连续的多字节方式的读能力。在SCLK为高电平期间,I/O引脚为高阻状态。数据从位0开始输出。DS1302还有用于主电源和备用电源相连接的双电源引脚VCC1和VCC2,使用时DS1302由VCC1或VCC2两者中较大者供电。当VCC2VCC1时,VCC2给DS1302供电;当VCC2VCC1时,VCC1给DS1302供电。这样使系统在没有主电源的情况下,也能保持时钟的连续运行。此外,它还提供可编程的慢速充电功能,从而对备用电池进行供充电。3.3 LED显示电路设计单片机应用系统中,通常都需要进行人机对话。这包括人对应用系统的状态干预与数据输入,以及应用系统向人们显示运行状态与运行结果等。显示器、键盘电路就是用来完成人机对话活动的人机通道。LED显示器的驱动是一个重要的问题,由于单片机的并行口不能直接驱动LED显示器,必须采用专用的驱动电路芯片,使之产生足够大的电流,显示器才能正常工作。如果驱动能力很差,即负载能力不够时,显示器亮度就低,而且驱动电路长期在超负荷下运行容易损坏。因此,在实际使用中必须接入LED驱动电路。LED显示器的显示控制方式分为静态显示和动态显示两种,因此在选择LED驱动器时,一定要先选定显示方式。若选择静态显示,则LED驱动的选择较为简单只要驱动器的驱动能力与显示器电流相匹配即可。而且只需考虑段的驱动,因为共阳极接+5V,而共阴极接地,所以位的驱动不需要考虑。动态显示则不同,由于一位数据的显示是段选和位选信号共同配合完成的,因此,要同时考虑段和位的驱动能力,而且段的驱动能力决定位的驱动能力。3.3.1 LED显示器的选择在应用系统中,设计要求不同,使用的LED显示器的位数也不同,在本设计中 ,选择4位一体的时钟型LED显示器,简称“4-LED”,如图3-8所示。用“:”前两位显示时间“小时”的十位和个位,用“:”后两位显示“分”的十位和个位。4-LED显示器引脚如图3-7所示,是一个共阴极接法的4位时钟型LED显示器。其中a、b、c、d、e、f、g为4位LED各段的公共引出端。D1、D2、D3、D4分别是每一位的共阴极输出端,dp是小数点引出端。它是由4个单独的LED和一个“:”LED组成,每个LED的段输出引脚在内部并联后,引出器件的外部。对于这种结构的LED显示器,它的体积和结构都符合设计要求,由于4位LED阴极的各段已经在内部接在一起,所以必须使用动态扫描方式。图3-7 4位LED引脚排列图3.3.2 LED的段驱动芯片选择 LED的段驱动电路有很多种,可以选择BCD-7段锁存/译码/驱动器作为段驱动电路。在本设计中选择74LS48芯片,该芯片具有锁存、译码、驱动的功能。即在输入端输入要显示字型的BCD码,在输出端就可以得到具有一定驱动能力的7段显示字型码。图3-8、图3-9给出了74LS48的引脚图和结构原理图。引脚图中大写字母A、B、C、D为BCD码的输入端,小写字母a、b、c、d、e、f、g为字型码输出端,LT为灯测试输入端,RBI为消隐输入,RBO为消隐输出。在本设计中,将该芯片图3-8 74LS48芯片引脚图图3-9 74LS48芯片电路结构原理图的输入端引脚A、B、C、D与单片机的P1口相连接,该芯片的输出端7个引脚,与LED显示器的7段段码引脚相连接。74LS48的作用是接收来自单片机的BCD码型的输入信号,经过锁存、译码、放大后,输出7段字型码锁存、译码和驱动的功能。3.3.3 LED位驱动芯片的选择LED位驱动较常用的芯片ULN2003和ULN2803。前者是具有7个达林顿电路的集成芯片,后者是具有8个达林顿电路的集成芯片。此种芯片集电极可以收集最大达500mA的电流,耐压为30V,能驱动常规的LED显示器。图3-10是ULN2003的引脚图,其中IN1IN7引脚是输入端,OUT1OUT7引脚是输出端。图3-10 ULN2003芯片的引脚图ULN2803和ULN2003芯片的电路原理完全相同,只是在结构上ULN2803比ULN2003多一路驱动器。在本设计中选用ULN2003作为位驱动电路,将芯片的输入端IN1、IN2、IN3、IN4与单片机的P1口连接,将该芯片的OUT1、OUT2、OUT3、OUT4与LED显示器的4个位码引脚D1、D2、D3、D4相连接。ULN2003的作用是接收来自单片机的位码输入信号,经过反相放大后输出,送到LED显示器的位码引脚,完成对位码信号的反向和驱动的功能。3.3.4 LED驱动电路与单片机的连接本设计采用单片机的P1口作为与LED的输出接口,即P1口的低四位作为LED的段码输出信号,P1口的高四位作为LED位码的输出控制信号。硬件电路连接如图3-11所示。图3-11 4-LED显示器接口电路原理图该电路的工作原理是:当P1口的低四位输出段码信号的BCD码后,通过74LS48芯片的锁存、译码、驱动作用,在其输出端输出具有一定驱动能力的7段字型码,由于4-LED的段码输入引脚是并联在一起的,所以每一位LED的段码输入引脚都能获得这个段码信号,若要控制在每一时刻只有一位LED被点亮,必须靠位码信号控制。P1口的高四位输出位码信号,经过ULN2003反向后接到LED的位码控制端,因此P1口的位码信号在每一时刻只有一位是“1”,其它位全是“0”,然后按时间顺序改变输出“1”的位置,控制在每一时刻只有一位LED被点亮,达到了动态显示的目的。若要显示“0123”时,P1口的控制信号及4-LED的显示状态如表表3-2所示。表3-2 4-LED动态扫描显示状态点亮顺序P1口控制字符(位码、段码)74LS48输出段码g f e d c b a2003输出位码D1 D2 D3 D4显示器的显示状态11000 0000(80H)011 1111(3FH)0 1 1 1020100 0001(41H)000 0110(06H)1 0 1 1130010 0010(22H)101 1011(5BH)1 1 0 1240001 0011(13H)100 1111(4FH)1 1 1 03例如:要完成“0123”的显示,必须对P1口进行编程: 4-LED:MOV P1,#80H ;将D1位选通码“1000B”与“0”的BCD码“0000B”送P1口LCALL DYI ;调用延时1msMOV P1,#41H ;将D2位选通码“0100B”与“1”的BCD码“0001B”送P1口LCALL DYI ;调用延时1ms子程序MOV P1,#22H ;将D3位选通码“0010B”与“2”的BCD码“0010B”送P1口LCALL DYI ;调用延时1ms子程序MOV P1,#13H ;将D4位选通码“0001B”与“3”的BCD码“0001B”送P1口LCALL DYI ;调用延时1ms子程序上述程序每隔10ms执行一次,就可以实现动态显示的目的。3.4 按键电路设计语音播报记事器在工作时应具备的几项基本的功能,一是随时对当前时间进行调整,二是能够通过切换键来显示日期,三是随时输入定时播报(闹钟)时间。要实现这几项功能可以接入键盘输入电路。3.4.1键盘的工作原理在单片机应用系统中,键盘是人机对话的主要设备,用于向单片机应用系统输入数据和操作命令。当键按下或松开时,会向单片机CPU输入一个“0”电平或“1”电平,CPU根据接收到的“0”或“1”电平信号,决定具体的操作。但是在键的按下和松开时,开关的机械触点会产生抖动,一般抖动时间在5ms10ms左右,抖动的波形如图3-12所示。在抖动期间CPU不能接收到稳定的电平信号而无法做出正确的判断,因此需要对键进行去抖动处理。消除抖动的措施有硬件消除和软件消除两种方式。软件消除抖动法,是编写一段延时的程序,来达到消除抖动的作用。在软件消除抖动方法中,若CPU检测到有键按下,就执行一段延时程序后再检测此按键,若仍为按下状态,CPU则认为该键确实按下。同样,当键从按下再松开时,CPU检测到有键松开,并在延时一段时间后仍检测到键在松开状态,则认为键确实松开,这样就消除了抖动的影响,实现了软件消除抖动的功能。图3-12键合断时的电压抖动在单片机应用系统中,使用到的按键有独立式按键和矩阵式按键两种,本设计中采用的是独立式键盘。3.4.2键盘的功能介绍如图3-13图示,将键盘直接与单片机的P3口连接,电路由按键和上拉电阻组成。把与P3.0P3.4相连的按键分别命名为SET、ALM、+1、RET和RS键,按键采用轻触开关。按键功能的设计思路如下:SET键功能:设置当前时间和日期,即当时钟的时间有误差时,需要随时对它进行调整时,使用SET键与+1键、RS键、RET键配合来完成这一功能。 ALM键功能:设置定时时间,即当需要时钟进行定时服务时,可以通过该键的功能来输入定时时间,使用ALM键、+1键、RS键、RET键来配合完成这一功能。+1键:分别对时间值,日期值,定时时间值进行+1操作,即在调整时间、日期、定时时间时对应的调整位+1,在常态下按下该键切换显示“日期”。RS键:移位键,在选定调整时间、日期、定时时间时,每按下一次顺序移动要设置的位,同时显示要调整的值。在常态下按下该键切换显示时间的“秒”值。RET键:确认键,对+1键调整位进行确认,该键按下时,说明被调整位的值已经确定,转去调整下一位,在常态下按下该键切换显示时间的“星期”值。键盘的硬件电路设计只能保证5个按键信号的可靠输入,要想完成键盘的输入功能,还要靠软件编程来具体实现。图3-13 键盘与单片机的接口电路3.5提醒电路的设计为了能够在约定时间提醒用户该做什么事情,达到记事的目的,本设计加入了提醒电路的设计。提醒电路由两部分组成即语音提醒电路和蜂鸣器提醒电路。3.5.1蜂鸣器电路的设计本设计的蜂鸣器电路原理图如图3-14所示。压电式蜂鸣器工作时约需要10mA的驱动电流,并设计一个相应的驱动及控制电路。蜂鸣器作为三极管的集电极负载,当三极管导通时蜂鸣器发出鸣叫的声音,三极管截止时,蜂鸣器不发声,电阻是限流电阻。蜂鸣器电路与单片机的接口:三极管的基极接到单片机的P2口的P2.7脚P2.7作为输出口使用。当P2.7=0时,三极管导通时,使蜂鸣器中有电流通过,而产生蜂鸣音。当P2.7=1时,三极管截止,蜂鸣器的两引脚间的直流电压接近于0V,蜂鸣器不发声。图3-14 蜂鸣器电路设计原理图3.5.2语音提醒电路的设计1.语音芯片ISD1420简介语音芯片ISD1420是语音处理集成电路,ISD1420芯片型号的最后2位数字表示语音播放时间的长度。录放音时间最长达20s。这种语音芯片内部有基准时钟源,以单一电源V供电。芯片的录放次数可达10万次,在芯片内存储的语音信息可保存100年。配合相应的外围元件就可以构成一个录放音电路。在录音和放音时可通过按键控制,极其方便。语音芯片ISD1420有28个引脚,各引脚的功能说明如下:A0A7:地址输入端或控制命令输入端。当A7、A6同时为高电平时,A4A0为控制命令;否则,A0A7为地址。DGND:数字信号地线。AGND:模拟信号地线。、:音频信号输出端,连接816扬声器。:模拟信号电源,+5V。MIC:话筒输入端,通过电容耦合。连接驻极体话筒。MICREF:话筒参考输入端。AGC:自动增益控制器,调整芯片内部前置放大器增益,使录入信号不失真。ANAIN:模拟信号输入端。ANAOUT:模拟信号输出端。:放音控制电平触发端。当该端为低电平时,芯片进入放音周期;当该端为高电平时,停止放音。:放音控制脉冲触发器。当该端输入由高电平向低电平跳变的下降沿时,芯片进入放音周期。:录音显示端。该端接发光二极管,在录音时作录音指示灯。XCLK:时钟控制器。:录音控制端。该端为低电平时,芯片进入录音状态,录音期间该端必须保持低电平。REC信号的优先级高于和两种放音信号。2.语音提醒电路与单片机的连接语音芯片ISD1420的基本的应用方法有两种,一种是随机地址法,另一种是固定地址法。(1)随机地址录放音电路的工作原理随机地址录放音电路的录放音起始地址可以通过单片机对ISD1200/1400系列语音芯片的A0A7进行控制而实现。随机地址可以选择芯片中的任意地址。随机地址录放音电路如图3-15 所示。图3-15 随机地址录放音电路单片机的P1端口和ISD1420的A0A7对应连接,P3.1和REC的外接开关S的一端相连,P3.0与PLAYL或PLAYE相连。模拟语音信号从MIC和MICREF两个端口输入,经放大器放大又从ANAOUT端输出,然后通过外接耦合电容输入到ANAIN端,该信号再经适当放大后就可被时钟信号采用存储到中。AGC端一般只接一个RC积分电路即可,它可使存储的语音具有良好的重放效果。A0A7端口具有地址编码和逻辑控制双重功能。当A7、A6都取值为高电平时,A4、A3、A1、A0各位用作芯片操作方式控制。A0用作信息检索控制。例如在放音时,如果不清楚每段语音的实际地址,可用A0控制检索过程,A0每输入一个负脉冲,地址计数器就可跳过一段,指向下一段的起址。A1用作删除信息段结束标志的控制位,例如在录音期间可用A1删除每段信息中间的结束标志的插入,使全部录制内容只保留最后一个结束标志符,以便将来可以连续重放。A3可用来进行片内信息循环重放的控制,既可以循环重放一段,又可以循环重放全部。A4用于连续寻址控制,一般情况下芯片放完一段遇上结束标志就要停止,计数器会自动复位。用A4=0可制止这种复位过程,实现片内信息的连续播放。A1若与A0联用,控制效果更好。当A7、A6中有一个为低电平时,A0A7用做EEPROM的地址编码。编址范围为00H9FH,共160个地址码,对应着160段语音存储单元。若芯片的录放时间为,则每段录放时间,称为分辨率。根据它可以估算出从录放开始算起的每段语音起始时间。录放地址信息都是在有效录放控制命令下降沿时写入片内地址锁存器的,因此可以有选择地进行语音的存储录放。因此,在录音时,在不同地址内录入不同的语音;放音时,在单片机控制下同步放出对应语音。(2)固定地址录放音电路的工作原理固定地址录放音电路较常使用的是从存储器的首地址开始的固定地址,即把A0A7引脚统统接地,录放音通过有关按键进行控制。固定地址的录放音电路如图3-16所示。本系统所采用的就是固定录放音工作原理。图3-16 固定地址录放音电路录音时按下S6键,REC电平由高变低,声音由话筒输入。同时由于RECLED端的电平较低,发光二极管发光,指示录音正在进行中。松开S6键,录音中止,发光二极管熄灭。放音可通过两种方式控制:第一种是电平触发控制,按键按下,此时PLAYL端电平由高变低,放音开始。在放音过程中如果松开按键,PLAYL端电平变高,放音立即中止,否则放音将继续下去,直至全部信息播完为止。第二种是脉冲触发方式,单片机向端产生一个由高到低的电平跳变,器件就进入放音状态,并一直进行直至全部信息播完。 本设计选用固定地址录放音电路,其放音方式采用的是第一种,电平触发方式。通过与单片机P3.7脚连接。当定时时间到时,置P3.7端口为低电平驱动语音电路播放语音。4 系统程序设计软件在整个控制系统中起着举足轻重的作用,软件设计非常重要。在硬件电路一定的情况下,只要改变软件就能实现一些不同的功能。本设计的软件结构采用模块化设计方法,将LED动态显示程序、按键检测和处理程序和定时时间到播报语音的程序分别编写和调试,所有模块调试成功后,将各个模块程序进行合并构成单片机软件系统。采用这种方法便于系统的设计和调试。本设计的内存空间分如表4-1所示。表4-1 内存空间分配表地址分配作用29H输入键值存储单元31HLED显示器位数存储单元32H34H当前时间秒,分,小时的存储单元32H=秒 33H=分 34H=小时35H38H当前日期日、月、年、星期的存储单元39H定时次数存储单元3AH定时时间分的存储单元3BH定时时间小时的存储单元40H43HLED段码显示缓冲区,存储显示字符的BCD码,低四位有效44H47HLED位码显示缓冲区,存储LED的位码信号,高四位有效4AH57H定时时间的存储单元60H7FH堆栈区4.1主程序设计主程序主要是完成系统的初始化(包括I/O口的初始化、DS1302时钟芯片的初始化)、按键检测和处理、时钟数据的读取和显示以及根据条件判断是否需要进行定时报警等工作,以完成人机交互的功能系统主程序流程图如图4-1所示。开始初始化读时钟芯片显示时间时间日期调整及定时时间设置置判断定时时间到否播报语音及蜂鸣器提醒音有键按下否YNNYN4-1 主程序流程图4.2 LED动态显示程序模块的设计本设计的时钟源由时钟芯片DS1302提供的,因此首先对时钟芯片DS1302进行初始化,再通过送显示程序把当前时间值送到相应的数码管显示。LED动态显示程序的流程图如图4-2所示。DS1302初始化程序包括两大块,即存储当前时间子程序和读取当前时间子程序(略),详见总程序。把当前时间送缓冲区进行显示。READ: ACALL RD1302 ;显示当前时间 MOV A,43H PUSH ACC ANL A,#0FH ;取低4位有效 ADD A,#10H ;送到数码管显示“分”的个位 MOV P1,A ACALL DELAY ;延时读时钟芯片送段码送位码显示延时送段码送位码显示延时送段码送位码显示延时送段码送位码显示延时小时十位小时个位分十位分个位图4-2 LED动态显示程序的流程图4.3按键检测和处理程序按键检测和处理程序为用户设置时间和闹铃提供了人机接口。本设计采用的是独立式按键接口。通过采集按键的电平状态来检测按键的按下与否。在按键检测程序中提供了延时防抖功能。按键检测程序只有在检测到“时间设置”键或者“定时时间设置”键被按下后方进入处理程序。处理程序结束的条件为检测到“确认”键被按下。按键检测与处理程序流程图如图4-3所示。程序设计的思路:按键检测和处理程序的功能是实现当前时间的调整、当前日期的调整和输入定时播报(闹钟)时间。(1)由按键电路设计可知,当按下“时间设置”时,产生一个低电平,便进入当前时间设置程序。(2)在程序中,将“小时”和“分”分别进行调整。采用24小时时间表示,因此4位时间值要分别加以限制。即“小时”的数值允许范围:023;“分”的数值允许范围是059。(3)键盘接收的时间值为BCD码方式,将它们转化成二进制数后,存储在33H、34H单元,使当前时间得到调整。(4)要实现对当前日期调整程序的设计时,其设计思路是当按下“时间设置”键后,扫描P3口看是否需要设置日期,和设置时间一样,在设置日期时也需要对数值加以限制,例如“月”的数值选择112,“日”的数值选择131,“星期” 的数值选择17,注意:时钟芯片有对小于31天的月末时间进行调整和闰年自动校正的功能。图4-3 按键检测与处理程序流程图(5)定时时间设置程序,设计思路与当前时间调整程序基本相同,输入的定时播报(闹钟)时间存储在4AH、4BH单元。(6)按键去抖动的处理。由于机械触点的弹性作用,在闭合及断开的瞬间均伴随有一连串的抖动,抖动时间的长短由按键的机械特性决定,一般为510ms。而按键稳定闭合时间的长短则由在按键时的按键动作决定的,一般为零点几秒至数秒。按键抖动会引起一次按键被多次误读,为了确保CPU对按键的一次闭合仅作一次处理,按键抖动可用硬件或软件两种方法消除。本设计采用软件方法消抖。按键消抖子程序: DELAY1: MOV R5,#02H DL4: MOV R7,#0FFH DL5: MOV R6,#0FFH DL3: DJNZ R6,DL3 DJNZ R7,DL5 DJNZ R5,DL4 RET 4.4语音提醒程序设计把当前时间和定时时间进行比较,若当前时间和定时时间相同时,启动蜂鸣器发声及播报语音,直到当前时间与定时时间不相同时,停止蜂鸣器及播报语音。其流程图如图4-3所示。开始初始化显示时间当前时间和定时时间是否相同启动蜂鸣器播报语 音关闭蜂鸣器停止播报语音YYNN 图4-3 语音提醒程序设计流程图4.4.1语音录入程序若要以语音的形式提醒自己,需要将提醒的语音进行单字录入和词段录入。例如,单字数字“09”,“时”,“分”字段“当前时间”,“上课时间到”等等进行编程录入。假设段控制码值存储在40H单元,单字语音录入程序如下:RECORD: MOV DPTR,#7FFFH ;语音接口地址 MOV A,#0FFH MOVX DPTR,A ;送停止录音码 MOV A,40H ;录音控制码40H送入A ACALL YS20MS ;延时20ms MOVX DPTR,A ACALL YS05S ;延时0.5s对传声器发音录单字,例如“分” MOV A,#0FFH MOVX DPTR,A ;送停止录音码RET当录入词段时,根据词段长度适当增加延时及地址段长度。例如,在首段录入“当前时间”字段,需要1.5s,需要占用三个地址段长度,若首段的控制码为40H,下一个字段控制码为42H。4.5.2放音程序在放音时,段控制码为80H起始。此程序反复调用,直到放完语句中的单字和字段为止。PLAY: MOV DPRT,#7FFFH MOV A,#0FFH ;复位信号 MOVX DPTR,A MOV A,40H ;放音内容送A寄存器 ACALL YS05S ;延时0.5s(单字)或1.5s(字段) MOVX DPTR,A ;送停止录音码ACALL YS05S MOV A,#0FFFH ;送停止放音MOVX DPTR,ARET 5 系统调试及分析调试在整个系统设计中起着非常重要的作用,调试结果,直接影响系统功能的实现。单片机控制系统的调试包括硬件调试和软件调试两个部分。5.1硬件调试在硬件调试阶段,调试工作的主要任务是排除故障,其中包括设计错误和元件故障等。首先,用万能表逐步按照电路图检查LED显示电路各器件的电源及各引脚的连接是否正确,检查是否有短路等故障。在确定连接正确后,编写一段检测LED显示电路的程序进行测试显示电路是否正确。结果虽然LED数码管能够显示事先预计的数字,但是亮度不够,在查阅相关资料后,得出就是没有加上拉电阻导致驱动LED显示的电压过低的原因,于是在加上1K的上拉电阻后,LED显示亮度增加。在调试时钟芯片能否工作时,关键的问题就是判断DS1302工作是否稳定,DS1302的外部电路十分简单,惟一外接的元件是32.768kHz的晶振。该晶振通过引脚XTAL1、XTAL2直接连接至DS1302,即DS1302是依靠外部晶振与其内部的电容配合来产生时钟脉冲的。由于DS1302在芯片本身已经集成了6pF的电容,所以,为了获得稳定可靠的时钟,对于晶体振荡器来说,其振荡频率与负载电容之间的关系是确定的。当它工作于所要求的负载电容时,能较准确地产生 32.768kHz的频率;当它的负载电容小于6pF时,其振荡频率会正向偏移;当它的负载电容大于6pF时,其振荡频率就会负向偏移。因此,在其两端加入辅助电容使晶体起振,然后用频率计测出振荡频率。若测得频率大于32.768kHz,说明负载电容偏小;若测得频率小于32.768kHz,说明负载电容偏大。对辅助电容逐步调整,最终使振荡频率尽可能接近32.768kHz,则此时晶体端所接负载电容的总和就是适合该晶体的负载电容。测试语音电路的关
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车零部件制造自动化改造项目投资可行性研究及市场预测报告
- 2025年药品委托生产(CMO)行业并购重组与产业链整合报告
- 汽车维修工成本控制考核试卷及答案
- 肠衣加工工综合考核试卷及答案
- 轻冶浆液调整输送工岗前考核试卷及答案
- 路基路面工新员工考核试卷及答案
- 磨矿分级工基础知识考核试卷及答案
- 湖盐采掘工主管竞选考核试卷及答案
- 左偏树安全多方计算-洞察及研究
- 输蔗破碎工协同作业考核试卷及答案
- 水泥搅拌桩工程合同协议书
- 电力营销考试题库
- (正式版)HGT 6313-2024 化工园区智慧化评价导则
- 智鼎在线测评题库答案2024
- 高等数学绪论课件
- 《生产部月报模板》课件
- 二十四节气与养生
- 企业安全培训课件-网络与信息安全
- 怎样引导初中生克服数学学习的心理障碍
- 化工行业档案管理制度
- DB3715-T 46-2023 麦套朝天椒直播栽培技术规程
评论
0/150
提交评论