基于单片机的具有语音报时电子钟毕业设计论文.docx

上传人:b****6 文档编号:7917389 上传时间:2023-01-27 格式:DOCX 页数:40 大小:229.52KB
下载 相关 举报
基于单片机的具有语音报时电子钟毕业设计论文.docx_第1页
第1页 / 共40页
基于单片机的具有语音报时电子钟毕业设计论文.docx_第2页
第2页 / 共40页
基于单片机的具有语音报时电子钟毕业设计论文.docx_第3页
第3页 / 共40页
基于单片机的具有语音报时电子钟毕业设计论文.docx_第4页
第4页 / 共40页
基于单片机的具有语音报时电子钟毕业设计论文.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

基于单片机的具有语音报时电子钟毕业设计论文.docx

《基于单片机的具有语音报时电子钟毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的具有语音报时电子钟毕业设计论文.docx(40页珍藏版)》请在冰豆网上搜索。

基于单片机的具有语音报时电子钟毕业设计论文.docx

基于单片机的具有语音报时电子钟毕业设计论文

□毕业论文

□毕业设计

□毕业实习报告

基于凌阳片机的电子钟

 

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:

所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:

     日 期:

     

指导教师签名:

     日  期:

     

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:

按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:

     日 期:

     

学位论文原创性声明

本人郑重声明:

所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

作者签名:

日期:

年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权    大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:

日期:

年月日

导师签名:

日期:

年月日

注意事项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作)

2)原创性声明

3)中文摘要(300字左右)、关键词

4)外文摘要、关键词

5)目次页(附件不统一编入)

6)论文主体部分:

引言(或绪论)、正文、结论

7)参考文献

8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:

理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:

任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。

图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画

3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:

按照任务书、开题报告、外文译文、译文原文(复印件)次序装订

指导教师评阅书

指导教师评价:

一、撰写(设计)过程

1、学生在论文(设计)过程中的治学态度、工作精神

□优□良□中□及格□不及格

2、学生掌握专业知识、技能的扎实程度

□优□良□中□及格□不及格

3、学生综合运用所学知识和专业技能分析和解决问题的能力

□优□良□中□及格□不及格

4、研究方法的科学性;技术线路的可行性;设计方案的合理性

□优□良□中□及格□不及格

5、完成毕业论文(设计)期间的出勤情况

□优□良□中□及格□不及格

二、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

三、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

建议成绩:

□优□良□中□及格□不及格

(在所选等级前的□内画“√”)

指导教师:

(签名)单位:

(盖章)

年月日

评阅教师评阅书

评阅教师评价:

一、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

二、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

建议成绩:

□优□良□中□及格□不及格

(在所选等级前的□内画“√”)

评阅教师:

(签名)单位:

(盖章)

年月日

教研室(或答辩小组)及教学系意见

教研室(或答辩小组)评价:

一、答辩过程

1、毕业论文(设计)的基本要点和见解的叙述情况

□优□良□中□及格□不及格

2、对答辩问题的反应、理解、表达情况

□优□良□中□及格□不及格

3、学生答辩过程中的精神状态

□优□良□中□及格□不及格

二、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

三、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

评定成绩:

□优□良□中□及格□不及格

教研室主任(或答辩小组组长):

(签名)

年月日

教学系意见:

系主任:

(签名)

年月日

摘要

本系统采用凌阳公司的SPCE061A单片机为控制核心;采用DS1302实时时钟系统,由单片机控制DS1302的读写,将读回来的时间数据通过数码管显示出来,修改时间采用操作友好的矩阵键盘,语音报时系统使用凌阳单片机本身具有的特色语音功能,并将报时、报日历键分开,整机系统设计比较完善,有显示、键盘、报时、报日历的功能,除些之外还介绍了51单片机C语言编程移植到凌阳单片机的一些经验和方法,以便将51单片机的C语言经过局部的修改就可以移植到凌阳单片机上,节约重新开发的时间。

最后总结了一些关于在做基于凌阳单片机的电子钟时所遇到的问题和困难,以及将凌阳单片机与51单片机的各方面性能进行了比较,其语音还是凌阳单片机最大的特点,也是它应用较为广泛的原因。

关键词:

SPCE061A单片机;实时时钟;语音报时;数码管显示;矩阵键盘

引言…………………………………………………………………………………1

1方案设计与论证………………………………………………………………1

2硬件电路设计…………………………………………………………………1

2.1整体电路方框图与说明…………………………………………………………1

2.2各部分电路设计…………………………………………………………………2

2.2.1数码管显示驱动电路…………………………………………………………2

2.2.2单片机系统电路………………………………………………………………3

2.2.3语音播放电路…………………………………………………………………4

2.2.4电源电路部分…………………………………………………………………5

2.2.5复位电路………………………………………………………………………6

2.2.5键盘电路………………………………………………………………………6

3软件设计…………………………………………………………………………6

3.1软件流程图及设计思路说明………………………………………………………6

3.2模块设计……………………………………………………………………………7

3.2.1语音播放部分……………………………………………………………………8

3.2.2DS1302实时时钟部分……………………………………………………………8

4整机测试…………………………………………………………………………10

5对C51程序在凌阳单片机上移植分析……………………………………10

6总结………………………………………………………………………………10

致谢…………………………………………………………………………………11

参考文献……………………………………………………………………………12

附录……………………………………………………………………………………12

引言

由于科学技术的快速发展,电子技术在20世纪取得了惊人的进步,特别是近几十年来单片机技术和其他高技术的飞速发展,致使工业、农业、科技和国防等领域以及人

们的社会生活发生了令人瞩目的变革。

凌阳单片机就是在这样的环境下发展起来,旗下的SPCE061A单片机在语音方面也有了很大的发展,在消费电子中除了显示之外再加上语音的功能可以让产品更具人性化,本文将设计一个基于凌阳单片机的具有语音功能的电子钟。

 

1方案设计与论证

方案一:

本方案采用凌阳SPCE061A十六位单片机,通过单片机控制DS1302实时时钟芯片进行读写,并对数码管、矩阵键盘进行扫描,语音报时采用凌阳单片机自带的语音系统。

方案二:

本方案采用AT89S51单片机,亦是控制对DS1302实时时钟的读写,并对数码管、矩阵键盘进行扫描,语音报时系统采用ISD1420,键盘采用矩阵键盘。

方案确定:

比较两个方案,如果是不考虑语音报时系统,则采用方案二,但本系统侧重语音,并且就51单片机C语言在凌阳SPCE061A上的移植做分析,所以最终采用方案一。

2硬件电路设计

2.1.1整体电路方框图与说明

系统原理框图如图2.1所示。

主控元件采用凌阳SPCE061A单片机,属于凌阳u’nSP.系列产品的一个16位结构的微控制器。

在存储器资源方面考虑到用户的较少资源的需求以及便于程序调试等功能,SPCE061A里只内嵌32K字的闪存(FLASH),但用在此系统上已经足够。

较高的处理速度使u’nSP.能够非常容易地、快速地处理复杂的数字信号。

因此以u’nSP.为核心的SPCE061A微控制器也适用在数字语音识别应用领域。

SPCE061A在2.6V~3.6V工作电压范围内的工作速度范围为0.32MHz~49.152MHz,较高的工作速度使其应用领域更加拓宽。

2K字SRAM和32K字FLASH仅占一页存储空间,32位可编程的多功能I/O端口;两个16位定时器/计数器;32768Hz实时时钟;低电压复位/监测功能;8通道10位模-数转换输入功能并具有内置自动增益控制功能的麦克风输入方式;双通道10位DAC方式的音频输出功能,这就为本系统的语音播报打下了基础,整体系统框架如图2.1。

 

键盘

控制电路

音频放

大电路

语音播

凌阳

SPCE061A

单片机

DS1302

实时实时时钟芯片

数码管

显示

图2.1系统原理框图

整体具体工作原理是单片机控制DS1302实时时钟芯片的读写时序,将时间数据读出,再对数码管进行扫描,将时间正确显示出来。

与此同时扫描键盘是否有报时键按下,有则调用语音报时函数进行报时。

2.2各部分电路设计

2.2.1数码管显示驱动电路

图2.2位选驱动电路

图2.3段选驱动电路

2.2.2单片机系统电路

单片机系统是整个硬件系统的核心,也是协调整机工作的控制器,又是数据处理器。

图2.4单片机系统电路

2.2.3语音播放电路

音频部分的原理图2.5所示,在图7中可以看到两个跳线,其作用在于可以测量DAC的输出波形;另外拔掉跳线,可以断开DAC到喇叭放大的通路,使得DAC通道处于开路状态。

这样便于用DAC做其他用途,用户可以用过这个跳线来加入自己的外围电路。

凌阳音频压缩算法根据不同的压缩比分为以下几种(具体可参见语音压缩工具一节内容):

SACM-A2000:

压缩比为8:

1,8:

1.25,8:

1.5

SACM-S480:

压缩比为80:

3,80:

4.5

SACM-S240:

压缩比为80:

1.5

按音质排序:

A2000>S480>S240

用凌阳CompressTool事先把所需要的语音信号录制好,本系统共包括十多个语音资源,整个语音信号经凌阳SACM_S2000压缩算法压缩占了26K存储空间,SPCE061A单片机具有32k闪存,使用内部flash即可满足要求。

凌阳SPCE061A单片机自带双通道DAC音频输出,DAC1、DAC2转换输出的模拟量电流信号分别通过AUD1和AUD2管脚输出,DAC输出为电流型输出,所以DAC输出经过SPY0030音频放大,以驱动喇叭放音,放大电路如图7(只列出了DAC1,DAC2类似),这为单片机的音频设计提供了极大方便。

在它们后面接一个简单的音频放大电路和喇叭即可实现语音播报功能,音频的具体功能主要通过程序来实现。

图2.5语音播放电路

2.2.4电源电路部分:

图2.6是电源电路的部分,5V直流电压经过SPY0029后给整个系统供电,当然也可选用其它芯片。

SPY0029是凌阳公司设计的电压调整IC,采用CMOS工艺。

SPY0029具有静态电流低、驱动能力强、线性调整好等优点。

图2.6电源电路

2.2.5复位电路:

 

图2.7复位电路

2.2.6键盘电路:

图2.84*4矩阵键盘

3软件设计

3.1总程序流程图及设计思路说明

 

初始化

读DS1302

显示时间

扫描键盘

Y

显示“------”等待输入

调用报时/日历函数

输入完毕

报时

N

对DS1302进行写操作

修改时间/日历

修改时间

结束

图3.1程序流程图

程序开始运行,初始化IO口,如IO口的方向和属性向量,然后对读取DS1302时间寄存器的数据,然后将时间数据通过数码管扫描显示,扫描4*4矩阵键盘判断是否有键按下,如有则读出相应键值,如果是报时键则调用报时间函数,如果是报日历键则调用报日历函数,如果是修改键,则使数码管显示“------”等待键盘输入数值,输入完毕等待确认修改时间还是日历,确认完成之后调用修改时间或者日历函数,调整DS1302中相应的时间或者日历寄存器值,达到修改时间的目的,到这里程序运行完毕,进入下一轮的开始。

3.2模块设计

3.2.1语音播放部分

本设计是采用凌阳SACM_S2000语音播报,流程图如图3.2。

初始化

获取所需音频数据

SACM_S2000初始化

开始播放放

N

播放完毕?

Y

结束

图3.2语音播放程序流程图

3.2.2DS1302实时时钟部分

DS1302是DALLAS公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM指示决定采用24或12小时格式DS1302与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个IO口线分别是RST-复位、I/O-数据线、SCLK-串行时钟,其内部还有32*8bit的RAM,以供存储重要数据,如闹钟时间等。

DS1302的读写操作如图3.3:

图3.3DS1302读写操作

其内部寄存器如图3.4:

图3.4DS1302内部寄存器

具体的操作时序请见附表A中DS1302操作部分

4整机测试

由于该系统设计比较简单,所以调试也较容易,运行效果良好,都能够实现设计的要求与功能。

语音播放部分已经录制并压缩好,播放起来效果也不错。

5对C51程序在凌阳单片机上移植分析

从51单片机移植到凌阳单片机上主要注意的问题是要了解这两种单片机的内部结构的差别,以及性能上的不同,首先是IO口的操作,凌阳单片机的IO口输入输出要手动更改,不像51那么方便,其次是要注意清看门狗,由于凌阳单片机为了程序运行能够更加稳定,所以加入了看门狗,清狗周期必需要小于0.75S,刚开始接触凌阳单片机经常会忘记这一步,最后就在于中断、定时器、选频等特殊功能寄存器的操作上。

下面就凌阳的位操作进行举例说明:

这是定义set_IO是将IO置1,clr_IO则定义为清零。

#defineset_IO*P_IOA_Data|=0x2000//IO=1

#defineclr_IO*P_IOA_Data&=0xdfff//IO=0

这是输出,输入则需要将该引脚定义为输入如:

*P_IOA_Dir&=0xdfff;//IOA13口定义为输入

*P_IOA_Attrib|=0x2000;//IOA13口定义为悬浮式

每次需要对IO口进行读写的时候都要改变IO口的属性及方向向量。

这样就可以对DS1302进行读写操作了。

51单片机的汇编语言移植造成的程序改变量太大,无疑于重新编写,但是凌阳单片机的汇编语言已经和C语言很类似,不会再使用MOV这种指令,所以重新编写所造成的工作量不是非常大。

 

6总结

凌阳单片机我从来没有接触过,只是听学长们说过,记得有一位学长说凌阳单片机有些不稳定,这个我没有深入研究过,但是在调试的时候发现在了个问题,在对数码管进行扫描的时候,偶尔会显示乱码,需要复位才能恢复正常。

虽然之前没有学习过凌阳单片机,但是有了51单片机的基础之后,学起来不会很吃力,凌阳单片机和51单片机的差别就只是在于对一些特殊功能寄存器的操作和IO口的位操作上,相对于习惯使用51单片机而言凌阳单片机使用起来不太方便,这就是51单片机和凌阳单片机的最大差别,凌阳虽然相比32位的ARM等高级的单片机相差甚远,但是对比51单片机还有许多优势,特别是在语音功能上,具有很大的优势。

我学习凌阳单片机的目的除了它拥有强大的语音功能之外,还有一个目的就是如果能掌握凌阳单片机,那么就说明一样能掌握其它的单片机,比如说AVR、PIC、ARM,这说明各种单片机具有的共通性。

这更说明平常对基础的积累相当重要,不管是学习单片机或者其它的一切事情都需要脚蹋实地才能继续做下去。

 

致谢

感谢我的指导老师,在整篇论文的完成过程中,我得到了她悉心的指导,论文的每一个进度的完成都伴有她不懈的支持和细心的批改,从课题的选择到项目的最终完成,她一丝不苟的工作态度很值得我学习,并且她没有因为工作上的繁忙而忽视对我们论文的指导,每次收到她细心修改的论文,很细微的错误都被加上了标注提醒我修改,在此谨向老师致以诚挚的谢意和崇高的敬意。

此外,我也要感谢教导过我的老师,他们所传授给我的知识是我论文完成的基础。

而且他们不仅是我学习上的良师,还教会了我们如何在社会上待人接物的道理。

你们为人师表的风范令我敬仰,严谨治学的态度令我敬佩。

老师的指导对我今后的学习和工作有非常重要的作用,在这里向许多老师及全体成员表示衷心的感谢。

再者,我要感谢我的同学和朋友,在我论文资料的搜索过程中,他们给与了我很大的帮助,让我克服了一个个困难和疑惑,在这里我表示衷心的感谢。

向评审本论文及参加论文答辩的各位老师表示衷心的感谢和诚挚的敬意。

 

参考文献

[1]雷思孝,李伯成,雷向莉编著.SPCE061A单片机原理及其应用技术---凌阳16位单片机原理及应用[M].西安:

西安电子科技大学出版社.2004

[2]马忠梅,籍顺心,张凯,马岩编著.单片机的C语言应用程序设计(第三版)[M].北京:

北京航空航天大学出版社.2003

 

附录

#include"reg061.h"

#include"a2000.h"

#include"consist.h"

#defineuintunsignedint

#defineP_IOA_Data(volatileunsignedint*)0x7000

#defineP_IOA_Buffer(volatileunsignedint*)0x7001

#defineP_IOA_Dir(volatileunsignedint*)0x7002

#defineP_IOA_Attrib(volatileunsignedint*)0x7003

#defineP_IOA_Latch(volatileunsignedint*)0x7004

#defineP_IOB_Data(volatileunsignedint*)0x7005

#defineP_IOB_Buffer(volatileunsignedint*)0x7006

#defineP_IOB_Dir(volatileunsignedint*)0x7007

#defineP_IOB_Attrib(volatileunsignedint*)0x7008

#defineP_Watchdog_Clear(volatileunsignedint*)0x7012

#defineset_RST*P_IOA_Data|=0x8000//RST=1

#defineclr_RST*P_IOA_Data&=0x7fff//RST=0

#defineset_IO*P_IOA_Data|=0x2000//IO=1

#defineclr_IO*P_IOA_Data&=0xdfff//IO=0

#defineset_CLK*P_IOA_Data|=0x4000//CLK=1

#defineclr_CLK*P_IOA_Data&=0xbfff//CLK=0

voidSpeakTime();

voidnop();//替代51中的NOP

voidDisplay(void);//扫描数码管程序

voidDelayMs(uintn);//延时用

voidWriteByte(uintdata);//写一个字节到1302

uintReadByte(void);//从1302读一个字节

voidWriteDate(u

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1