语音播报记事器论文Word文档下载推荐.docx
《语音播报记事器论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《语音播报记事器论文Word文档下载推荐.docx(37页珍藏版)》请在冰豆网上搜索。
1-3页
5.
河北科技师范学院本科毕业论文(设计)中期检查表…………
1页
6.
河北科技师范学院本科毕业论文(设计)答辩记录表…………
1页
7.
河北科技师范学院本科毕业论文(设计)成绩评定汇总表……
8
河北科技师范学院本科毕业论文(设计)工作总结……………
9
其他反映研究成果的资料(如公开发表的论文复印件、效益证明等)……………………………………………………………
~页
河北科技师范学院
语音播报记事器
院(系、部)名称:
机电科学与工程系
专业名称:
电气工程及其自动化
学生学号:
2013年5月18日
摘要
本文主要介绍了由实时时钟RTC、提醒时间设置、语音录放控制、当前时间调整和LED译码及驱动模块、蜂鸣器控制、4位时钟型LED显示组成的语音播报记事器。
主机是以Intel公司的8051单片机为核心芯片,外接主要芯片包括语音芯片ISD1420和串行时钟芯片DS1302。
能够实现显示当前时间、录制和播放语音信息、调整当前时间、设置闹钟时间并且在到闹钟时间后,能够以语音的形式进行提醒并以蜂鸣提示。
最后详细地介绍了系统设计过程中各种模块的硬件设计和软件设计的实现过程,最终成功实现了语音播报、闹钟提醒蜂鸣、显示时间的基本功能。
该设计的主要特点是:
设计以语音播报的形式进行提醒,改变了以人们以前常用的无声的书本记录,这样可以及时提醒每日的行程,避免了迟到和耽误行程。
并且这样的设计还能够显示和修改当前的年份、月份、星期,完全可以作为一般的钟表来使用,还有遇到闰年自动修正的功能,这样不仅便捷而且实用功能得到加强。
关键词:
单片机;
语音播报;
时间调整
Abstract
Thisarticlemainlyintroducedbythereal-timeclockRTCremindertimesettings,voicerecordingcontrol,timetoadjustandLEDdecoderanddrivermodule,buzzercontrol,fourclockLEDdisplayconsistingofvoicebroadcastNotepad.ThehostisbasedonIntel'
s8051corechip,theexternalchipISD1420voicechipandtheserialclockchipDS1302.Aimingtoachievethecurrenttime,therecordingandplaybackofvoicemessages,adjustingthecurrenttime,setingthealarmtimeandtothealarmtime,theformofavoiceremindedtoBeeper.Finally,detaileddescriptionofthevariousmodulesinthesystemdesignprocess,hardwaredesignandsoftwaredesign,implementationprocess,andultimatelysuccessfulvoicebroadcast,thealarmbeep,displaythebasicfunctionsoftime.
Thedesignofthemainfeaturesare:
thedesignintheformofvoicebroadcastreminders,changetopeoplepreviouslysilentbooks,records,atimelyreminderofthetriponadailybasistoavoidlateanddelaythetrip.Andthisdesignisalsoabletodisplayandmodifythecurrentyear,month,week,canasageneralwatchtouse,aswellasautomaticleapyearcorrectionfunctionisencountered,sothatnotonlyconvenientandpracticalfunctionhasbeenstrengthened.
Keywords:
MCU;
Voicebroadcast;
Timetoadjust
目录
摘要Ⅰ
AbstractⅠ
1绪论1
1.1论文研究背景与意义1
1.2设计方案的提出1
1.2.1设计要求1
1.2.2设计思路2
1.3系统设计2
1.3.1系统设计框图2
2系统方案论证3
2.1ISD14203
2.2DS13024
2.3LED显示电路模块4
2.4键盘设计5
2.5蜂鸣器设计6
3软件设计6
3.1软件设计方案6
3.2主程序设计6
结论8
致谢9
附录10
1绪论
1.1论文研究背景与意义
随着时代的发展与进步,人们的生活节奏越来越快,竞争也越来越激烈。
因此,合理安排时间,遵守时间,准时上课、上班、赴约、到会、洽谈等是每个人的迫切需要。
对于现在的人来说,时间越来越重要,可以这样说吧,寸金难买寸光阴。
但是,往往稍一疏忽又经常无人提醒,造成迟到或耽误行程,甚至产生严重的后果和经济损失。
大部分的时候,我们都是通过看手表或者手机知道时间的,这是一个很经典的方法,但是现在有更时尚便捷的方法,比如有一台智能语音提示器,将各种约定时间记录下来,而且自动让我们知道我们想要知道的时间,按时进行语音提醒,就可以避免迟到、缺席事件的发生,能在生活中抽出时间来,同时也给我们的工作和学习带来极大的方便。
它不仅体积小,便于携带而且实用性更佳[1]。
随着现代化技术的发展,有关专家分析指出,
我国电子商务的基础设施将日臻完善,三网合一潮流势不可挡,高速宽带互联网将扮演越来越重要的角色,移动通讯将成为进行电子商务的主要媒介。
而今,我们已经进入了数字时代,数字设备的使用将会越来越受欢迎。
在这种瞬息万变的新形势下,全球的信息化使人们足不出户便可以获取全方位的知识和信息,与此同时人们的生活节奏也随之加快,竞争变得日趋激烈。
因此,能够合理的安排和利用时间在日常的学习和工作中就显得尤为重要了。
但是在充满压力的生活中,往往很容易因一时的疏忽就耽误已安排好的事情造成迟到或其他延迟事件,甚至产生了严重的后果和经济损失。
此时,若有一台智能语音记事器,将各种约定时间记录下来,按时进行语音提醒,就可以避免迟到、缺席事件的发生,从而给我们的工作和学习带来极大的方便[2]。
本设计的目的在于通过本次设计能将学到的单片机理论知识应用于时间生产中,增强自己的社会实践能力,为将来在社会上更好的立足做充分的准备,同时在实践中学习更多的理论知识,继续深造。
1.2设计方案的提出
1.2.1设计要求
以MSC-51系列单片机为核心器件组成一个语音提示系统。
系统具有标准的日历/时钟,即年、月、日、星期、时、分、秒,遇闰年自动修正的功能。
系统显示器由4位数字型数码管组成。
显示时间值和日期,常态下显示时间,利用一个按键控制显示日期。
能够随时对当前时间进行调整。
能够随时输入定时播报(闹钟)时间。
定时播报(闹钟)时间到,发出语音提醒信号和蜂鸣器提示信号。
1.2.2设计思路
语音处理由ISD1420.74LS377与单片机相连实现,通过P0口与单片机连接[3]。
系统的标准时间采用日历/时钟芯片DS1320实现,通过P2口与单片机连接[4]。
时间显示使用4位LED数码管,接入P1口。
LED数码管的段码输入,由并行端口P1低四位产生。
LED数码管的位码输入,由并行端口P1高四位产生。
同时本电路的LED显示还要通过74LS48芯片与单片机连接驱动。
时间调整与定时时间的输入由键盘电路控制。
由5个按键控制,通过P3口与单片机连接。
蜂鸣器由HA、三极管和上拉电阻组成的蜂鸣电路与单片机连接实现。
1.3系统设计
1.3.1系统设计框图
图1系统设计框图
本设计的语音播报系统采用8051单片机作为控制核心器件,具有可下载在线编程等功能容易操作,使用起来十分方便。
由B1、C8、C9组成系统工作时钟,由S1、R7、R8、C10组成系统复位电路。
系统语音处理模块由ISD1420、74LS377、HA1、MIC1、R1-R6、R10和C1-C6、S2、R14、VD1、VD2组成模块,实现语音录入和语音播报功能。
通过锁存器74LS377与单片机的P0口连接。
系统的时间模块由DS1302、B2、C11、C12和BAT1组成,产生系统的标准时间。
DS1302内部具有事时时钟/日历和31B的静态RAM,给系统提供秒、分、时、日、月和年等信息,对小与31他的月末的日期进行调整,还包括闰年的校正功能。
时钟的运行可选择24小时或带AM和PM的12小时格式。
DS1302是一个串行接口芯片,既RST(复位线)、I/O(数据线)及SCLK(串行时钟线)通过P2口P2.0、P2.1、P2.2与单片机连接[5]。
采用4位一体时钟型LED显示器,用与显示系统时间和一些提示信息。
由74LS48、ULN2003、R15和DISP1组成时间显示模块,通过P1口与单片机连接[6]。
由5个独立式按键REC、SET、ALM、+1、RET,上拉电阻R13和中断扩展电路74LS08组成按键输入控制电路,与单片机的P3口的相应引脚连接,实现该系统的提示语音录入、定时时间设置和时间调整功能。
由蜂鸣器HA2、三极管VT1、R9、组成蜂鸣器控制电路,完成闹钟功能,通过编程可以实现时间到时发出蜂鸣的提示音[7]。
系统电源由电源变压器T1(220V/9V)、桥式整流模块2W06、稳压模块7805以及C13-C16组成,提供系统所需的+5V电源。
2系统方案论证
2.1ISD1420
为实现语音播报的录入和播放功能,我们在此接入了ISD1420语音芯片,并采用锁存器74LS377对其控制锁存达到良好的语音信息的录制与播报。
语音芯片ISD1420为单片语音记录、回放一体化芯片,记录时长为20s;
可被划分为160小段,每段125ms。
当REC脚为低电平时,进行录音,PLAYE或PLAYL为低时进行放音,ISD1420可进行连续录音,也可进行分段录音。
语音芯片ISD1420的接入可以使语音播报应用系统工作时实现能够录入语音信息,能够对录入的语音信息进行播放两项基本功能。
在单片机与ISD1420芯片中间连接一个锁存器,就解决了单片机与ISD1420芯片在工作时存在工作时序上的不一致的问题[8]。
在本设计中是用74LS377来做锁存器的。
它的CLK端的信号由P2.6口来控制的。
当P2.6端口产生上升沿脉冲时,74LS377将P0口送过来的地址锁存到74LS377的Q端,并等待语音芯片DS1420将该地址取走。
其后芯片ISD1420便根据单片机传送给它的地址进行语音信息的录制与播报[9]。
74LS377是一种8D触发器,它的/E端是控制端、CLK端是时钟端,当它的/E端为低电平时只要在CLK端产生一个正跳变,D1—D7将被锁存到QO—Q7端输出,在其他情况下Q0—Q7端的输出保持不变[10]。
模拟语音信号从MIC和MICREF两个端口输入,经放大器放大后又从ANAOUT端输出,然后通过外接耦合电容输入到ANAIN端,该信号再经适当放大后就可被时钟信号采样存储到EPROM中。
2.2DS1302
DS1302是一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行计时,且具有闰年补偿功能。
表1DS1302寄存器地址及命令字
时钟/日历
读操作
写操作
RAM
秒
81H
80H
第1个字节
C1H
C0H
分
83H
82H
第2个字节
C3H
C2H
小时
85H
84H
……
日
87H
86H
月
89H
88H
星期
8BH
8AH
年
8DH
8CH
第30个字节
FDH
FCH
控制寄存器
8FH
8EH
第31个字节
FFH
FEH
2.3LED显示电路模块
LED显示器的驱动是一个非常重要的问题,由系统硬件设计框图可知,显示电路由LED显示器、段驱动电路和位驱动电路组成。
由于单片机的并行口不能直接驱动LED显示器,必须采用专用的驱动电路芯片,使之产生足够大的电流,显示器才能够正常工作。
如果驱动电路能力差,即负载能力不够时,显示器亮度就低,而且驱动电路长期在超负荷下运行容易损坏。
因此,在实际使用中必须接入LED驱动电路。
本设计采用的LED的输出接口是单片机的P1口,就是用P1口的低四位作LED的段码输出信号,P1口的高四位作LED位码的输出控制信号的[13]。
电阻为可以保证LED可靠导通与截止的上拉电阻。
74LS48的作用是接收来自单片机的BCD码型的输入信号,经过锁存、译码和放大后,输出7段字型码到LED显示器,完成对BCD码到7段字型码的锁存、译码和驱动的功能。
LED驱动电路的工作原理是:
当P1口的低四位输出段码信号的BCD码后,通过74LS48芯片的锁存、译码和驱动作用,在其输出端输出具有一定驱动能力的七段字型码,由于4-LED的段码输入引脚是并联在一起的,所以每一位LED的段码输入引脚都能获得这个段码信号。
若要控制在每一时刻只有一位LED被点亮,必须靠位码信号控制。
P1口的高4位输出位码信号,经ULN2003反向后接到LED的位码控制端,因此P1口的位码信号在每一时刻只有一位是“1”,其它位全为“0”,然后按时间顺序改变输出“1”的位置,控制在每一时刻只有一位LED被点亮,达到动态显示的目的。
LED的位驱动较常用的芯片是ULN2003,它具有7个达林顿电路的集成芯片。
此种芯片集电极可以收集最大达500mA的电流,耐压为30V,能驱动常规的LED显示器。
ULN2003的作用是接收来自单片机的位码输入信号,经过反相放大后输出,送到LED显示器位码引脚,完成对位码信号的反向和驱动的功能。
2.4键盘设计
将“+1”键、“RET”键直接与单片机的P3.0与P3.1口连接;
“SET”与“ALM”通过74LS08相与后连接到INT1口,“REC”与T0口通过74LS08相与后连接到INT0口,其中T0、T1口作为基本输入输出口使用。
“PLAY”键与“REC”键的功能:
这两键是用来控制语音信息的录音和放音的,在与“+1”、“RET”键配合使用时可以对不同地址段进行的录音放音选择的。
“RET”键的功能:
确认,即对“+1”键调整位进行确认,该键按下时,说明被调整位的值已经修改完,转去调整下一位。
该引脚与P3.1引脚连接,使用在I/O接口方式,同样为了保证P3.1使用在输入方式在初始化程序中对它进行编程:
SETBP3.1;
即设置P3.1引脚作为输入口使用键盘的硬件电路设计只能保证六个按键信号的可靠进入,要想完成键盘的输入功能,还要靠软件编程来具体实现。
“ALM”键与“SET”键的功能:
“ALM”键设置时间而“SET”键则是调整当前时间的,被调整值的修改和修改确认只要与“+1”、“RET”键的配合使用就能完成。
按下“ALM”键时在单片机的INT1口产生一个中断,T1口为低电平,单片机就去执行设置闹钟时间的操作。
按下“SET”键时,INT1口也产生一个中断,T1口为高电平,单片机就是执行对当前时间调整的操作。
INT1为服务程序的标号地址。
“+1”键的功能:
分别对时间值的小时十位、小时个位、分的十位、分的个位进行+1调整,即该键每按下一次,对应的时间调整位+1。
该引脚与P3.0引脚连接,工作在I/O接口方式,为了保证P3.0工作在输入方式,在初始化程序中对它进行编程:
SETBP3.0;
P3.0引脚作为输入口使用。
“REC”键是进行语音信息的录制。
如果在单片机的INT0口产生一个中断,单片机先判断T0口是否是低电平,如果是,表明“PLAY”键被按下了,就执行放音操作,如果不是,则表明按下的是“REC”键,程序转到录音操作。
2.5蜂鸣器设计
本设计选择一只蜂鸣器来实现当预先规定的提醒时间到时有声音提醒信号产生。
压电式蜂鸣器(HA)工作时约需要10mA的驱动电流,并设计一个相应的驱动及控制电路。
蜂鸣器(HA)作为三极管VT1的集电极负载,VT1用来控制蜂鸣器的发声与否。
在单片机P2.7口通过限流电阻R9接入蜂鸣器(HA)作为三极管VT1的发射极负载,当P2.7=0时,VT1导通时,蜂鸣器中有电流通过,发出蜂鸣音。
反之蜂鸣器不发声。
3软件设计
3.1软件设计方案
仅有这些硬件模块还达不到我们预期设计的目的,因此,我们要加入编程以实现电路设计的简洁优化,这其中包括系统对各组语音录放不同存放地址的设置及实现,对具体时间的规定和调整(如每星期的天数设定、每天的小时固定数字显示设定等),对记事器的定时中断等,从而达到预期的数据采集及传送的效果。
根据设计要求,首选要确定软件设计方案,思考软件设计中应包括哪些功能,其次是规划为了完成这些功能需要分成多少个功能模块,以及每一个程序模块的具体任务是什么[14]。
由于对每个模块进行划分时有很大的灵活性,但也不能随意划分。
划分模块时应遵循下述原则:
(1)每个模块应该具有独立的功效,能产生一个明显的结果。
(2)模块之间的控制参数应尽量简单,数据参数应尽量少。
控制参数是模块进入和退出的条件及方式,数据参数是指模块间的信息交换方式、交换量的多少及交换的频繁程度。
(3)长度适中。
模块语句的长度通常在20-100条比较适合。
模块太长的时侯,会给分析和调试造成困难;
模块太短则引起信息交换频繁,也不适合。
(4)根据模块的划分原则,将该程序划分成五个模块。
3.2主程序设计
主程序的内容一般包括:
主程序的起始地址,中断服务程序的起始地址,有关内存单元及相关部件的初始化和一些子程序调用等等。
(1)程序的起始地址
MCS-51系列单片机复位后,(PC)=0000H,而0003H-002BH分别为各中断源的入口地址,所以,编程时应在0000H处写一跳转指令[15]。
当CPU接收到中断请求信号予以响应后,CPU把当前的PC内容压入栈中进行保护,然后转入相应的中断服务程序入口处执行。
一般应在相应的中断服务程序入口处写一条跳转指令,并以跳转指令的目标地址作为中断服务程序的起始地址进行编程。
以/INT0为例,中断矢量地址为0003H,中断服务程序从INTA标号地址开始。
(2)主程序的初始化内容
对主程序初始化,其实是对将要用到的MCS-51系列单片机内部部件或扩展芯片进行初始化,使其工作状态得到一个初始设定。
如应对特殊功能寄存器IE、IP进行初始化,因为8051复位后,IE、IP中的内容均为00H,所以应对其进行初始化编程,以开放CPU中断,允许某些其他中断源中断和设置中断优先级等。
对于本设计,用T0、T1、INT0、INT1四个中断,其中:
T0中断:
T0定时中断,达到LED动态扫描的目的。
T1中断:
T1定时中断,达到每分钟从DS1302中读取当前时间的目的。
INT0中断:
接受外部中断信息,达到语音信息的录制与播报的目的。
INT1中断:
接受外部中断信息,达到对当前时间的调整和闹钟时间的设置的目的。
(3)代码转换程序
由于日常我们都是识别十进制数(BCD码),而计算机它只识别二进制数,因此,在程序设计中经常要涉及代码的转换。
即将当前时间的二进制数转换成BCD码,并送到显示缓冲区最终显示出来。
图2软件设计框图
(4)在主程序中进行各项初始化设置后,首先CPU会先查询当前有没有对闹钟设初值,如果有,就把此闹钟时间与当前时间相比较,看看是否到了闹钟所定的时间,如果到了,就进行语音提示,如果没有到,CPU就对P3.0口进行扫描,判断“+1”键有没有按下,如果按下,4-LED就会显示当前的年份、月份、日期、星期、小时、分钟,满足人们的查询要求。
结论
语音提示在生活中的应用方便了人们的生活,保障了人们的生命和财产价值,人们是相当欢迎的,但是发展还有不够快,主要原因就是在智能化,微型化方向上的研究跟不上,这也与很多人的不重视有关。
在本论文中,本人按照“提出问题、分析问题、解决问题、总结问题”的写作思路,详细的阐述了语音播报系统的硬件、软件设计的全过程,并且从这些过程中分析提炼出了相关的技术难点以及相对应的解决思路,在完成这一切的同时,我从两个角度方面完成了所做的设计:
其一,如何实现语音播报;
其二,在完成既定功能的同时,如何开发出其它补充功能。
在这过程中,我提炼出了具有普遍意义的类似开发过程的若干条准则。
本论文的创新点就是将以前的无声记录提醒或蜂鸣提醒换成了形象的语音提醒,使提醒更加有效、及时、准确。
本论文完成了软硬件主要功能模块的设计,为进一步设计开发及功能扩展打下了良好的基础。
由于时间关系和自身的学术水平有限,在设计中存在着一些缺陷和不足,还有待于在今后的进一步设计过程中不断完善。
毕业设计是我大学四年来的总结,更是我走向社会一种新的生活的开始。
虽然在本次的设计也暴露了我不少的缺点和不足,但是通过本次的设计,我提高了独立思考,独立解决问题的能力,同时也增强了自学能力。
我认为本次设计不仅仅体现在设计的结果上,更重要的是设计过程中的那种精神,那种对新知识渴求的精神以及人与人之间的协作关系。
参考文献
[1]RengangChen;
Strydom,J.T;
VanWyk,J.D.Designofplonarintegratedpassivemoduleforzero-voltage-switchedasymmetricalhalf-bridgePWMconverter[J].IEEETransactionsonIndustryApplicationstheIndustryofElectricalandElectronicEng