首页 语音信号采集与回放系统设计2

语音信号采集与回放系统设计2

举报
开通vip

语音信号采集与回放系统设计2 电子与信息工程学院 综合实验课程报告 课题名称 语音采集及回放系统设计 专 业 电子信息工程 班 级 07电子2班 学生姓名 YYY 学 号 07002 指导教师 XXX ...

语音信号采集与回放系统设计2
电子与信息 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 学院 综合实验课程报告 课题名称 语音采集及回放系统设计 专 业 电子信息工程 班 级 07电子2班 学生姓名 YYY 学 号 07002 指导教师 XXX 2010年 7 月 5 日 1 总体设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 介绍: 1.1语音编码方案: 人耳能听到的声音是一种频率范围为 20 Hz~20000 Hz ,而一般语音频率最 高为 3400 Hz。语音的采集是指语音声波信号经麦克风和高频放大器转换成有一 定幅度的模拟量电信号,然后再转换成数字量的全过程。根据“奈奎斯特采样定 理”, 采样频率必须大于模拟信号最高频率的两倍, 由于语音信号频率为 300~ 3 400 Hz ,所以把语音采集的采样频率定为 8 kHz。从语音的存储与压缩率来考 虑,模型参数表示法明显优于信号波形表示法[4]。但要将之运用于单片机,显然 信号波形表示法相对简单易实现。基于这种思路的算法,除了传统的一些脉冲编 码调制外,目前已使用的有 VQ技术及一些变换编码和神经网络技术,但是算法 复杂,目前的单片机速度底,难以实现。结合实际情况,提出以下几种可实现的 方案。 (1)短时平均跨零记数法 该方案通过确定信号跨零数,将语音信号编码 为数字信号,常用于语音识别中。但对于单片机,由于处理数据能力底,该方法 不易实现。 (2)实时副值采样法 采样过程如图 2.1所示。 图 2.1 采样过程 具体实现包括直存取法、欠抽样采样法、自相似增量调制法等三种基本方法。 其中第三种实现方法最具特色,该方法可使数据压 1:4.5,既有 MD 调制的优点, 又同时兼有 PCM编码误差较小的优点,编码误差不向后扩散。 1.2 A/D、D/A及存储芯片的选择 单片机语音生成过程,可以看成是语音采集过程的逆过程,但又不是原封不动 地恢复原来的语音,而是对原来语音的可控制、可重组的实时恢复。在放音时,只 要依原先的采样直经 D/ A 接口处理,便可使原音重现。 (1)A/D转换芯片的选择 根据题目要求采样频率fs=8KHZ,字长=8位, 可选择转换时间不超过125?s的八位A/D转换芯片。目前常用的A/D转换实现的 抽样 量化 存储 方法有多种,鉴于转换速度的要求,我们采用A/D转换芯片AD574。该芯片是 高速 12位逐次比较型 A/D转换器,内置双极性电路构成的混合集成转换显片, 具有外接元件少,功耗低,精度高等特点,并且具有自动校零和自动极性转换功 能,只需外接少量的阻容件即可构成一个完整的 A/D转换[5]。 (2)D/A转换芯片的选择 D/A转换芯片的作用是将存储的数字语音信号 转换为模拟语音信号,由于一般的模拟转换器都能达到1μs的转换速率,足够 满足题目的要求,故我们在此选用了通用D/A转换器DAC0832。 (3)数据存储器的选择 当采样频率ƒs=8KHZ,字长为8位时,一秒钟的 语音需要8K字节的存储空间,则存储器至少需要有80k 8´ 容量。在这里我们选 用闪速存储器AT29C040作为存储器,一片该芯片可存储60秒钟的语言。 1.3系统总体结构 数字化语音存储与回放系统的基本思想是通过拾音器将声音信号转化成电 信号,再经过放大器放大,然后通过带通滤波器滤波,模拟语音信号通过模数转 换(A/D)转换成数字信号,再通过单片机控制将数据从存储器中读出,然后通 过数模转换(D/A)转换成模拟信号,经放大再扬声器或耳机上输出。 整个系统框架图如图 3.1所示: 图 3.1 整体框图 系统组成如图所示,由输入通道、AT89C51单片机和输出通道三部分组成。输 入通道部分由拾音器、前置放大电路和带通滤波器组成;输出通道由带通滤波器、 后级放大电路组成[9]。拾音器输出的毫伏信号实测其范围约为 20~25mV,此电信 A/D转换电路 带通滤波器 D/A转换电路 带通滤波器 输出放大器 耳 机 电源电路 89C51 单 片 机 键盘设定 存储器 数据显示 增益放大器 拾音器 号太小不能够进行采样,后级 A/D转换输入信号的动态范围为 0~5V,语音信号 的范围与采样范围的比较得出放大器的放大倍数应为 200倍左右,此处将信号通 过一增益为 46dB的放大器,将其放大到伏特量级,输出级放大电路亦采用这种 电路,两级放大电路都采用增益可调的典型电路。考虑到语音信号的固有特点, 将低于 300Hz和高于 3.4kHz的分量滤掉后语音质量仍然良好。此处将其通过一 增益为 46dB 的放大器,因此,将带通滤波器设计为典型的 300Hz~3.4kHz,输出 级带通滤波器亦为 300Hz~3.4kHz,这样既可滤掉低频分量又可滤掉D/A转换带来 的高频分量,很好的滤除掉噪声。根据奈奎斯特抽样定理知欲使采样信号无失真, 抽样频率最低为 6.8kHZ,考虑到留有一定的余地,这样就足够保证语音质量。 经量化后,微处理器将数据存到处理器,需要时再将其回放,存入与放出由开关 通过微处理器来控制实现。存储器的容量选择视所存语音信号的时间长短而定。 为了使 A/D 的输入信号稳定在其动态范围内,在输入级加上了自动增益控制电 路,同时也使音量稳定。 2硬件电路设计: 2.1拾音器 拾音器是一种声传感器,声传感器是把外界声场中的声信号转换成电信号的 传感器。它在通讯、噪声控制、环境 检测 工程第三方检测合同工程防雷检测合同植筋拉拔检测方案传感器技术课后答案检测机构通用要求培训 、音质评价、文化娱乐、超声检测、水 下探测和生物医学工程及医学方面有广泛的应用[10]。它的种类很多,按其特点 和频率等,将它划分为超声传感器、声压传感器和声表面波传感器等。单纯的磁 性拾音器工作的电学原理为当声音在铜丝绕制的线圈内震动切割被该线圈所缠 绕的磁芯产生的磁感线时,线圈内感应出电信号并流出。感应电流的强弱取决于 切割磁感线的多寡(振幅)、切割频率(震动频率)和磁感线自身的强弱。 拾音器包括拾音头(换能装置、唱针)和音臂等附件。其换能装置主要有压 电式、电磁式、电容式以及半导体等[11]。电磁式拾音头,用电磁感应原理,将机 械振动变换成电信号的幅度响应拾音头。主要由线圈和磁钢等组成。唱针耦合在 线圈上的称动圈式,耦合在磁钢上的称动磁式。此外,也有将唱针耦合在衔铁上 的称为动铁式,也称可变磁阻式。在本设计中决定采用动圈式拾音器 2.2放大器的设计 (1)增益放大器 拾音器输出的毫伏信号实测其范围约为 20~25Mv 此电信号太小不能够进行采样,后级A/D转换输入信号的动态范围为 0~5V, 语音信号的范围与采样范围的比较得出放大器的放大倍数应为 200倍左右,此处 将信号通过一增益为 46dB的放大器,将其放大到伏特量级,输出级放大电路亦 采用这种电路,两级放大电路都采用增益可调的典型电路[12]。为了将从拾音器 获得的微弱语音信号放大,采用两极高输入阻抗的同向放大器,电路图如图所示, 每级放大器的放大倍数按下式计算: 311 /1 RRA PV += 522 /1 RRA PV += 3 2 6 1 8 5 7 4 NE5534 3 2 6 1 8 5 7 4 NE5534 POT1 POT2 R2 R1 R3 R4 R5 C? 1.0uF E1 C1 C2 E 2.2uF M +15 +15 -15 -15 OUT 图 4.1 增益放大器 (2)输出放大器 经带通滤波器输出的声音回放信号,其幅度为 0~5V, 足以用耳机来接收听,可不接任何放大器。但考虑到实际中经常回用到喇叭外放, 故在本系统中增加外放功能,前端放大器采用通用型音频功率放大器 LM386来 完成[13]。电路如图 4.1。该电路增益为 50~200,连续可调,最大不失真功率为 325mW。输出端接 C4、R9串联电路,以校正喇叭的频率特性,防止高频自激.脚 7接 220uF去偶电容,以消除低频自激.为便于该功放在高增益情况下工作,这 里将不使用输入端脚 2对地短路. 图 4.2 输出放大器 2.3有源带通滤波器设计 滤波器是一种能使有用频率信号通过同时抑制(或大为衰减)无用频率信号 的电子装置。工程上常用它来作信号处理、数据传输和抑制干扰等。这里主要讨 论模拟滤波器。以往这种滤波电路主要采用无源元件 R、L 和 C 组成,60 年代 以来,集成运放获得了迅速发展,由它和 R、C组成的有源滤波电路,具有不用 电感、体积小、重量轻等优点[14]。此外,由于集成运放的开环电压增益和输入 阻抗都很高,输出阻抗又底,构成有源滤波电路后还具有一定的电压放大和缓冲 作用。但是,集成运放的带宽有限,所以目前有源滤波电路的工作频率难以作的 很高,这是它的不足之处。 对于幅频响应,通常把能够通过的信号频率范围定义为通带,而把受阻和衰 减的信号频率范围定义为阻带,理想滤波电路在通带内应具有零衰减的幅频响应 和线形的相位响应,而在阻带内应具有无限大的幅度衰减( ( ) 0=wjA )。按照 通带和阻带的相互位置不同,滤波器可分为低通滤波器、高通滤波器、带通滤波 器、带阻滤波器。 通常用幅频响应来表征一个滤波器的特征,欲使信号通过滤波器的失真很 小,则相位和延时响应亦须考虑。当相位响应 ( )wj 作线性变化,即时延响应 ( )wt 为常数时,输出信号才可能避免失真。 图 4.3 ( ) ( )( )sV sVsA 1 0 = , ( ) ( )ejAjA ww = ( )wjj (s= wj ) 这里 ( )wjA 为传递函数的模, ( )wj 为其相位角。 延时向量 ( )wt : ( ) ( ) ( )s d d w wjwt -= 声音信号经动圈拾音器转有源滤波器换成电压信号,通过前级放大,在对其 进行数据采集之前,有必要经过带通滤波器除带外杂波,选定该滤波器的通带范 围为 300Hz~3.4KHz.其作用是: 1.保证 300~3400Hz的语音信号不失真的通过滤波器; 2.滤除带外的低频信号,以减少带外功频等分量的干扰,大大减少噪声影 响,该下限频率可下延到 270Hz左右; 3.便于滤除带外的高次谐波,以减少因 8kHz采样率而引起的混叠失真, 滤波电路 ( )t1u ( )t0u 根据实际情况,该上限频率可在 2700Hz左右,带通滤波器按品质因数 Q 的大小为窄带滤波器(Q>10)和带通滤波器(Q<10 两种,本题 中,上限频率 fh=3400Hz,通带滤波器中心频率 f0与品质因数Q分别为 f0= 1FhF = 3003400´ =1010Hz Q= 326.0 1 00 = - = fFh F BW F 显然,Q<10,故该带通滤波器为宽带带通滤波器.带宽带通滤波器由高通 和低通滤波器级联构成,鉴于 Butterworth 滤波器带内平坦的响应特性,我 们选用二阶 Butterworth带通滤波器,电路如图 4.3所示.实验证明,该滤波 器能有效的滤除低频分量,大大减少噪声干扰,与之同时也绿除了多余的高 频分量,消除了高频失真,性能足以满足要求[15]。 图 4.4 带通滤波器 2.4可调稳压电源的设计 这里介绍的稳压电源,采用三端可调稳压集成电路 LM317,外围电路十简 单,便于制作。该稳压电源,电压可调范围 1.5~25V,最大负载电流 1.5A[16]。 电路如图 4.4 所示:220V 交流电经变压器 T 降压,得到 24V 交流电,再经 VD1~VD4组成的全桥整流,由 C1滤波后得到 33V左右的直流电压[17]。该电压经 集成电路 LM317后得稳压输出,调节电位器 RP,即可连续调节输出电压。图中 C2 用以消除寄生振荡,C3 的作用是抑制纹波,C4 是用以改善稳压电源的的暂态响 应,VD6、VD7在输出端电容漏电或调整端短路时起保护作用。VD5为本电源的 工作指示灯,电阻 R1 是限流电阻。输出端接微型电压表 PV,可以直观的指示 输出电压值。各元件具体参数如图所标。 图 4.5 可调直流稳压电源 2.5 MCS—51系列单片机 单片微型计算机(Sing-Chip Microcomputer)简称单片机。它是在一块芯片 上集成中央微处理器(Central Processing Unit, CPU)、随机存取存储器(Random Access Memory, RAM)、只读存储器(Read Only Memory, ROM)、定时/计数器 及 I/O(Input/Output)接口电路等部件,构成一个完整的微型计算机。它的特点 是:高性能,高速度,体积小,价格低廉,稳定可靠,应用广泛[18]。 正是由于单片机具有上述显著的特点,使单片机的应用范围日益扩大。单片 机的应用打破了人们传统设计思想,原来很多用模拟电路、脉冲数字电路和逻辑 部件来实现的功能,现在均可以使用单片机,使用软件来实现。使用单片机具有 体积小、可靠性高、性能价格比高和容易产品化的优点。 2.5.1 89C51简介 89C51是一种带 4K字节片内程序存储器,且是高性能 CMOS8位微处理器, 俗称单片机[19]。该器件采用 ATMEL高密度非易失存储器制造技术制造,与工业 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的 MCS-51指令集和输出管脚相兼容。由于将多功能 8位 CPU和闪烁存储 器组合在单个芯片中,ATMEL的 89C51是一种高效微控制器,为很多嵌入式控 制系统提供了一种灵活性高且价廉的方案。 图 4.6 89C51引脚图 89C51有 40个引脚,4个 8位并行输入/输出(I/O)端口:P0、P1、P2、P3, 其中,P1是完整的 8位准双向 I/O口,两个外中断,2个 16位可编程定时/计数 器,两个全双向串行通信口,一个模拟比较放大器。此外,89C51的时钟频率可 为零,即具备可用软件设置的睡眠省电功能,系统的唤醒方式有 RAM、定时/ 计数器、串行口和外中断口,系统唤醒后即进入工作状态,省电模式中,片内 RAM将被冻结,时钟停止震荡,所有功能停止工作,直至系统被硬件系统复位 方可继续工作 2. 引脚介绍 Vcc:接+5V电源正端 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当 P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储 器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入 口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接 收输出 4TTL门电流。P1口管脚写入 1后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH 编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收, 输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作 为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于 内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行 存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势, 当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。 P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL 门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输 入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为89C51的一些特殊功能口,如下表4.1所示: 表 4.1 P3口管脚的特殊功能 引脚 第 二 功 能 P3.0 P3.0 P2.0 P3.3 P3.4 P3.5 P3.6 P3.7 RXD (串行输入口) TXD (串行输出口) INTO (外部中断 0请求输入端) INT1 (外部中断 1请求输入端) T0 (定时器/计数器 0记数脉冲输入端) T1 (定时器/计数器 1记数脉冲输入端) WR (片外数据存储器写选通信号输出端) RD (片外数据存储器读选通信号输出端) RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电 平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地 址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端 以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作 对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器 时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。 如果微处理器在外部执行状态ALE禁止,置位无效。 PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个 机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信 号将不出现。 EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH), 不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当 /EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于 施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 3. 主要性能指标 a.与MCS-51兼容 b.4K字节可编程闪烁存储器 c.寿命:1000写/擦循环数据保留时间:10年 d.全静态工作:0Hz-24Hz e.三级程序存储器锁定 f.128*8位内部 RAM g.32可编程 I/O线 h.两个 16位可编成定时器/计数器 i.5个中断源 j.可编程串行通道 k.低功耗的闲置和掉电模式 l.片内振荡器和时钟电路,时钟频率 1.2—12MHz;可有时钟输出 m.有强的位寻址\位处理能力 4. 89C51单片机的主要组成部分 (1) CPU CPU是单片机的核心部分,他的作用是读入和分析每条指令,根据每条指令 的功能要求,控制各个部件执行相应的操作。89C51单片机内部有一个8位的CPU, 它是由运算器和控制器组成。 运算器 运算器主要包括算术、逻辑运算部件ALU、累加器ACC、寄存器B、 暂存器YMP1、YMP2、程序状态寄存器PSW、布尔处理器及十进制调整电路等。运 算器主要用来实现数据的传送、数据的算术运算、逻辑运算和位变量处理等。 控制器 控制器包括时钟发生器、定时控制逻辑、指令寄存器指令译码器、 程序计数器 PC、程序地址寄存器、数据指针寄存器 DPTR和堆栈指针 SP等。控 制器是用来统一指挥和控制计算机进行工作的部件。它的功能是从程序存储器中 提取指令,送到指令寄存器,再进入指令译码器进行译码,并通过定时和控制电 路,在规定的时刻发出各种操作所需要的全部内部控制信息及CPU外部所需要的 控制信号,如ALE、PSEN、RD、WR等,使各部分协调工作,完成指令所规定的各 种操作。 (2)存储器 程序存储器 程序存储器用于存放编好的程序、 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 和常数。程序存储器 的寻址范围可以有 64KB与此相应, 程序存储器的编址自 0000H开始,最大可至 FFFFH。程序存储器的编址规律为;先片内、后片外,片内、片外连续,两者一 般不作重叠。对于片内有程序存储器的芯片,CPU的控制器专门提供一个控制信 号EA来区分,当EA为无高电平时,复位后单片机先执行片内有程序存储器中程 序,当程序计数器的内容超过OFFFH时,将自动转去执行片外程序存储器的程序 而当指令,当EA为低电平时,将强行执行片外程序存储器中的程序。此时多在 片外程序存储器中存放调试程序,使计算机工作在调试状态。这里应该注意的是, 片外程序存储器存放调试程序的部分,其编址与片内程序存储器的编址是可以重 叠的,就借EA的换接可实现分别访问。 在程序存储器中,有7个单元具有特殊用途。 0000H—0002H:是所有执行程序的入口地址,89C51单片机复位后,CPU总 是从0000H单元开始执行程序。 0003H:外部中断0入口。 000BH:定时/计数器0溢出中断入口。 0013H:外部中断1入口。 001BH:定时/计数器1溢出中断入口。 0023H:串行口中断入口。 002BH:定时器/计数器2溢出或T2EX端负跳变。 使用时,通常在这些入口地址处存放一条绝对跳转指令,使程序跳转到用 户安排的中断程序起始地址,或者从0000H起始地址跳转到用户设计的初始程序 上。 数据存储器 片内数据存储器有16位,寻址范围也可达64KB。故片外数据 存储器的容量可大到与程序存储器一样,其编址自0000H开始,最大可至FFFFH。 89C51单片机数据存储器有片内数据存储器RAM和特殊功能寄存器SFR:前者有 128个字节,其编址为00H—FFH,可以读、写任何数据;后者也占128个字节, 其编址位 80H—FFH;两者连续而不重叠。片内数据存储器的容量很小,常需扩 展片外数据存储器。如扩展少量片外数据存储器,容量不超过256个单元,则也 可按8位二进制数编址,自00H开始,最大可至FFH。 表4.2 不同存储器与所用指令及其寻址方式的对应关系 存储 器 访问性质 所用指令及寻址方式 依次取指执行程序 根据PC值自动访问 程序转移 程序转移类指令 ROM 用户访问 MOVC指令 访问整 个字节 主要为MOV指令,借工作寄存器间接寻址 片内 RAM 访问20H~2FH单元中 的某位 位操作类指令, 借位地址寻址 访问整个字节 主要为MOV类指令,直能借直接寻址字节寻址 SFR 访问SFR中的可寻址 位 位操作类指令, 借位地址寻址 如容量不大于256单 元 MONX指令,借工作寄存器间接寻址 片外 RAM 如容量大于256单元 MONX指令,借数据指针寄存器间接寻址 片内数据存储器又可分为工作寄存区、位寻址区、数据缓冲器区等三个区 域。 ①工作寄存器区 在低128B的内部RAM中,前32个单元(地址为00H—1FH)为通用工作寄 存器区,共分为四组(寄存器0组、1组、2组、3组),每组8个工作寄存器 由R0—R7组成,共占32个 单元。选用哪一组由程序状态字PSW中的RS1、RS0 这两位的设置决定,若程序并不需要四个4组工作寄存器,那么剩下的工作 寄存器可作一般的存储器来使用。 ②位寻址区 20H—2FH的 16个单元为位寻址区,该区的每个单元都被赋予了一个位地 址,每个单元 8位,共 128位。其位寻址范围为 00H—7FH。位寻址区的每一位 都可当作软件触发器,由程序直接进行处理。程序中通常把各种程序状态标志、 位控变量设在位寻址区。同样,位寻址区的RAM单元也可作为一般的数据存储器 按字节单元使用。 ③数据缓冲区 30H~7FH是数据缓冲区,用户RAM区,共80个单元。 (3)特殊功能寄存器 累加器A 累加器A是一个最常用的8位特殊功能寄存器,它既可用于存放 操作数,也可用于存放运算的中间结果。大部分单操作数指令的操作数就取自累 加器。用ACC表示A的符号地址。 寄存器B 寄存器B是一个8位寄存器,主要用于乘法和除法的运算。乘法 运算时,B中存放乘法,乘法操作后,乘积的高8位又存于B中;除法运算时, B中存放除数,出发操作后,B中又存放余数。在其他指令中,寄存器B可作为 一般的寄存器使用,用于暂存数据。 5. 定时器/计数器 ①主要特性 a.89C51单片机有两个可编程的定时器/计数器——定时器/计数器 0与定时器/计 数器 1,可有程序选择作为定时器用或作为计数器用,定时时间或记数值也可由 程序设定。 b.每一个定时器/计数器具有 4种工作方式,可用程序选择。 c.任一定时器/计数器在定时时间到或记数值到时,可有程序安排产生中断请求信 号或不产生中断请求信号。 ②定时/计数器 0和 1的控制和状态寄存器 特殊功能寄存器 TMOD和 TCON分别是定时/计数器 0和 1的控制和状态寄 存器,用于控制和确定各定时/计数器的功能和工作模式。 ③模式控制寄存器 TMOD TMOD用于控制 T0和 T1的工作方式和 4种工作模式。其中低 4位用于控 制 T0,高 4位用于控制 T1。其值可用程序决定,其格式如下: GATE TC / M1 M0 GATE TC / M1 M0 GATE位:门控位。 当 GATE=1时,只有 INTO或 1INT 引脚为高电平且 TR0或 TR1置 1时,相 应的定时/计数器才被选通工作;当 GATE=0,则只要 TR0和 TR1置 1,定时/计 数器就被选通,而不管 0INT 或 1INT 的电平是高还是低 TC / 位:计数/定时功能选择位。 TC / =0,设置为定时器方式,计数器的输入是内部时钟脉冲,其周期 等于机器周期。 TC / =1,设置为计数器方式,计数器的输入来自 T0(P3.4)或 T1(P3.5) 端的外部脉冲。 M1、M0位:工作模式选择位。2位可形成 4中编码,对应 4种工作模式, 见下表: 表 4.3 M1、M0工作模式 M1 M0 功 能 描 述 00 方式 0:13位定时器/计数器 01 方式 1:16位定时器/计数器 10 方式 2:具有自动重装初值的 8位定时器/计数器 11 方式 3:定时/计数器 0分为两个 8位定时/计数器,定时/计数器 1在此方式无实用意义 ④控制寄存器 TCON TCON用来控制 T0 和 T1 的启、停,并给出相应的控制状态,高 4位用于 控制定时器 0、1的运行;低 4位用于控制外部中断。格式如下: TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TF1:定时器 1溢出标志。 当定时器 1溢出时,由硬件置 1。使用查询方式时,此位做状态位供查询, 查询有效后需由软件清零;使用中断方式时,此位做中断申请标志,进入中断服 务后被硬件自动清零。 TR1位:定时器 1运行控制位。 该位靠软件置位或清零,置位时,定时/计数器接通工作,清零时,停止工 作。 TF0位:定时器溢出标志位,其功能和操作情况类同于 TF1。 TR0位:定时器 0运行控制位,其功能和操作类同于 TR1。 IE位:外部中断请求标志位。 当 CPU采样到 INT0非(或 INT1非)端出现有效中断请求时,IE0(或 IE1) 由硬件置 1,中断响应完成后转向中断服务时,再由硬件自动清零。 IT位:外部中断请求出发方式位。 IT0(IT1)=1为脉冲触发方式,后负跳有效。 IT0(IT1)=0为电平触发方式,低电平有效。 E.定时/计数器的初始化 89C51 单片机的定时/计数器是可编程的,因此,在进行定时或计数之前也 要用程序进行初始化。初始化一般应包括以下几个步骤: a.对 TMOD寄存器赋值,以确定定时器的工作模式; b.置定时/计数器初值,直接将初值写入寄存器的 TH0,TL0或 TH1,TL1; c.根据需要,对寄存器 IE置初值,开放定时器中断; d.对 TCON寄存器中的 TR0或 TR1置位,启动定时/计数器,置位以后,定 时/计数器即按规定的工作模式和初值进行计数或开始定时。 在初始化过程中,要置入定时/计数器的初值,这时要做一些计算。由于计 数器是加法计数,并在溢出时申请中断,因此不能直接输入所需的计数值,而是 要从计数最大值倒退回去一个计数值才是应置入的初值。设计数器的最大值为M (在不同的工作模式中,M可以为 8192,65536,256),则置入的初值可以这样 来计算。 计数方式时 X=M—记数值 定时方式时 (M—X)T=定时值 所以 X=M—定时值/T 式中,T为计数周期,是单片机的机器周期。 6. T0和 T1的 4种工作方式 方式 0:13位定时/计数器,TL1(或 TL0)的低 5位和 TH1(或 TH0)的 8 位构成,TL中的高 3位弃之未用。当 TL的低 5位记数溢出时,向 TH进位,而 全部 13位计数器溢出时使计数器回零,并使溢出标志 TF置 1,向 CPU发出中 断请求。 方式 1:16位定时/计数器,其逻辑电路和工作情况与方式 0几乎完全相同, 唯一的差别就是方式 1中 TL的高 3位也参与了计数。 方式 2:把 TL配置成一个可以自动重装载的 8位定时/计数器 方式 3:仅对 T0 有意义,将 16 位定时/计数器分成两个互相独立的 8 位定 时/计数器 TL和 TH, 7. CPU时钟电路 时钟电路用于产生单片机工作所需要的时钟信号。时钟信号可以有两种方式 产生:内部时钟方式和外部时钟方式。 ①内部时钟方式 89C51 单片机有一个高增益反向放大器,用于构成振荡器,引脚 XTAL1 和 XTAL2分别是此放大器的输入端和输出端。在 XTAL1和 XTAL2两端跨接晶体 或陶瓷振荡器,就构成了稳定的自激振荡器,其发出的脉冲直接送入内部时钟发 生器,见下图,外接晶振时,C1、C2 值通常选择为 30pF 左右;外接陶瓷振荡 器时,C1、C2约为47pF。C1、C2对频率有微调作用,震荡频率范围是1.2—12MHz。 为了减少寄生电容,更好的保证振荡器稳定可靠的工作,谐振器和电容应尽可能 安装的与单片机芯片靠近。 内部时钟发生器实质上是一个二分频的触发器,其输出信号是单片机工作所 需的时钟信号。 ②外部时钟方式 外部时钟方式是采用外部振荡器,外部振荡信号由 XTAL2端接入后直接送至 内部时钟发生器。输入端 XTAL1 应接地,由于 XTAL2 端的逻辑电平不是 TTL 的,故建议外接一个上拉电阻。 一般情况下,单片机时钟输入均采用内部时钟方式,外接一个震荡电路,本 系统采用内部时钟方式,晶振采用 12MHz,其电路如下图 4.7所示。 8. 复位电路 ①复位状态 计算机在启动时,系统进入复位状态。在复位状态,CPU 和系统都处于一个 确定的初始状态或成为原始状态,在这种状态下,所有的专用寄存器都赋予默认 值。其复位状态见下表。 表 4.5 计算机复位状态表 专用寄存器 复位状态 专用寄存器 复位状态 PC ACC B PSW SP DPTR P0—P3 IP IE 0000H 00H 00H 00H 07H 0000H FFH XXX0 0000B 0XX0 0000B TMOD TCON TH0 TL0 TH1 TL1 SCON SBUF PCON 00H 00H 00H 00H 00H 00H 00H XXXX XXXXB 0XXX 0000B ②复位电路 单片机复位电路包括片内、片外两部分,片外复位电路通过引脚加到内部复 位电路上,内部复位电路在每个机器周期 S5P2对片外信号采样一次,当 RST引 脚上出现连续两个机器周期的高电平时,单片机就完成一次复位。外部复位电路 就是为内部复位电路提供两个机器周期以上的高电平而设计的,AT89C2051 通 常采用上电自动复位和按键手动复位两种方式。上电复位电路在通电瞬间,在 RC电路充电过程中,RST端出现正脉冲,从而使单片机复位。 按键手动复位又分为按键电平复位和按键脉冲复位,按键电平复位是将复位 端通过电阻与 Vcc相连,按键脉冲复位是利用 RC微分电路产生正脉冲来达到复 位的目的。本系统设计时采用的是上电复位方式。 2.6 D/A、A/D转换器 2.6.1 D/A转换器 DAC0832的介绍 1、D/ A转换器 DAC0832的主要性能指标 分辨率 通常将输入数字量的最低有效位 LSB 变化 1 时所引起的输入电压的变 化△V称为分辨率,即△V=Vm/2,式中,Vm为输出电压的满度值;n为 D/A转 换器的二进制数的位数[20]。 建立时间 当 DAC输入数字量发生变换时,输出模拟电压也随之改变,但输出 电压变化到稳定值时相对于输入数字量的变化有一段延迟时间,这段延迟时间就 称为建立时间,用 ts表示。建立时间越短,DAC 的转换速度越块。通常用转换 时间来反映建立时间,如 DAC0832的转换速度为 100ns,DAC0832的转换速度为 0.1ms。 转换误差 转换误差可以用绝对误差△或相对误差 r 来表示。绝对误差△是指 DAC 的输入端加有固定的数字代码时,实际测得模拟输出值理论值之间的差。 相对误差 r是指绝对误差△与满度值之比,常用百分数表示。 电源抑制比 DAC 的输出电压的变化量与相对应的电源电压变化量之比定义为 电源抑制比。要求电源电压发生变化时,对输出电压的影响越小越好。 表 4.6 DAC0832的引脚 符号 引脚 功能 符号 引脚 功能 D0~7 7~4,16~13 数据输入线 ILE 19 数据允许信号,高电平有效 CS 1 输入寄存器选择信号,低电平有效 1WR 2 输入寄存器写选通信号,低电平有效 2WR 18 DAC 寄存器写选通信号, 低电平有效 XFER 17 数据传送信号, 低电平有效 VCC 20 电源输入线 IOUT1,IOUT2 11,12 电流输出线 AGND 3 模拟信号地 DGND 10 数字地 RFB 9 反馈信号输入线 VREF 8 基准电源输入线 2. DAC0832的引脚介绍 DAC0832有 20个引脚:ID7~ID0是 8位数据输入端;ILE是输入数据允许 锁存信号,CS与WR是第一级缓冲器选通信号,这三个信号决定了 LE1的电平, LE1位为高电平时,锁存器的输出随输入变化,LE1的负跳变使数据锁存进锁存 器,LE1 为低点电平时,锁存器的输出不在随输入端数据变化;XFER 与 WR2 是第二级缓冲器选通信号,它们决定了 LE2的电平,LE2在不同电平时对锁存器 的控制作用与 LE2一致;VREF是基准电压源输入端;IOUT1、IOUT2分别是电 流输出端 1和电流输出端 2;RFB是反馈信号输入端;AGND与 DGND是模拟 地与数字地,两者分开是一项常用的抗干扰措施。 DAC0832的两级缓冲器都是 8位锁存器,它具有二级锁存控制功能,当多 片同用时可实现多参数的同时输出:此时每片 DAC0832承担一种参数的 D/A转 换,各片第一级缓冲器的打开是有先后的,但各片的 XFER 与 WR2信号如分别 互连在一起,则多片 DAC0832开始 D/A转换和有模拟量输出的时间将基本一。 2.6.2 A/D转换器 AD574介绍 1. AD574 的特点及功能 AD574 是AD 公司生产的12 位逐次逼近型ADC , 它的转换速度为25μs , 转 换精度为0. 05 % , 可广泛应用在数据采集系统中[21]。由于AD574 芯片内有三态 输出缓冲电路, 因而可直接与单片机的数据总线相连, 而无须附加逻辑接口电 路。另外, 由于AD574 与CMOS 和TTL 兼容, 因而可构成简单的数据采集最小系 统。本文细讲述了AD574 的工作原理和硬件与软件设计方法。AD574 为28 脚双 列直插式封装, 其引脚分布如图1 所示。各主要引脚功能如下: 图4.8 AD574的引脚图 CS:片送。 CE:片启动。 R / C :读出/转换控制。 12 / 8 :数据输出格式选择脚。当12 / 8 为1( +5V) 时, 12 条数据线将同时行 输出; 当12 / 8 为0(0V) 时,为8 位双字节输出。 A0 : 字节选择线。在转换期间, 当A0 为0 时,AD574 进行全12 位转换,转换 间为25μs ;当A0 为1 时,进行8 位转换,转换时间为16μs。在读出期间, 当A0 为0 时, 输出高8 位; 当A0 为1 时, 输出低4位,并以4 个0 作为 尾随的4 位以补足8 位,即当两次读出12 位数据时,应遵循左对齐原则。 STS:输出状态指示引脚。转换开始时,STS 为高电平,并在转换过程中保持高电 平。转换完成后,STS返回到低电平。STS 可以作为状态信息被CPU查询;也可 以在它的下降沿向CPU发出中断请求, 以通知A /D 转换已完成,同时CPU可 以读出转换结果。 2.6.3 单片机 AT89C51和 AD574 的接口原理 AD574 和单片机系统的基本组成主要有单片机、A / D 转换器和计算机接口。 其中单片机是系统的核心部分, 主机通过接口启动单片机工作, 以使CPU资源向 其它请求开放。单片机发出控制信号以启动A /D 转换器进行采样, 然后将转换 结果存入双端口SRAM[22]。当RAM中的数据达到一定数量时, 单片机向计算机发出 中断请求。主机接到请求后进入中断服务程序,并向单片机发出命令,以决定是否 继续采样,同时将SRAM内的数据读入内存。系统的硬件设计在连接上应主要考虑 三总线(控制总线、地址总线、数据总线) 的连接。图2 所示是一个A/ D 转换器 与单片机的AT89C51接口电路。其中,AD574 是1 个完全的单片式12位逐次比较型 A /D 转换器, 它带有可以直接与8 位或16 位总线接口的三态缓冲器,因而不需 要再加锁存器。由于AD574 片内自带高精度参考电压和时钟, 因此不需要外部电 路和时钟就可全速工作, 是一种比较常用的中速A / D 转换芯片。AD574 完成1 次全12 位转换最多需要35μs ,适合于转换速率低于30kb /s 的应用领域。 AT89C51 单片机是MCS - 51的典型代表。由于该接口系统要求各路信号测量同步, 即同时启动各A / D 转换器进行转换[23]。因此, 8031必须完成同时启动、分别读 出转换结果的任务。 现将AT89C51 的主要任务分述如下: (1) 接收主机的采样命令。即利用P1. 7 口并采用查询方式等待主机发出采样命 令, 当其为低电平时,启动采样过程。 (2) 启动采样。AT89C51 利用P2. 7 经过反相后控制AD574 的读出和启动转换控 制线R / C , 并再经过与非门和反相器来控制片选线CS(低电平有效) 。当P2.7 为高电平时,所有AD574 都处于待启动状态, 即设定各AD 的启动地址均#FFFFH。 AT89C51 的WR、RD 经过与非门接到AD574 的使能端,任意有效信号都会使能AD。 (3) 读取并存储转换结果。所有AD 转换结束与否的判断均由P1 口的低4 位来进 行,当低4 位均为低电平时, 表示所有转换都已结束。需要对转换器分配地址, 以逐一读出转换结果。进行读取操作时,地址应为对应存储器单元的操作地址, 因为存储器单元地址的末尾2 位数依次为00、01、10、11 , 因此,对单元操作也 就是表示对相应编号的A / D 转换器进行了读操作。这种方式可以使系统所能操 作的A /D 数达10 片之多。 (4) 向主机发出中断申请。在当前存储区满后,要向主机发出中断请求, 以向主 机传送数据。因为每一存储区为1kB , 所以, 利用存储数据时, P2.2 的状态可 以判断是否已被完全占用。在图2 中,由于AD574 片内有时钟,故无需外加时钟信 号。该电路采用单极性输入方式, 可对0~10V或0~20V模拟信号进行转换。转换 结果的高8位从D11~D4 输出,低4 位从D3~D0 输出,并且直接和单片机的数总 线相连。转换遵循左对齐原则,D3~D0 应接单片机数据总线的高半字节。为了 实现启动A /D 转换和转换结果的读出, AD574 的片选信号CS 由地址总线的次低 位A1( P0. 1) 提供, 在读写时,A1 应设置为低电平。AD574 的CE 信号由单片机 的WR 和A7( P0. 7) 经一级或非门产生。R /C 则由RD 和A7 经一级或非门提供。 可见在读写时,A7亦应为低电平。输出状态信号STS 接到P3. 2 端可供单片机查 询判断A / D 转换是否结束。AD574 的A0由地址总线的最低位A0( P0. 0) 控制, 可用于实现全12 位转换,并将12 位数据分两次送入数据总线。 图4.9 单片机AT89C51与AD574的接口图 2.6.4 存储器的选取 在数字化语音存储与回放的设计中可用AT29C040 Flash存储器来存储时间, AT29C040具有在线可擦写、非挥发性、信息保存可靠、存储容量大等优点,每 片的容量为 512K字节,它是国外最新产品,该产品的读写一般与 RAM相同, 由于 89C51一般能寻址 64K字节[24]。所以需要利用 P1口进行地址扩宽,本系统 中另加三根线(P1.1、P1.2、P1.3),作地址线用,使寻址空间扩展到 512K字节, 并分别采用分而管理方式分配内存,即在总线输出地址之前,先对外加的 3根高 位地址选页,然后在所选页中进行输入输出操作。AT29C040读取时间仅为 70ns, 单一+5V电源,双 8k字节的引导区,内部程控定时器,硬件和软件数据保护功 能,快速扇出程序周期 10ms,低功耗:待机为 100uA,启动工作为 50mA,10000 次擦写次数。输入输出全兼容 CMOS和 TTL电路[25]。 图 4.10 AT29C040引脚如下 2.7 对数字化语音存储与回放系统的 ( ) ( )sffff /sin// pp 校正 首先对频域中的 ( ) ( )ss ffff /sin// pp 函数进行分析, ( ) ( )ss ffff /sin// pp 在频 域 30~4030H范围内的曲线如图所示。由图可见,它近似于阻带内增益变化极为 缓慢近于恒定的高通滤波器。进一步分析可知,该曲线在频率很高处有大幅度的 下降,故可用带通滤波器来拟合该曲线,由于受单片机数据运算处理能力 ( )MPS5.0 的限制,数字滤波不易实现,故这里采用硬件滤波,滤波电路如图所 示。 图 4.11 函数分析图 图 4.12 滤波电路 该滤波网络采用简单的无源滤波网络即可实现,图中 1C 、 1R 构成初始放大 倍数近乎恒定的网络.观察到 ( ) ( )ss ffff /// pp 在频率较高处有大幅度的衰减,故该 网络还应满足在频率较高处的衰减特性,考虑到对于声音信号,过多的高频分量 只能增加噪声,所以后接 2R 、 2C 构成低通滤波器,截止频率设在 3.4KHz ± 100Hz。 该网络在频域由 30Hz起,增益缓慢增大,到 3.4kHz处幅频。 3程序设计: 单片机 AT89C51 通过片选方式读 A/D 转换数据、写数据存储器以及将数据 送入 D/A转换器。录音时 AT89C51通过定时器 0T 控制采样频率。定时将 A/D转 换数据存入数据存储器中。放音时,单片机 AT89C51 通过定时器 0T 控制,定时 的将数据从数据存储器中取出送往 D/A转换器进行数摸转换。 图 5.2 定时器 1中断服务程序流程图 定时器 1中断入口 读取定时器服务标志位 00H 00H 00H 00H 以 方 式 0 录 音 以 方 式 1 录 音 以 方 式 2 录 音 以 方 式 3 录 音 等待返回 图 5.3 键盘中断程序流程 键盘中断入口 读键值 08H 08H 08H 08H 08H 其他 设 置 方 式 0 录 音 标 志 设 置 方 式 1 录 音 标 志 设 置 方 式 2 录 音 标 志 设 置 录 音 回 放 标 志 开定时器 1中断 置 位 自 动 录 音 标 志 位 返 回 等 待 主程序如下: BZ1: EQU 20H BZ2: EQU 21H BZ3: EQU 22H MOV 20H, #00H MOV 21H, #0
本文档为【语音信号采集与回放系统设计2】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_593409
暂无简介~
格式:pdf
大小:351KB
软件:PDF阅读器
页数:34
分类:互联网
上传时间:2010-09-05
浏览量:29