基于单片机的语音报时系统论文 - 图文(3)

2019-04-22 14:38

用61板控制数字钟系统,使用了IOA口的IOA0—IOA2位连接SPCE061A上的三个按键,另外使用了61板的语音输出模块;以及61板上的三个按键,电路连接如图5。

第三章 系统硬件设计

3.1 SPCE061A最小系统

SPCE061A最小系统包括SPCE061A芯片及其外围的基本模块,其中外围的基本模块有:晶振输入模块(OSC)、锁相环外围电路(PLL)、复位电路(RESET)、指示灯(LED)等,如图7所示。

图 5 SPCE061A最小系统

3.2 电源模块

SPCE061A板采用3节5号电池进行供电,由J10接入,其中前后两组电容用来去耦滤波,

8

使其供给芯片的电源更加干净平滑。为了获得标准的3.3伏电压,在电路上加入SPY0029三端稳压器和两个二极管,是为了防止误将电源接反造成不必要损失而设置的。在操作过程中千万不要将电源接反,因为反向电压超过一定值,二极管将会被损坏,达不到保护的目的。后面的零电阻及其电源分成不同的几路是为了减少电磁干扰设置的。图 6是电源部分的电路,4.5V直流电压经过SPY0029后产生3.3V给整个系统供电。 SPY0029是凌阳公司设计的电压调整IC,采用CMOS工艺。SPY0029具有静态电流低、驱动能力强、线性调整出色等特点。4.2图中的VDDH3为SPCE061A的I/O电平参考,接SPCE061A的51脚,这种接法使得I/O输出高电平为3.3V;VDDP为PLL锁相环电源,接SPCE061A的7脚;VDD和VDDA分别为数字电源与模拟电源,分别接SPCE061A的15脚和36脚;AVSS1是模拟地,接SPCE061A的24脚;VSS是数字地,接SPCE061A的38脚; AVSS2接音频输出电路的AVSS2。

61板电源模块电路如图8,SPCE061A的内核供电为3.3V,而I/O端口可接3.3V~5V,所以在电源模块(61板上)中有一个端口电平选择跳线,如图中的J5。本系统需要的端口高电平为3.3V,所以图8中的J5跳线需要跳到2和3上。

图 6 电源模块

3.3 音频输出模块

音频输出(D/A)部分的原理图如图7所示,可以直接听喇叭输出的声音。图中的SPY0030也是凌阳公司的产品。它的详细说明可以参见SPY0030 data sheet。和LM386相比,SPY0030还具有下述优势,比如LM386工作电压需在4V以上, SPY0030仅需2.4V即可工作(两颗电池即可工作);LM386输出功率100mW以下, SPY0030约700mW。芯片将声音处理后输出(J2),经SPY0030音频放大输出(J3)通过扬声器还原为声音。SPY0030A是凌阳公司开发的专门用于语音放大的芯片。SPY0030的输入电压的范围是2.4——6.0伏,该电路中采用的电压是3.3伏。SPCE061A内置2

9

路10位DAC,只需要外接功放电路即可完成语音的播放。

图 7 音频输出电路图

第四章 系统软件设计

4.1软件的结构

下图中可以看出各文件之间的调用关系。

图 8 软件结构

数字钟主要还是软件实现的,数字钟的软件设计由以下程序构成: 1、main.c:实现系统的初始化、键盘扫描和语音播报;

10

2、system.c:包含工程中大部分的功能函数,包括时间和日期的调整等;

3、key.c:键盘扫描文件,文件中定义了键盘扫描函数、延时函数、用来实现对键盘的扫描等功能、键盘扫描采用查询方式;

4、isr.asm:中断服务函数文件,实现语音解码以及时间、日期的修改; 5、speak.c:语音播报函数,实现语音播报日期、时间。

4.2各模块程序的说明

4.2.1概述

由于凌阳SPCEA061A,使得外围电路变的更简单。制作好系统的硬件电路后,整个系统的主体任务主要落在了程序的编写上。SPCE061A是凌阳科技研发生产的性价比很高的一款十六位单片机,具有易学易用且效率较高的一套指令系统和集成开发环境。在此环境中,支持标准C语言,可以实现C语言与汇编语言的互相调用,并且,提供了语音录放和语音识别的函数库,只要了解库函数的使用方法,就可以很容易完成语音录放,为软件开发提供了方便的条件。此次系统采用了模块程序结构,模块程序结构包括了初始化,系统主程序模块,语音播放模块,显示模块。C语言属于高级语言,有着汇编语言无法比拟的优点,而SPCE061A开发系统抓住了这个关键,两者结合,充分发挥各自的优势。在用到语音的时候,一般都是用C语言作为主程序,用汇编语言编制各种模块,供主程序调用。本系统采用了这种编制方法使得相互调用非常简单。 4.2.2主程序

主程序流程如图9所示,在主程序中初始化了整个工程中用到的变量,初始化了液晶显 示模块。开2Hz中断实现计时。在主程序中调用了键盘扫描程序,对IOA口的低三位进行扫描,如果有键按下,就把相应的键值存入到一个变量中,通过主程序来判断是哪个键按下,并执行相应的功能:按Key1播报年、月、日,再按一下播报时、分长按Key1键达到1.5秒,则进入日期时间调整模式,Key2 - 在调整模式下,使年、月、日、时、分、秒增加,Key3 - 在调整模式下,使年、月、日、时、分、秒减小。

11

图 9 主程序流程图

4.2.3中断服务程序

中断服务程序有三个:一个是2Hz中断服务程序,用来计时;一个是1KHz中断服务程序,用于秒表计时;另外一个是FIQ中断服务程序,用来播放语音。程序的流程分别如图10、图11、图12。

12


基于单片机的语音报时系统论文 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:1吨生活污水处理设计方案(周凤坤)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: