基于isd4004芯片的语音录放系统设计

合集下载

基于51单片机的ISD4004多段语音录放实验

基于51单片机的ISD4004多段语音录放实验

/////////======基于51单片机的ISD4004多段语音录放实验=======//////////////////==================== isd.c ===================/////////////////// 控制IC: AT89C51/52,STC89C51/52RC /////////////////// 系统晶振:22.1184MHz /////////////////// 程序编写:东冬(自然风)/////////////////// 调试时间:2009/02/13 /////////////////// 版本:ISD4004_1.0V ///////////////////////////////////////////////////////////////////////////////*操作说明:1、按住K1键开始录音,放开K1键结束录音;再按住K1键,开始录第二段;以此类推;2、按一下K2键,开始放音,等该段放音结束,继续等待;再按下K2键,放第二段,以此类推PS:每一段录音长度要手动设置,不能自主控制录音长度(以待后改)*/#include "STC89C52RC.H"//#include <reg52.h>#include <intrins.h>#include "MyType.h"//=======分段录音首地址定义======================#define ISD_ADDS1 0x0000 //录音存放地址1#define ISD_ADDS2 0x0100 //录音存放地址2#define ISD_ADDS3 0x0200 //录音存放地址3#define ISD_ADDS4 0x0300 //录音存放地址4#define ISD_ADDS5 0x0400 //录音存放地址5//========ISD4004指令定义========================#define POWER_UP 0x20 //上电指令#define SET_PLAY 0xE0 //指定放音指令#define PLAY 0xF0 //当前放音指令#define SET_REC 0xA0 //指定录音指令#define REC 0xB0 //当前录音指令#define SET_MC 0xE1 //指定快进指令#define MC 0xF1 //快进执行指令#define STOP 0x30 //停止当前操作#define STOP_WRDN 0xF1 //停止当前操作并掉电#define RINT 0x30 //读状态:OVF和EOM//=========ISD4004--c51接口定义=================sbit ISD_SS = P0^0; //片选sbit ISD_MOSI = P0^1; //数据输入sbit ISD_SCLK = P0^2; //ISD4004 时钟sbit ISD_INT = P3^3; //溢出中断sbit ISD_RAC = P3^2; //行地址时钟sbit ISD_MISO = P3^6; //数据输出//==========按键定义==========================sbit K1 = P1^0 ; //录音键sbit K2 = P1^1; //放音键//==========BEEP开关定义======================#define Beep_ON (P0&=0x7f) //蜂鸣器开#define Beep_OFF (P0|=0x80) //蜂鸣器关//==========ISD4004函数定义===================void ISD_SPI_Send8( uchar isdx8 ); //spi 串行发送子程序,8位数据,从低到高void ISD_SPI_Send16( uint isdx16 ); //spi 串行发送子程序,16位数据.从低到高uint ISD_SPI_Radd(void); //读取标行地址void ISD_Stop(void); //发送stop 指令void ISD_PowerUp(void); //发送上电指令,并延迟50msvoid ISD_PowerDown(void); //发送掉电指令,并延迟50msvoid ISD_Play(void); //发送放音指令,并延迟50msvoid ISD_SetPlay(uint add); //发送指定放音指令,并延迟50msvoid ISD_Rec(void); //发送录音指令,并延迟50msvoid ISD_SetRec(uint add); //发送指定录音指令,并延迟50msuchar ISD_Chk_Isdovf(void);void PLAY_now(uchar add_sect); //按指定地址开始放音void REC_now(uchar add_sect); //按指定地址开始录音//========延时函数===========================void Delay1Ms(uchar t); //延时t*1毫秒void Delay();////////////////////////////////////////////////////////////////////////// 程序开始///*******************************主程序*********************************/main (){uchar i,j;while (1){//=========================K1录音键if(K1==0) //K1键按下。

基于ISD4004芯片的语音录放设计

基于ISD4004芯片的语音录放设计

公益语音部分基于ISD4004芯片的语音录放设计1、器件介绍ISD4004 系列单片语音一、简述●单片8 至16 分钟语音录放●内置微控制器串行通信接口●3V 单电源工作●多段信息处理●工作电流25-30mA,维持电流1μA●不耗电信息保存100 年(典型值)●高质量、自然的语音还原技术●10 万次录音周期(典型值)●自动静噪功能●片内免调整时钟,可选用外部时钟ISD4004 系列工作电压3V,单片录放时间8 至16 分钟,音质好,适用于移动电话及其他便携式电子产品中。

芯片采用CMOS 技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。

芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI 或Microwire)送入。

芯片采用多电平直接模拟量存储技术, 每个采样值直接存贮在片内闪烁存贮器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和"金属声"。

采样频率可为 4.0,5.3,6.4,8.0kHz,频率越低,录放时间越长,而音质则有所下降,片内信息存于闪烁存贮器中,可在断电情况下保存1 00 年(典型值),反复录音10 万次。

二、引脚描述电源:(VCCA,VCCD) 为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上,模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。

地线:(VSSA,VSSD) 芯片内部的模拟和数字电路也使用不同的地线。

同相模拟输入(ANA IN+) 这是录音信号的同相输入端。

输入放大器可用单端或差分驱动。

单端输入时,信号由耦合电容输入,最大幅度为峰峰值32mV,耦合电容和本端的3KΩ电阻输入阻抗决定了芯片频带的低端截止频率。

差分驱动时,信号最大幅度为峰峰值16mV,为ISD33000 系列相同。

基于ISD4004的语音录放系统

基于ISD4004的语音录放系统

本科毕业设计(2012届)题目语音录放系统的设计学院专业班级学号学生姓名指导教师完成日期2012年5月摘要本论文主要实现语音录放系统的设计。

语音录放系统主要包括单片机控制模块、语音采集模块、语音处理模块、信号放大模块,其中单片机控制模块是整个系统设计的关键。

在语音的录放过程中,单片机通过SPI通信方式与语音模块进行通讯,来实现语音的录音与播放。

由于每段录音都对应着不同的地址,因此在播放录音时,需要发送需要播放的地址即可播放。

语音录放系统的信号处理过程主要包括语音的采集、信号的放大和语音的滤波。

语音经过驻极体传感器,即麦克风,把声波信号转换成电信号。

传感器采集的电信号进过放大电路,放大一定倍数,经滤波、耦合之后送至语音模块。

语音模块对连续变化的语音信号进行采样,抽取其中的语音信号电平,直接存储在语音芯片ISD4004中,因此使得语音自然真实。

当语音播放时,需要在语音芯片的输出段加一个带通滤波器,以滤除音频带宽以外的信号,从而减少杂音的干扰。

STC89C52单片机的程序,使用keil编译程序进行设计和调试完成,其主要功能是控制语音模块,以及液晶显示模块。

关键词:微控制器;录音放音;ISD4004;ABSTRACTThe main aim of this paper is to realize the function of voice recording and playback system. The key to the overall system design of the voice recording system which includes a single-chip control module, voice acquisition module, voice processing module, signal amplification module, is MCU control module. In the voice playback process, the microcontroller communicates through SPI communication voice module,thus realizing voice recording and playback. Each recording corresponds to a different address, so the microcontroller just need to send the address of the recording to be played for play back.The signal processing of the voice recording system includes speech acquisition, signal amplification and voice filter. Acoustic signal is converted into electrical signals through electrets sensor, which is also called microphone. The sensor signals will be amplified after flow through the amplifying circuit. Finally it will be send to voice module after filtering, coupling. Continuous acoustic signal is sampled by the voice module, which takes one of the voice signal level, directly stores it in the voice chip ISD4004, and makes speech natural and true. When the recording is played we need a band-pass filter in the voice chip output section, to filter out the signal outside the audio bandwidth thereby reducing noise. The codes of the Microcontroller STC89C52 is designed and tested by using keil compiler, whose main function is to control the voice module and LCD module.Key words:Microprocessor; V oice Recording and playing; ISD4004目录1 引言 (1)2 概述 (2)2.1 语音录放系统概述 (2)2.2 本设计方案的论证 (3)2.2.1 系统的单片机选择论证 (3)2.2.2 系统的液晶选择 (3)2.2.3 系统的滤波电路的选择 (3)2.3 研发方向和技术关键 (3)2.4 主要技术指标 (4)3硬件设计 (5)3.1 硬件的总体设计 (5)3.2驻极体传声器 (6)3.3信号放大电路 (6)3.4 语音信号功率放大电路 (8)3.5 ISD4004语音芯片介绍 (9)3.5.1 芯片性能简述和引脚图 (9)3.5.2 ISD4004芯片主要引脚描述 (10)3.5.3 SPI协议 (11)3.6滤波电路的设计与方案论证 (13)3.7 基于matlab软件对滤波前后语音的分析 (15)4软件设计 (22)4.1 总体方案 (22)4.2 程序流图 (22)4.3 模块说明 (24)4.3.1 ISD4004驱动程序 (24)4.3.2 1602液晶底层驱动 (26)4.3.3菜单选择程序 (28)4.3.4 录音函数 (29)4.3.5放音函数 (30)4.3.6 播放方式选择 (32)5制作与调试 (34)5.1 硬件电路的布线与焊接 (34)5.1.1 总体特点 (34)5.1.2 Altium designer软件画PCB (34)5.1.3焊接 (34)5.2 调试 (34)5.2.1 硬件调试 (34)5.2.2 软件调试 (35)5.3 系统的各个工作状态下实物照片图 (36)6 结论 (38)致谢 (39)参考文献 (40)附录 (41)1 引言从20世纪30年代初到50年代初,有声电影主要应用光学录音方法。

基于单片机的ISD4004语音播报系统

基于单片机的ISD4004语音播报系统
中北大学
课程设计任务书
2013/2014学年第1学期
学院:信息与通信工程学院
专业:光电信息工程
学生姓名:学号:
课程设计题目:单片机控制ISD4004语音芯片的语音录放系统设计
起迄日期:2013年12月23日~2014年1月10日
课程设计地点:中北大学5院楼513、606
********
下达任务书日期: 2013年12月23日
设计说明书及相关电路图
6.工作计划及进度:
2013年12月23日~2013年12月24日:了解设计题目及查找资料;
2013年12月25日~12月25日:确定各题目要求计算相关参数;
2013年12月26日~12月27日:结合各题目确定具体设计方案;
2013年12月28日~2014年1月7日:结合要求具体设计并编程仿真;
1)设计说明书、相关图纸符合要求;
2)相应器件的工作原理及应用;
3)系统工作原理图;
4)参考文献原文不少于5篇。
课程设计任务书
4.主要参考文献:
要求按国标GB 7714—87《文后参考文献著录规则》书写,例:
1傅承义,陈运泰,祁贵中.地球物理学基础.北京:科学出版社,1985
(5篇以上)
5.设计成果形式及要求:
2014年1月8日~1月9日:完善仿真结果、整理课程设计说明书;
1月10日~1月10日:答辩或成绩考核。
学科部审查意见:
签字:
年月日
课程设计任务书
1.设计目的:
在学习专业基础课和专业课的基础上,主要结合光学、光电技术、电子仪器、微机原理与应用、单片机与各种功能性芯片(如时钟芯片、调制与解调芯片、A/D和D/A转换芯片等)以及光、计、电综合应用等方面开展实践活动,巩固所学知识、培养动手能力,提高综合设计能力。

ISD4004系列语音芯片中文资料

ISD4004系列语音芯片中文资料

ISD4004系列单片语音录放电路一、简述●单片8至16分钟语音录放●内置微控制器串行通信接口●3V单电源工作●多段信息处理●工作电流25-30mA,维持电流1μA●不耗电信息保存100年(典型值)●高质量、自然的语音还原技术●10万次录音周期(典型值)●自动静噪功能●片内免调整时钟,可选用外部时钟ISD4004系列工作电压3V,单片录放时间8至16分钟,音质好,适用于移动电话及其他便携式电子产品中。

芯片采用CMOS技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。

芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI或Microwire)送入。

芯片采用多电平直接模拟量存储技术, 每个采样值直接存贮在片内闪烁存贮器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和"金属声"。

采样频率可为4.0,5.3,6.4,8.0kHz,频率越低,录放时间越长,而音质则有所下降,片内信息存于闪烁存贮器中,可在断电情况下保存100年(典型值),反复录音10万次。

二、引脚描述电源:(VCCA,VCCD)为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上,模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。

地线:(VSSA,VSSD)芯片内部的模拟和数字电路也使用不同的地线。

同相模拟输入(ANA IN+)这是录音信号的同相输入端。

输入放大器可用单端或差分驱动。

单端输入时,信号由耦合电容输入,最大幅度为峰峰值32mV,耦合电容和本端的3KΩ电阻输入阻抗决定了芯片频带的低端截止频率。

差分驱动时,信号最大幅度为峰峰值16mV,为ISD33000系列相同。

反相模拟输入(ANA IN-)差分驱动时,这是录音信号的反相输入端。

语音ISD4004原理图及程序

语音ISD4004原理图及程序

录音程序:#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned int//使用一下三个I/O口即可完成基本的录放音功能sbit SS=P1^0;sbit SCLK=P1^1; //LOW IS ACTIVEL Y sbit MOSI=P1^2;sbit BF_1=P3^5; //执行sbit BF_2=P3^6; //复位sbit BF_3=P3^7; //PR=1录音,pr=0放音sbit LED=P2^0; //亮正在录音sbit LED1=P2^2; //闪一下进入录音sbit LED2=P2^4; // 闪一下复位sbit LED3=P2^6; //LED3亮放音void delay(unsigned int time)//延时几微秒{while(time!=0){time--;}}void delayms(unsigned int time)//延时几毫秒{uchar j;while(time--){for(j = 0; j < 120; j++);}}//串行发送子程序,8位数据void spi_send(unsigned char isdx){unsigned char isx_counter;SS=0;//ss=0打开spi通信端SCLK=0;for(isx_counter=0;isx_counter<8;isx_counter++){if((isdx&0x01)==1) //先发地位再发高位依次发送MOSI=1;elseMOSI=0;isdx=isdx>>1;SCLK=1;delay(2);SCLK=0;delay(2);}}//发送stop指令void isd_stop(void){delay(10);spi_send(0x30);SS=1; //两条指令之间为高电平,故所有指令之后都要将SS拉高delayms(50);LED2=0;delayms(1000);LED2=1;}//发送上电指令并延时50毫秒,上电后要延时一段时间(约为25MS)后才能发送指令void isd_pu(void){delay(10);SS=0;spi_send(0x20);SS=1;delayms(50); //上电后要延时一段时间(约为25MS)后才能发送指令,这里给它50 MS }//发送掉电指令并延时50msvoid isd_pd(void){delay(10);spi_send(0x01);SS=1;delayms(50);}//发送rec指令,录音void isd_rec(void){LED=0;spi_send(0xb0);SS=1 ;}//发送setrec指令void isd_setrec(unsigned char adl,unsigned char adh){delayms(1);spi_send(adl);//发送放音起始地址低位delay(2);spi_send(adh);// 发送放音起始地址高位delay(2);spi_send(0xa0);SS=1;}//该函数录三段录音,每段录音约为20Svoid luyin(){unsigned char i;delayms(200);P2=0x00; //LED提示录音开始isd_setrec(0x00,0x00);//发送0x000h地址的setplay指令,左边的为低地址,右边的为高地址,一个地址约有200MS的时间isd_rec();i=6; //i为设定的录音时间,单位为秒,可更改while(i--){delayms(1000);}isd_stop();//放音完毕,发送stop指令P2=0xf0; //LED提示录音结束}void main(){P0=0xff;P1=0xff;P2=0xff;P3=0XFF;//初始化delayms(200);isd_pu();//AN键按下ISD上电并延时50msisd_pd();isd_pu();while(1){if(BF_3==0){delayms(200);if(BF_3==0)luyin(); //录音}}}播放程序:#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned int//录放音用一下三个I/O口即可sbit SS=P1^0;sbit SCLK=P1^1; //LOW IS ACTIVEL Y sbit MOSI=P1^2;sbit BF_1=P3^5; //执行sbit BF_2=P3^6; //复位sbit BF_3=P3^7; //PR=1录音,pr=0放音sbit LED=P2^0; //亮正在录音sbit LED1=P2^2; //闪一下进入录音sbit LED2=P2^4; // 闪一下复位sbit LED3=P2^6; //LED3亮放音void delayus(unsigned int time)//延时几微秒{while(time!=0){time--;}}void delayms(unsigned int time)//延时几毫秒{uchar j;while(time--){for(j = 0; j < 120; j++);}}//串行发送子程序,8位数据void spi_send(unsigned char isdx){unsigned char isx_counter;SS=0;//ss=0打开spi通信端SCLK=0;for(isx_counter=0;isx_counter<8;isx_counter++){if((isdx&0x01)==1) //先发地位再发高位依次发送MOSI=1;elseMOSI=0;isdx=isdx>>1;SCLK=1;delayus(2);SCLK=0;delayus(2);}}//发送stop指令void isd_stop(void){delayus(10);spi_send(0x30);SS=1; //两条指令之间为高电平,故所有指令之后都要将SS拉高delayms(50);LED2=0;delayms(1000);LED2=1;}//发送上电指令并延时50毫秒,上电后要延时一段时间(约为25MS)后才能发送指令void isd_pu(void){delayus(10);SS=0;spi_send(0x20);SS=1;delayms(50); //上电后要延时一段时间(约为25MS)后才能发送指令,这里给它50 MS }//发送掉电指令并延时50msvoid isd_pd(void){delayus(10);spi_send(0x01);SS=1;delayms(50);}//发送play指令,播放void isd_play(void){LED3=0;spi_send(0xf0);SS=1;}//发送setplay指令void isd_setplay(unsigned char adl,unsigned char adh){delayms(1);spi_send(adl);//发送放音起始地址地位delayus(2);//adh=adh|0xe0;spi_send(adh);// 发送放音起始地址高位delayus(2);spi_send(0xe0);SS=1;}void bofan(unsigned char mun){unsigned char i;switch(mun){case 1:P2=0xf0; //LED提示放音开始isd_setplay(0x00,0x00);//发送setplay指令,从0x0000地址开始放音isd_play(); //发送放音指令/* i=5; //i为放音时间,单位为秒,可更改while(i--){delayms(1000);}isd_stop(); */P2=0xff;break;}}void main(){unsigned char mun;P0=0xff;P1=0xff;P2=0xff;P3=0XFF;//初始化delayms(200);isd_pu();//AN键按下ISD上电并延时50ms isd_pd();isd_pu();while(1){mun=1;if(BF_3==0){delayms(200);if(BF_3==0)bofan(mun);}}}。

ISD4004系列器件语音拷贝系统的设计

ISD4004系列器件语音拷贝系统的设计
自动无缝 跳转 到下 一行 开 始 , 续 录放 .不 同之处 在 于 继
放音时 , 遇到 E M标志时 , O 放音 自动停止 , 产生中断 ; 录 音时 , 需要向器件发送 SO T P命令 , 写入一个 E M标志 , O
结 束 录音 .
放音时 ,每播放一行语音 ,产生一个 R C周期信 A
1 D 0 4语音芯片介绍 I 40 S I S D系列语音芯片是 Wi od公司推出的产品.该 nn b
芯片采用多 电平直接模拟存储专利技术 ,声音不需要
器 的行 地 址 .行 是 语 音 信 息 段 的基 本 组 成 单 位 . 以
A D转换和压缩 , / 模拟信号直接存储在片内的闪烁存储 器中, 没有 A D 转换误差 ,因此能够真实 , / 自然地再现
后, 要等待To 后器件才能停止工 sp t 作. 对于I 40-M , =0 s S 04 8 P t 5m o D To sp
( )为 了达到较好 的放音和录 3 音质量 , 录音和放音时 , 建议采用下 面 的操 作 顺序 :
放音时 :①发送 P W R P命 O EU
I 40 系列语音芯片的所有操作由微控制器控制, S 04 D 操作命令通过串行通信接 口(P 或 Mc wr) SI i i 送人. o r e 录音
采样频率可为 4O z53 z641, H , . , H , 1 8O z 录放时间可为 H . . z . 8 i,0 i,2 i,6 i.采样频率越低 ,录放时间越 mn 1mn mn mn 1 1 长, 但音质则有所下降.片内信息存于闪烁存储器中, 可 在断电情况下保存 10年 , 0 反复录音 1 0万次( 典型值 ) . 器件工作 电压为 3 工作 电流为 巧- 5 A, V, 2m 维持 电流为

基于ISD4004的红外遥控医院语音播报系统的设计

基于ISD4004的红外遥控医院语音播报系统的设计

contr01.Gmelm妇The chip and infrared remote
system provides a low—cost and high—performance hospital automatic
broadcast solution and realizes intelligent and automation broadcast.【Chinese Medical Equipment JournaI.2009,30
isd4004语音芯片采用cmos技术内含晶体振荡器防混叠滤波器平滑滤波器自动静噪音频功率放大器及高密度多电平闪烁存储陈列等因此只需很少的外围器件就可构成一个完整的声音录放系统1563
THESIS&RESEARCH REPORT l研究论著
基于ISD4004的红外遥控医院语音播报系统的设计
杨易华,吴效明,岑人经
卜●1—0—-m—开—始 ——位—l———叫———●叶——}1 _m卜一卜●————1—0m—8—停—止—位 —刊I
—卜第l位 计讹,。
圈3系统原理图
主控模块控制整个程序运 行的流程,协调各个功能模块 的工作.如图4所示。主程序处 于等待红外接收中断状态,根 据接收到的命令码进行相应的 处理。如果接收到的是录、放音 命令.则根据随后接收到的段 码,选择ISD4004对应的段.进 行录、放音操作.并在液晶显示 屏上显示出段码、时间或广播 词。 3.2语音录放模块
Ul
…一叶飞1.0592M18r-1 一lJ卜+

b XTALl
2M18
i-』 XTAL2
。hI
v耳cc黎I ■P叫磊 黔一
∥增-J-毒Iq骂
嚣 P3.ORxD P3.1RxD P3.2 P3-3 P3 4厂fD
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘要:本文介绍了基于STC12C5A60S2单片机及ISD4004语音板为主要部件的语音录放电路的工作原理、硬件和软件的设计。

ISD4004系列工作电压3V,单片录放时间8至16分钟,音质好,适用于移动电话及其他便携式电子产品中。

芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口SPI送入。

论文概述了语音录放电路的原理,并且在介绍语音录放系统功能的基础上,提出了系统的总体构成。

针对录放系统的录音、放音部分的总体设计方案进行了论证。

进一步介绍了单片机AT89C52应用在系统中的应用,分析了系统各部分的硬件及软件实现。

本次设计目是完成一个简单方便,能可靠稳定工作的语音录放系统,该方案结构简单,控制可靠, 便于推广。

关键词:ISD4004 AT89C52单片机语音录放Abstract:This paper introduces ISD4004 based on STC12C5A60S2 single chip computer and of the main parts of speech plate as the working principle of voice recording circuit and the design of hardware and software. ISD4004 series working voltage, monolithic 3V recording time 8 to 16 minutes, timbre, suitable for mobile phones and other portable electronics.Chip design is based on all the operation must by micro controller control, operation orders through serial communication interface SPI into. This paper summarizes the principle of voice recording circuit, and introduces the function of speech on the basis of recording system, puts forward the general structure of the system. Recording system for the recording, playback part of the overall design scheme is demonstrated. This paper introduces microcontroller AT89C52 single applications in system, the application system were analyzed each part of hardware and software realization.This design is to complete a reliable and stable working voice recording circuit. The design is simple in structure, reliable control and facilitate promotion.Keyword: ISD4004;89C52microcontroller;voice recording and playback录引言 (1)第1章绪论 (2)1.1系统设计的意义 (2)1.2系统设计的目的 (2)1.3系统采用的实现方法 (3)第2章单片机控制技术和开发环境介绍 (4)2.1 STC12C5A60S2单片机性能和引脚介绍 (4)2.1.1 STC12C5A60S2系列单片机简介 (4)2.1.2 STC12C5A60S2主要性能参数 (4)2.1.3 STC12C5A60S2引脚 (5)2.2 keil开发环境和建立工程 (7)2.2.1 keil简介 (7)2.2.2 Keil工程建立 (7)2.3 ISD4004介绍 (10)2.3.1性能简述和引脚图 (10)2.3.2引脚描述 (10)2.4 SPI(串行外设接口) (12)2.4.1协议介绍 (12)2.4.2 信息快进 (13)2.4.3上电顺序 (13)2.4.4 SPI端口的控制位 (14)2.4.5 SPI控制寄存器 (15)2.4.6时序 (15)第3章系统总体设计 (17)3.1 硬件电路设计 (17)3.2软件设计 (20)3.2.1语音芯片的内部信息寻址机制 (20)3.2.2 监控ISD4004录音地址的实例 (21)3.2.3程序流程图 (21)第4章测试实例 (23)4.1 测试内容 (23)参考文献 (25)插图清单图2.1 STC12C5A60S2单片机引脚图 (6)图2.2 选择单片机型号 (8)图2.3 加入文件 (8)图2.4 重复加入源程序得到的提示 (9)图2.5 ISD4004引脚图 (10)图2.6 时序 (11)表2.1 指令表 (14)图2.7 各端口功能 (14)表2.2 控制器功能 (15)图2.8 SPI 端口 (15)表2.3 SPI 时序参数 (16)图3.1 电源与指示灯原理图 (18)图3.2 按键和指示灯原理图 (18)图3.3 单片机原理图 (18)图3.4 音频输入原理图 (19)图3.5 音频输出原理图 (19)图3.6录放时序 (20)图3.8 程序流程图 (22)图4.1 实物图 (23)2引言语音,作为一种典型的非平稳随机信号,是人类交流信息最自然、最有效、最方便的手段,在人类文明和社会进步中起着重要的作用。

随着电子通信业的出现和计算机技术的发展,人们开始可以从数字信号处理的角度了解语音。

语音信号的研究可以从时域和频域两个方面进行。

其中时域的分析处理有两种方法:一是进行语音信号分析,这属于小型处理的范畴,主要是通过信号的加减、时移、倍乘、卷积、求相关函数等来实现;另一种是生成和变换成各种调制信号,这属于非线性的范畴,主要是对信号平均累加器的动态范围进行压缩扩张,用门限方法对噪声的抑制。

对频域分析处理,即对信号的频率特性在频谱中加以分析研究,这拓展了信号分析的范围,是对不确定信号分析的主要方法。

随着计算机技术处理和信息技术的发展,语音交互已经成为人机交互的必要手段,而语音信号的采集处理是人机交互的前提和基础。

声卡是计算机对语音信息进行加工的重要部件,它具有对信号滤波、放大、采样保持、A/D和D/A转换等功能。

语音信号处理作为一个重要的研究领域,已经有很长的研究历史。

但是它的快速发展可以说是从1940年前后Dudley的声码器和Potter等人的可见语音开始的;20世纪60年代中期形成的一系列数字信号处理方法和技术,如数字滤波器、快速傅里叶变换等成为语音信号数字处理的理论和技术基础;到了80年代,由于矢量量化、隐马尔克夫模型和人工神经网络等相继被应用于语音信号处理,并经过不断改进与完善,使得语音信号处理技术产生了突破性的进展。

进入90年代以来,语音信号处理在实用化方面取得了许多实质性的进展。

一方面,对声音语音学统计模型的研究逐渐深入,鲁棒的语音识别、基于语音段的建模方法及隐马尔可夫模型与人工神经网络的结合成为研究的热点。

另一方面,为了语音识别使用化的需要,讲着自适应、听觉模型、快速搜索识别算法以及进一步的语言模型的研究等课题备受关注。

1第1章绪论1.1系统设计的意义语音不仅是人与人之间进行信息交流最直接、最方便和最有效的工具,而且也是人与机器之间进行通信的重要工具。

1874年电话的发展可以认为是现代处理的开端。

电话的理论基础是尽可能不失真地传送语音波形。

这种“波形原则”几乎统治了其后整整一百年。

1939年产生了一种概念全新的语音处理技术,这就是著名的通道声码器技术。

声码器的理论基础是认为语音是由人的声带振动产生的生源(载波)受到运动的声道的控制(调制)而产生的,因而将载波和调制两部分分开来进行传送便可极大地压缩频带。

这一概念已经包含着其后出现的语音参数模型的基本思想。

40年代后期,研制成功了能够把语音信号的时变谱用语音表示出来的仪器——语音仪,为语音信号分析提供了一个有力的工具。

对于语音信号,数字处理比模拟处理具有更多的优点。

这是因为:第一,数字技术能够完成许多很复杂的信号处理工作;第二,通过语音进行交换的信息本质上具有离散的性质,因为语音可以看成是因素的组合,这就特别适合于数字处理;第三,数字系统具有高可靠性、价廉、紧凑、快速等特点,很容易完成实时处理任务;第四,数字语音适合于在强干扰通信中传输,易于和数据一起在通信网中传输,也易于进行加密传输。

因此数字语音信号处理是主要研究方向。

无论是人与人之间还是人与计算机之间的语音通信,语音处理,特别是语音数字处理的理论和技术,具有特别重要的作用。

单片机的应用无处不在,利用单片机控制语音的录放也多不胜举。

用单片机控制语音芯片,再把单片机和语音芯片嵌入到通信设备,智能仪器,治安报警及儿童玩具中,就可做成语音播放的机器,应用范围广泛。

用单片机控制语音芯片设计语音录放系统,该系统功能多,录放音音质好,外围电路简单。

1.2系统设计的目的设计一个语音录放系统,可以应用于通讯设备、智能仪表、治安报亭、语音报站、报数报价、语音讲解、语音记录、语音复读、教学仪器、智能玩具、电子礼品等领域。

要求放音质量好,用二极管显示工作状态。

系统具有较强的抗干扰能力,便于安装和扩展。

21.3系统采用的实现方法设计硬件原理图,焊接语音模块,包括电压转换芯片,音频小功率放大器和ISD4004的连接.编写软件程序,利用单片机控制技术,实现录、放、停等操作。

第2章单片机控制技术和开发环境介绍2.1 STC12C5A60S2单片机性能和引脚介绍2.1.1 STC12C5A60S2系列单片机简介STC12C5A60S2/AD/PWM 系列单片机是STC生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8—12倍。

内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S,即25万次/秒),针对电机控制,强干扰场合。

2.1.2 STC12C5A60S2主要性能参数1.增强型8051 CPU,1T,单时钟/机器周期,指令代码完全兼容传统80512.工作电压:STC12C5A60S2系列工作电压:5.5V-3.3V(5V单片机)STC12LE5A60S2系列工作电压:3.6V- 2.2V(3V单片机)3.工作频率范围:0 - 35MHz,相当于普通8051的 0~420MHz4.用户应用程序空间8K /16K / 20K / 32K / 40K / 48K / 52K / 60K / 62K字节......5.片上集成1280字节RAM6.通用I/O口(36/40/44个),复位后为:准双向口/弱上拉(普通8051传统I/O口)可设置成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏每个I/O口驱动能力均可达到20mA,但整个芯片最大不要超过55mA7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片8.有EEPROM功能(STC12C5A62S2/AD/PWM无内部EEPROM)9. 看门狗10.内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地)11.外部掉电检测电路:在P4.6口有一个低压门槛比较器 5V单片机为1.32V,误差为+/-5%,3.3V单片机为1.30V,误差为+/-3%12.时钟源:外部高精度晶体/时钟,内部R/C振荡器(温漂为+/-5%到+/-10%以内) 1用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟常温下内部R/C振荡器频率为:5.0V单片机为:11MHz~15.5MHz 3.3V单片机为: 8MHz~412MHz 精度要求不高时,可选择使用内部时钟,但因为有制造误差和温漂,以实际测试为准13.共4个16位定时器两个与传统8051兼容的定时器/计数器,16位定时器T0和T1,没有定时器2,但有独立波特率发生器做串行通讯的波特率发生器再加上2路PCA 模块可再实现2个16位定时器14. 2个时钟输出口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出在P3.5/T1输出时钟15.外部中断I/O口7路,传统的下降沿中断或低电平触发中断,并新增支持上升沿中断的PCA模块, Power Down模式可由外部中断唤醒, INT0/P3.2, INT1/P3.3, T0/P3.4, T1/P3.5, RxD/P3.0, CCP0/P1.3(也可通过寄存器设置到P4.2 ), CCP1/P1.4 (也可通过寄存器设置到P4.3)16. PWM(2路)/PCA(可编程计数器阵列,2路) ---也可用来当2路D/A使用---也可用来再实现2个定时器 ---也可用来再实现2个外部中断(上升沿中断/下降沿中断均可分别或同时支持)17.A/D转换, 10位精度ADC,共8路,转换速度可达250K/S(每秒钟25万次)18.通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用定时器或PCA软件实现多串口19. STC12C5A60S2系列有双串口,后缀有S2标志的才有双串口,RxD2/P1.2(可通过寄存器设置到P4.2),TxD2/P1.3(可通过寄存器设置到P4.3)20.工作温度范围:-40 - +85℃(工业级) / 0 - 75℃(商业级)21.封装:PDIP-40,LQFP-44,LQFP-48 I/O口不够时,可用2到3根普通I/O口线外接74HC164/165/595(均可级联)来扩展I/O口, 还可用A/D做按键扫描来节省I/O口,或用双CPU,三线通信,还多了串口。

相关文档
最新文档