1 引言
单片机以其高可靠性、高性价比、低电压、低功耗等优点得到迅猛发展和大范围推广,广泛应用于工业控制系统、数据采集系统、智能化仪器仪表及通讯设备、日常消费类产品、玩具等,利用单片机实现语音录放有很大的研究和开发价值。
语音录放系统以AT89C52单片机为控制核心。ISD2560是一种永久记忆型语音录放电路器件,它具有音质自然、使用方便、单片存放、反复录音、低功耗、抗断电等特点,广泛应用于许多领域。ISD2560省去A/D和D/A转换器,集成度较高,内部包括前置放大器、内部时钟、定时器、采样时钟、滤波器、自动增益控制、逻辑控制、模拟收发器、解码器和480 KB的EEPROM。为降低成本,在最小硬件设计基础上,系统功能尽可能用软件程序实现,利用C51高级C语言编程开发。
2 系统硬件设计
该系统的硬件电路主要由单片机、语音录放器件、麦克风及扬声器构成。图1为其硬件结构框图。
该系统的核心为AT89C52单片机,AT89C52具有快速8051内核、8 KB Flash E2pROM、256 B IDATA RAM,完全符合该系统硬件要求。为实现语音录放功能,采用ISD2560器件,其录音时间为60 s,并且能够接收单片机发出的命令,接收录音指令时,将从麦克风传出的语音段直接保存在内部存储器中;接收到放音指令时,按照单片机给定的地址,从存储器中取出语音段并驱动扬声器,以声音的形式播出语音段。
单片机的4组I/O端口中,作为普通I/O端口的只有P1口,所以将P1.0位作为输入端.与启动按键连接,用外部中断0(即P3.2位)与录放器件的 EOM端(作为录音时的结尾标志输出端口)连接,录,放模式选择端P/R,器件使能输入端CE、节电控制端PD分别与P1口的P1.3~P1.7相连,作为语音器件和单片机的输入控制端口,10位地址端与单片机的低8位和高2位连接组成A0~A9,10位地址线、单片机的外接时钟电路和复位电路等;麦克风和扬声器与相应的ISD2560引脚相连,并接相应的电容电阻进行稳压和稳流,整个系统电路原理如图2和图3所示。
3 ISD2560器件简介及设计
3.1 器件引脚功能
ISD2560语音器件是ISD公司生产的语音录入和播放器件ISD2500系列之一,该器件有28个引脚,采用SOIC封装,录音时间为60s。器件引脚功能如表1所示。
3.2 语音器件外围电路设计
(1)扬声器电路语音器件的SP+(引脚14),SP-(引脚15)分别接扬声器的一端。通电后,系统可以驱动16 Ω以上的扬声器。
(2)话筒电路MIC IN(引脚17)、MIC REF(引脚18)分别通过相应的电容连接到话筒两端。
通过MIC IN将话筒的输入信号送至片内前置放大器,片内自动增益控制电路AGC将此前置放大器的增益控制在-15~+24 dB,具体电路如图3所示。该器件在使用前需用单片机写入初始状态。
4 软件设计
语音录放系统的软件设计包括:单片机写入ISD2560器件的控制字及定时中断控制。单片机语音录放系统的程序采用模块设计,实现语音的录取和播放功能,需2个子程序来实现此功能的。另外还要有与主函数通信的中断服务子程序及延时程序。程序主要变量及功能说明如表2所示。
4.3 程序流程
系统软件设计流程如图4所示。
5 结束语
该设计选择ISD单片机语音录放器件省去A/D转换和D/A转换,采用直接电平存储技术使得语音自然真实;该电路可嵌入到其他电路中,使用非常方便。给出以单片机AT89C52为核心构成的语音录放系统原理图及软件流程。通过实验验证该语音录放系统录音和放音效果良好,单片机控制相当准确。在应用方面,将该系统作为一个模块可与其他功能电路集成,实现各种功能复杂的语音系统,如电脑语音钟、手机话费查询系统、排队机、监控系统语音报警及公共汽车报站器等,具有一定的实用价值。