




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于单片机的数码录音与播放系统 学生: 指导教师:内容摘要:随着语音处理技术在工业、交通、通信等不断应用和消费类电子不断繁荣,人们对具有数码录音与播放功能的产品的需求也在不断的增加。为了更好的满足人们日常生活、工作,选用凌阳单片机为核心,通过麦克风接收语音信号,使用存储器来存储语音信息从而实现录音和播放功能。基于该功能的系统应用于录音较长的场合。如自录语音提示、温度检测储存播放系统等方案。本次设计的硬件电路主要包括MIC录音电路、DAC放音电路、按键电路、复位与时钟电路、外部W29C040储存器扩展电路组成。把语音信号经过搭建电容、电阻,送入前置放大器和内部集成的自动增益(AGC)处理,作为录
2、音部分;而DAC放音部分,经过语音集成放大器SPY0030A放大,再接上扬声器,实现了语音的录放功能。芯片体积小、集成度高、易扩展、中断处理能力强等特点。关键词:凌阳单片机 W29C040储存器 数码录音与播放The digital voice recording and playing system based on SCMAbstract: With speech processing technology in the industrial application such as traffic communication and consumer electronics rising
3、prosperity, people on the demand of the products with digital recording and playback functions have been increased in order to better meet Peoples Daily life work, choose sunplus singlechip as the core, through a microphone receives the voice signal, using the memory to store the voice information s
4、o as to realize the recording and playback functions based on the function of the system is applied in the tape longer occasions such as the recorded voice prompt temperature detection store broadcast system.The design of the hardware circuit mainly includes the MIC recording DAC playback circuit re
5、set button circuit and clock circuit external W29C040 storage extended circuit of the speech signal after structures, capacitance resistance, into the preamplifier and internal integration automatic gain (AGC) processing, as the recording part; And sound part is put DAC, SPY0030A voice integrated am
6、plifier amplification process, then connect the speaker, to realize the function of voice recorders chip small volume high integration easy extension interrupt handling ability.Keywords: Sunplus singlechip W29C040 packet digital recording and playback 目 录前言11 单片机的数码录音与播放的概述11.1 录放音的背景和意义11.2 录放音的发展前
7、景21.3 录放音的设计思想22 单片机的录放音方案选择22.1 单片机的发展22.2 方案选择33 单片机的录放音硬件设计现43.1 凌阳SPCE061A单片机概述43.1.1 凌阳SPCE061A单片机介绍43.1.2 凌阳SPCE061A单片机性能43.1.3 凌阳SPCE061A单片机的内部结构53.2 凌阳nSP内核结构63.3 系统时钟和复位电路63.3.1 时钟电路63.3.2 锁相环电路73.3.3 复位电路73.4 按键电路83.5 MIC录音电路83.6 DAC放音电路93.7 外部储存器W29CO40电路103.8 单片机与外部储存器连接电路134 单片机的录放音软件设计
8、144.1凌阳音频的介绍144.1.1音频概述144.1.2数字音频的采样和量化144.1.3音频格式144.1.4 语音压缩编码基础144.2 凌阳音频编码算法154.2.1 压缩编码的标准164.2.2 压缩分类164.2.3 常用的音频形式和压缩算法164.2.4 程序接口介绍174.2.5 相关API介绍174.3 录音MIC设计流程图204.4 DAC放音设计流程图214.5 单片机与外部储存器系统软件设计225 系统调试和功能实现235.1 硬件调试245.2 软件调试245.2.1 SPCE061A 的开发方式245.2.2 开发环境256 结束语25附录1:系统原理图27附录2
9、:源程序28参考文献:3839基于单片机的数码录音的播放系统前言随着科技发展,社会的进步,语言的处理在各领域变得越来越重要。生活中也变得广泛,例如智能手机,电脑诸如此类变得很多。过去,我们用磁带来对我们需要的信息进行记录,储存。具有这样功能的电子产品很多,但它们的体积都比较大,给我们带来诸多不便。而单片机录音系统帮我们改变了这一点,它体积小,以数字电路为基础与微处理器连接,用数字语音电路实现录音播放的功能。目前的数字录音系统,只能简单的进行数据采集,播放和储存,目前对设备储存的需求越来越大,所以在未来语音编码会变得越来越重要,方便减少储存空间的需求。本次设计是设计一套包含数码录音与播放的单片机
10、系统。以凌阳16位单片机SPCE061A为核心与W29C040外部储存器相连达到实现的目的。系统包含DAC放音电路,MIC录音电路,复位与时钟电路,按键电路和W29C040储存器扩展电路。通过以上设计,可以达到录放音效果。1 单片机的数码录音与播放的概述伴随着然门对语言处理的不断研究,越来越多的数码录音产品受到人们的青睐。从使用磁带到现在的微处理器外加语音芯片的技术成长,使语音更加趋向完美。国内外研究的不断成熟,预示着语音功能的重要性。因此,基于单片机的数码录音与播放系统变得非常有意义。我们可以通过凌阳单片机SPCE061A和外部储存器W29C040来实现。1.1 录放音的背景和意义随着科学技
11、术与经济的发展,语音的录音与播放越来越普遍。诸如,学校,公安,铁路等单位对语音的需求量也变得更多。目前,应用在家用电器、生活娱乐、安保系统、办公自动化、多媒体系统等等的语音录放音技术如果能在适当的时候实施其功能对系统发出警告、工作状态、提示等信息,不但提高了通信能力、人们的生活质量还给我们带来了方便。在研究录放音的过程中,过去人们用磁带。用磁带进行语音录放储存的方法已经有很长时间了,介于这种方式的产品随处可见,但体积大,使用范围小。而数字录音却是将模拟信号转换成数字信号,并储存在相关介质中的一种数字语音处理技术。这种技术具有占用空间小、保存时间长、录音时间久、效率高等优点。单片机凭借其低电压、
12、低功耗、稳定性高等特点广受研究者与消费者的喜爱,并被广泛应用在诸多领域,充分实现了其语音录放的价值,具有很高的发展前景。1.2 录放音的发展前景日常生活中指示灯、按键开关、广告显示屏,我们随处可见。相较语音无疑没有办法更有效更人性化的跟我们实现互动。语音对话方式是我们发展的最终目标,但距离真正意义上的对话方式还相距很远,还有待继续努力突破。我相信随着信息的发展,网络通信的不断完善等一系列相关技术的发展与实现,这一梦想的实现总有一天会成真。尽管语音系统集成电路发展历史较短,但其凭借电体系庞大、应用范围广、发展前景广等优点发展迅速,成为新一代宠儿。目前,语音系统集成电路从过去单一的功能向微型化、多
13、功能、智能化发展。伴随着微电子技术的突飞猛进,语音合成技术也受益匪浅,并产生很多新领域的新技术,朝着大容量、优音质、高智能、高灵活性方向发展。而凌阳单片机SPCE061A的语音系统符合以上发展前景。1.3 录放音的设计思想基于单片机的数码录音与播放系统的设计,是基于单片机为核心,选择在语音系统方面优秀的凌阳单片机,无需语音芯片。用凌阳单片机为核心,并连接外部储存器W29C040来扩展其存储空间,实现数码录音和播放功能。设计MIC录音电路时,先分析其原理,通过MIC电路采集语音资源把语音信号转换成电信号,然后采集数据,将模拟数据信息变成数字信号,这是AD过程,然后将信号输送到SPCE0611A单
14、片机的前置放大器,通过前置放大器的数据信息到达其内部增益控制电路,并自动跟踪前置放大器音频信号的电平,根据跟踪结果进行自动调节,达到平衡。由于凌阳单片机内部储存有限,所以需要一款外部存储器来存储此数据信息,达到更长的录音时间,因而选用外部存储器W29C040。设计DAC放音部分时,因为语音资源储存到储存器当中时,需要把语音资源从储存器W29C040取出解压,进行数据解码,在定时中断的情况下进行数模转换,录放音过程中需要用定时器进行均匀采集数据,模拟语音信息滤波、放大,并用扬声器进行放音。关于程序设计,使用汇编语言对录音部分进行编程,使用C语言对放音部分进行编写,整体过程需要使用凌阳单片机的库函
15、数、相应的API应用程序接口来编程。2 单片机的录放音方案选择随着集成电路不发展和半导体技术的不断提高,单片机的功能也在逐渐加强,其在社会的需求量也在不断的增加。单片机的种类繁多,所以需要选择正确的单片机用来实现录放音的功能。2.1 单片机的发展在人们的日常生活和现代社会的生产活动中,单片机有着其广泛应用。单片机价格低、功能强、价格低、使用灵活等特点,具有非常明显的优势和广泛的应用前景。显然现代电子技术领域包含单片机这一非常重要的技术。单片机(One Chip Microcomputer或 Single Chip Microcomputer)将CPU和具有一定容量的随机存储器(RAM)、只读存
16、储器(ROM)、定时器/计数器(TIMER/COUNTER)、并行输入输出接口和串行通信接口等多个功能部件利用半导体集成技术集成一个芯片上,形成具有完整计算机功能的大规模集成电路,并具备独立的指令系统智能器件。就是将一台微型计算机的基本功能在芯片上实现。利用单片机作为控制中心,简单控制对象,无需增加外部设备;而复杂的控制对象,也只需扩上一些器件在单片机的基础上就能完成。随着计算机和单板机的发展,单片机在智能测控系统中发展起来。单片机处理能力得到了提高是伴随着数据传输能力的提高,运算能力的提高和处理系统指令速度的提高;程序加密和储存容量加大使存储器更加优化;接口编程能力增加改进了接口、增加并行口
17、的驱动能力;采用外围集成电路和串行总线结构使结构得到简化;再加上体积不断减小和降低功耗。综上所述,单片机的性能得到不断地提高和完善。并且单片机的市场需求量也在日益增长。时至今日,在后PC时代,基于嵌入式系统单片机得到广泛使用。伴随着微电子技术的不断发展,单片机的功能也越来越强大,电子系统设计也进入片上系统(soc, system on chip)时代。凌阳公司研发的nSP单片机就是基于SOC的新型数/模混合的系统芯片。该系统芯片具有集成度高,功能全面,数/模混合,易扩展等特点,也顺应了单片机的发展趋势。2.2 方案选择在工业技术不断革新和集成电路大规模的影响下,单片机片内不断扩展外围电路功能和
18、片上系统(SOC)发展,也包含数字逻辑电路部分,既有数据采集和控制系统常用模拟部件,也包含数字逻辑电路部分,实现了应用系统在片内的集成。凌阳公司研发的nSP单片机就是基于SOC的新型数/模混合的系统芯片。以nSPCPU为内核,根据功能模块需求为选择合适的结构。对不同应用需求和不同领域,形成不同体系,进而实现更低成本和更强的功能的优化,体现凌阳16位单片机基于SOC的结构特点。凌阳16位单片机能够提供了特殊指令,并在应用添加上DSP功能,充分在语音处理能力方面有发挥着它的优势。 80C51方案:51单片机是目前我国应用最广的单片机,并且我们学习也是51单片机。虽然它在功能上也在不断提高,但51单
19、片机的DSP处理能力方面比较弱,处理复杂数据的能力的有待提高,集成化程度不高,处理复杂数据的能力的有待提高。 凌阳方案:凌阳单片机集成度高,内部集成了2路DA转换和8路的AD转换,该芯片具有DSP处理能力, 而且AD转换中专门用于声音的数/模转换,并且凌阳单片机在语音的处理能力方面有优势。W29C040的储存器是台湾华邦公司生产的W29C040的储存器是一款FLASH储存芯片,利于它储存的语音数据资源,可以播放几分钟的声音。凌阳16位单片机易学易用的,包含一套指令系统和集成开发环境效率较高。此环境提供了语音录放的库函数,只要了解库函数的使用,很容易完成语音录放,并且支持C语言,可实现C语言与凌
20、阳汇编语言的互相调用。凌阳是51单片机和DSP之间的优劣互补。通过比较,选用凌阳单片机SPCE061A和外部存储器W29C040来实现基于单片机数码录音与播放系统的设计。3 单片机的录放音硬件设计现根据选择的方案,设计一套具有录放音功能的系统,选用凌阳单片机因为具有体积小、集成度高、易扩展等优点。为了实现录放音的功能,需要对其进行硬件的设计。3.1 凌阳SPCE061A单片机概述3.1.1 凌阳SPCE061A单片机介绍随着集成电路功能日渐成熟,单片机也由单纯的控制扩展到控制处理、数据处理以及数字信号处理(DSP)等领域。凌阳单片机SPCE061A应运而生。SPCE061A是继nSP系列产品S
21、PCE500A等之后凌阳科技推出的16位微处理器。凌阳科技设计的nSP单片机具有集成度高、可靠性好、易于扩展、体积小、中断处理能力强等特点,并且集成在一个芯片里,内部采用总线结构设计,提高了可靠性和抗干扰能力,还减少了各功能部件之间的连线。凌阳单片机内嵌32K字的FLASH存储器,具有较高的处理能力,使nSP单片机可以简单、快速地处理复杂的数字信号。3.1.2 凌阳SPCE061A单片机性能SPCE061A单片机的主要性能: 电源电压范围较宽:2.6V-5.5V 系统时钟范围较广:0.32MHZ-49.15MHZ 内部设置32K字FLASH和 2K字SRAM 中断处理能力强 具有可编程音频处理
22、功能 两个16位可编程T/C 两路10位数/模转换(DAC)输出通道 七通道10位电压模/数转换器(ADC) 内部设置自动增益控制(AGC)电路和MIC麦克风放大器 内部设置在线仿真ICE接口3.1.3 凌阳SPCE061A单片机的内部结构图3.1.3-1和图3.1.3-1是SPCE061A单片机内部模块结构。主要包含有模/数转换器(ADC)、数/模转换(DAC)、WATCHDOG、定时器/计数器、定时器/计数器T/C(脉宽调制输出PWM)、并行输入输出I/O、设备串行口SIO、低电压检测LVD、异步串行通信口等。ADC 并行I/ODACnSP内核WATCHDOGAOPWM输出串行口低电压检测
23、和复位RAM&FLASHIRSIOT/C图3.1.3-1 SPCE061A内部模块结构图图3.1.3-1 SPCE061A的内部结构图3.2 凌阳nSP内核结构凌阳SPCE061A单片机采用凌阳nSPTM内核,nSPTM内核主要由算术逻辑运算单元、总线、中断系统及堆栈、寄存器组等组成。nSPTM算术逻辑运算ALU具有出色的运算能力,在内积运算、带移位操作的算术逻辑运算、16位基本的算术逻辑运算、以及应用于数字信号处理的16位乘法运算等运算出色;而寄存器组有专业寄存器和通用寄存器之分,由8个16位寄存器组成,。专用包括SP、BP、SR、PC,通用包括R1R4。3.3 系统时钟和复位电路3.3.1
24、 时钟电路振荡是指单片机内部具有振荡电路和选频放大器,若振荡信号从外接晶体输入端输入,单片机就会振荡。时钟电路从输入端输入和输出端引到芯片外部构成。晶振选用频率32768Hz,两端分别连接20p的接地电容,并连接单片机OSCI、OSCO两个引脚上。如图3.3.1-1所示:图3.3.1-1 时钟电路图3.3.2 锁相环电路锁相环:倍频系统提供的实时时钟基频(32768Hz),调整到20.480 MHz、24.576 MHz 、32.768 MHz、40.96 MHz、49.152MHz,作为系统时钟FOSC。24.576 MHz是系统默认的自激振荡频率位。锁相环电路是由电路和电容组成。如图3.3
25、.2-1所示:图3.3.2-1 锁相环电路图3.3.3 复位电路复位即使单片机的内存值和寄存器变成初始值的操作。RES_B加一个低电平就可以使凌阳SPCE061 A单片机的复位电路复位。如图3.3.3-1所示:图3.3.3-1 复位电路图3.4 按键电路按键电路的语音录放通过产生中断来控制,其电路包括播放、录音、暂停、三种功能。如图3.4-1所示:图3.4-1 按键电路图3.5 MIC录音电路凌阳SPCE061A单片机的A/D转换器包含8个通道, MIC-IN录音输入通道用于对语音进行采样。MIC将语音信号转换成电信号,直流部分被隔直电容隔掉,再输入SPCE061A的内部前置放大器。AGC是S
26、PCE061A单片机内部自动增益控制电路能监视前置放大器输出的音频信号电平随时跟踪。AGC会根据输入电平信号的变换而自动进行增大或减小放大器的增益,确保输入A/D的信号保持在最佳电平。VMIC是麦克风电源(+3.7V),它经过电阻、电容滤波加在R4、MIC、R8三者串联的通路中。MIC可以理解为随声压变化的电阻,MIC的1、2引脚之间的电压差随声音的大小和频率变化。然后这个具有直流分量的两个信经过两个电容就加到061A的MICP和MICN两个引脚,经过061A的自动增益放大后送入AD转换器,生成数字量的音频电压值。MIC录音输入电路如图3.5-1所示图3.5-1 MIC录音电路图3.6 DAC
27、放音电路取出外部储存器W29C040中储存的语音数据,通过解码以8kHz的速率进行D/A转化输出,电容滤波后,恢复原始语音数据波形,并经过SPY0030进行语音放大处理。DAC恒流源的变化范围为0-3mA是可有程序控制的恒流源输出。把DAC的J2与引脚1相连,并连接一个R10的电阻接地,从而为程序产生可变的恒压源,最大电压3V。外接电阻小于1K,恒流源可以短路。为不影响恒流源的输出精度,电阻应小于1K时,恒流源只能工作在0-1.5mA范围。连接2、3引脚,R9产生恒压。DAC输出音频信号,高频阶梯信号被C25过滤,保留音频信号,再经过C23隔直,隔离音频信号当中的直流分量,交流信号经过音频放大
28、器SPY0030阻抗变换输出,即可驱动喇叭发声。如图3.6-1所示:图3.6-1 DAC放音电路图3.7 外部储存器W29CO40电路科技的发展带动所有电子产品,同样语音功能的电子产品也得到了广泛的应用。但语音数据单靠芯片自身的容量显然不够,需要外部储存器,W29C040就是其中一款。W29C040可以储存凌阳格式的语音资源,长达几分钟,适用于各种需要录音较长的需求。系统提供W29C040的读写模块,该模块可以应用于W29C040同系列的相关的芯片中。n W29C040的介绍W29C040DIP封装芯片有32脚,电压为5V,内部512KI*8位的快速闪存,它的结构为256kb为一页,单页擦写时
29、间为5ms,整片擦除时间为50ms。如表3.7-1所示:表3.7-1 W29C040管脚表管脚名称功能描述A0-A18地址的输入口DQ0-DQ7数据的输入输出口#CE片选脚#OE读脚#WE写脚VDD5VVSS地n W29C040读写时序图u 读时序图W29C040读的时序如图3.7-1所示:图3.7-1 读时序图u 在数据保护模式下的页写时序图数据模式下的页写时序如图3.7-2图3.7-2 写时序图u 写结果判断时序图结果判断如图3.7-3图3.7-3 结果判断图n W29C040写、擦除流程图凌阳SPCE061A单片机若要使用闪存,必须先在闪存编程前,对其进行擦除。当给出的地址在某个模块地址
30、范围内,当给出的地址向命令用户接口写入模块擦除命令时,相应的模块就被擦除。u 片擦除流程图和去掉写保护流程图去掉写保护流程如图3.7-4和擦除流程如图3.7-5 图3.7-4 写保护流程图 图3.7-5 擦除流程图u 页写流程图和写结束判断流程图 页写流程如图3.7-6和写结束判断流程如图3.7-7 图3.7-6 页写流程图 图3.7-7 写结束判断流程图3.8 单片机与外部储存器连接电路SPCE061A单片机与W29C040外部储存器的连接图如图3.8-1所示:图3.8-1 外扩连接图4 单片机的录放音软件设计4.1凌阳音频的介绍4.1.1音频概述我们日常所说的人类正常听到声音的频率范围在2
31、0Hz-20kHz,即是我们说的音频范围。在这个声音的范围内,可以分为音乐信号、声音波形信号和语音信号三种。其中自然界中的声音是波形信号,是声音数字化的基础。通常语音也可以用波形声音表示,而波形声音表示不出得声音信号,因为语音是一种抽象的信号,是语音的载体,是社交的一种工具。而至于音乐更是高级的声音信息,它虽然不能符号化说有声音信息但是使声音符号化。4.1.2数字音频的采样和量化因为音频信号是连续的信号,是模拟的信号,而计算机所采用的示数字算法,所以需将模拟的音频信号进行数字化处理。数字化模拟信号有很多种方式,如今,最常用的一种方法是采用A/D算法进处理信号的波形,可以通过波形编码、参量编码等
32、方式实现。数字化音频模拟信号分为两个方面,分别是采样和量化,也包括音频设备质量、声道的数目等。4.1.3音频格式音频文件通常分为声音文件和MIDI文件两类。l 声音文件:通过声音录入设备进行录制原始的声音信号,直接记录了真实的二进制数据文件比较大。声音文件的格式包含的形式很多,有WAVE文件、AIFF文件、AUDIO文件、MPEG文件、REALAUDIO文件等,现在使用最多是WAVE文件和MPEG文件,其他文件也经常使用。l MIDI文件:MIDI是跃起数字接口的英文缩写,它是一种音乐演奏指令序列,相当于乐谱,可以利用声音输出设备或与计算机相连的电子乐器进行演奏,由于不包含声音数据,文件较小。
33、相对于保存真实数据的声音文件,MIDI显得更加紧凑。4.1.4 语音压缩编码基础语音压缩编码中的数据量的表达式是指:数据量=(采样频率量化位数)/8 声道数目。压缩编码的目的是通过对数据的压缩,达到高效率储存和数据转换的目的。即是在保证一定音质的情况下,以最小的数据量来表达和传送声音数据。实际上音频数据量比较大,直接进行传输和储存是比较不现实的,我们要对信号趋势的预测和冗余信息处理进行数据压缩,这样可以减少对资源传输的时间的和对储存更多的语音数据。采用压缩编码的技术可以既保证对音频的原始声音的保持同时也保证了对数据传输和储存容量的要求。比如没有经过压缩编码的一张CD录制一分钟的歌曲需要占用Mb
34、,如果对原始数据进行压缩编码,先对其采样后进行编码,就可以把它压缩到5.5Mb,储存容量减小了一半,采用不同的编码技术可以压缩到更小。常见的几种音频压缩编码如下:l 波形编码所谓波形编码是把时间域信号直接变换为数字代码,使现在生产的波形保持原来波形的图像。波形编码的原理是在时间轴上对模拟语音信号按一定的速率抽样,然后按幅度样本量化、编码。译码则是将数字序列经过译码和滤波恢复成模拟信号,是编码的逆过程。特点就是语音质量高、数码率高,适合高保真音乐和语音场合。如脉冲编码调制PCM、差值脉冲编码调制DPCM、自适应传输编码ATC等。l 参量编码参量编码是叫声源编码,是将信源信号在频率域或者其他正交变
35、换域提取特征参数,并将其变成数字代码进行储存和传输的过程。它是在同原始语音数据有很大变化的情况下,对语音信号进行提取特征参数和编码重建语音信号,译码是其逆过程。参量编码的比特率可以压缩到24.8kb/s,甚至更低,但是语音质量只能达到中等,特点就是压缩比大,计算量大、传输时间短、储存容量大,音质一般。如线性预测编码LPC等。l 混合编码混合编码是将波形编码技术和参量编码技术结合使用的技术。计算机的发展为语音编码技术的研究提供了强有力的工具,超大规模的集成电路也为语音编码技提供了技术支持。混合编码是将波形编码和参量编码结合起来,结合了参量编码和波形编码的优点,即波形编码的语音质量高、数码率高的特
36、点和参量编码的储存空间和传输时间短的特点,当然也克服了它们的缺点。如多脉冲激励线性预测编码MPLPC、码本激励线性预测编码CELP等。总之,音频压缩编码技术发展趋势:l 降低数据率,提高压缩比,用于廉价的低保真场合。如电话、机器提示音等。l 实现高保真复杂的压缩技术,用于对高保真需求较多的场合。如CD、音乐等。而凌阳单片机的录放音的编码/解码是靠调用库函数来完成的,我们只需完成数据的存入和读出即可。4.2 凌阳音频编码算法4.2.1 压缩编码的标准不同的频率影响着不同的编码技术标准的音频质量。凌阳音频压缩算法处理的语音信号频率范围为200Hz3.43.4kHz。压缩编码标准如表格3.1所示:
37、表4.2.1-1 压缩编码标准信号类型频率范围/Hz采样频率/kHz量化精度/位电话话音200340088宽带音频5070001616调频广播2014k37.816高质量音频2020k44.1164.2.2 压缩分类压缩一般分为有损压缩和无损压缩两类。无损压缩一般是指磁盘文件,压缩比比较低(2:14:1);有损压缩是指语音、视频文件,因为要求信息量大,压缩比比较高(100:1)。凌阳音频压缩算法根据不同的压缩比可以分为以下几种(以压缩8KB 16位的WAVE文件为例):SACM_A2000压缩比为8:1,8:1.25,8:1.5;SACM_S480的压缩比为80:3,80:4.5;SACM_S
38、240的压缩比为80:1.5。音质排序为:A2000S480S240。4.2.3 常用的音频形式和压缩算法l 波形编码波形编码采用带编码技术的压缩算法SACM_A2000。特点为语音质量高,编码率高,适用于高保真语音和音乐。l 参量编码参量编码采用压缩算法SACM_S240。特点为压缩比高,计算量大,音质一般,价格便宜。l 混合编码混合编码采用压缩算法SACM_S480。特点是弥补了波形编码和参量编码的缺点,当然也保留了它们的优点。除此之外,还具有FM音乐合成式即SACM_MS01。凌阳单片机SPCE061A是16位的单片机,具有DSP功能,有很强的数据处理和最高时钟频率可以达到49MHz,具
39、有运算速度高等一些列又是,这无疑为语音的录制、播放、合成和识别带来了不可逾越的优势。在凌阳单片机当压缩算法中,SACM_A2000、SACM_S480、SACM_S240适合用于录音,可以应用于语音提示;而DVR算法则可以用来录音、放音,本次设计就是选择DVR算法来编程设计的。4.2.4 程序接口介绍语音在社会生活当中占据非常重要的地位,它可以为我们生活带来乐趣。单片机对语音的控制如录放音的技术广泛的应用到我们的生活当中,语音处理分为A/D编码处理、存储解码处理和D/A转换等,如图4.2.4-1A/D转换编码解码D/A转换存储图4.2.4-1 语音处理由于MIC麦克风生成的WAVE文件占用的储
40、存空间量比较大,对于单片机来说存储这样大容量的文件是不现实的,为了避免单片机的不足之处,凌阳公司提出了一个解决方案,那就是建立了SACM-LIB库及相应的应用程序接口API函数。将A/D编码、解码、储存和D/A转换成相应的模块,每个模块都有API,我们只需知道每个API应用程序接口的功能和其参数内容,然后调用该API函数即可实现其功能。SACM-LIB目前主要有两个库函数sacmv25.lib和sacm32.lib。4.2.5 相关API介绍SACM-DVR具有语音的录音和播放的功能,采用的算法是SACM_A2000,录音时采用8K采样率和16K数据率来获取语音资源,经过A2000压缩后储存在
41、扩展的外部储存器W29C040的空间当中,录完后在从其中取出来用于放音。下面介绍SACM-DVR的API函数。int SACM_DVR_Initial(int Init_Index)/初始化void SACM_DVR_ServiceLoop(void)/获取资料,填入译码队列void SACM_DVR_Encode(void)/录音SACM_DVR_StopEncode(void)/停止编码SACM_DVR_InitEncode(RceMonitorOn) /初始化编码器void SACM_DVR_Stop(void) /停止录音void SACM_DVR_Play(void) /开始播放un
42、signed int SACM_DVR_Status(void) /获取SACM_DVR模块的状况void SACM_DVR_InitDecoder(void) /开始译码void SACM_DVR_Decode(void)/获取语音资料并译码,中断播放SACM_DVR_StopDecode(void)/停止解码unsigned int SACM_DVR_TestQueue(void) /获取语音队列状态int SACM_DVR_FetchQueue()/获取录音编码程序void SACM_DVR_FillQueue(unsigned int encoded-data) /填充资料到语音队列,
43、等待播放int GetResource(long Address)/从资源里获取一个字型语音资料中断服务函数:Call F_FIQ_Service_ SACM_DVR/playingCall F_IRQ1_Service_ SACM_DVR/recode具体的函数解释如下: 【API格式】C:int SACM_DVR_Initial(int Init_Index) ASM:R1= Init_Index Call F_SACM_DVR_Initial【功能说明】SACM_DVR语音播放前的初始化:设置中断源、播放方式和定时器【参数】Init_Index=0表示手动方式;Init_Index=1表
44、示自动方式。【返回值】无【备注】对于SACM_DVR这个模块,需要利用I/O口来连接外部的储存器,用来存放录音资料。录放音的格式采用SACM_A2000。 【API格式】C:void SACM_DVR_ServiceLoop(void)ASM: Call F_SACM_DVR_ ServiceLoop【功能说明】在录音期间从ADC通道获取语音数据信息,并以SACM_A2000的算法对其进行编码后存入外接储存器SRAM中;在播放期间从SRAM中获取语音资料,并对其解码,然后在等待中断程序将其送出给DAC通道。【参数】无【返回值】无 【API格式】C:void SACM_DVR_Encode(vo
45、id)ASM: Call F_SACM_DVR_ Encode【功能说明】开始以自动方式录制语音资料到外部储存器SRAM当中。【参数】无【返回值】无 【API格式】C:void SACM_DVR_Stop(voidASM: Call F_SACM_DVR_ Stop【功能说明】开始以自动方式停止。【参数】无【返回值】无 【API格式】C:int SACM_DVR_Play (int Speech_Index,int Channel,int Ramp_Set);ASM: Call F_SACM_DVR_ Play【功能说明】开始以自动方式获取外部储存器SRAM的语音数据资料。【参数】无【返回值】
46、无 【API格式】C:unsigned int SACM_DVR_Status(void)ASM: Call F_SACM_DVR_ Status【功能说明】开始以自动方式停止。【参数】无【返回值】无 【API格式】C:void SACM_DVR_InitDecode (int Channel) ASM: Call F_SACM_DVR_ Decode【功能说明】开始对SACM_DVR语音资料以非自动方式进行译码。【参数】channel=1,2,3:分别表示使用DAC1、DAC2信道以及DAC1和DAC2双通道。【返回值】无【备注】用户只能通过非自动方式对语音资料解压缩。 【API格式】C:v
47、oid SACM_DVR_Decode(void) ASM: Call F_SACM_DVR_ Decode【功能说明】从语音队列当中获取的SACM_DVR语音资料,并进行译码,然后通过中断服务子程序将其送入DAC通道播放。【参数】无【返回值】无【备注】用户只能通过非自动方式对语音资料译码。 【API格式】C:void SACM_DVR_ FillQueue(unsigned int encoded-data) ASM: Call F_SACM_DVR_ FillQueue【功能说明】填充SACM_A2000语音资料到DVR译码器等待播放。【参数】encoded-data【返回值】无【备注】语
48、音资料格式为SACM_A2000的编码格式,从语音队列里至少每48ms个字资料,仅用于非自动方式下。 【API格式】ASM:Call F_FIQ_Service_ SACM_DVR ASM: Call F_IRQ1_Service_ SACM_DVR【功能说明】用作SACM_DVR语音背景程序的中断服务子程序。通过对前台子程序(自动方式的SACM_DVR_ServiceLoop及手动方式的SACM_DVR_Decode)对语音资料进行译码,然后把语音资料送入DAC通道播放。即FIQ中断服务子程序应用于声音播放的背景程序;而IRQ1中断服务子程序则应用于声音录制的背景程序。【参数】无【返回值】无
49、【备注】SACM_DVR语音背景子程序只有汇编形式指令,并且应该吧子程序安置在TMA_FIQ中断源上。其他的中断服务子程序安置在IRQ1_TMA中断源上。 4.3 录音MIC设计流程图录音原理:语音首先通过Mic等输入设备转换成电信号,然后以一定的速率将模拟电信号转换成数字量,也就是AD采样的过程。AD采样的频率越高,声音的品质也越好,但是占用的存储空间也越大。对于语音,使用8KHz的采样率就可以获得比较好效果。采集到的数据通常要经过压缩编码来达到减小数据量的目的,例如可以使用凌阳的A2000压缩算法进行编码。最后把编码后的数据保存到存储介质中,例如Flash存储器等。在对储存空间初始化、录音
50、初始化、编码算法初始化的基础上,定时对语音资源进行AD采样并填充到队列当中,对语音资源进行编码,从编码中获取数据,把数据储存到存储器当中,即为录音过程。录音流程图如图4.3-1所示:图4.3-1 录音流程图4.4 DAC放音设计流程图DAC放音流程过程同MIC录音部分差不多,先进行播放模式的手动模式的设置,对解码队列和解码算法进行初始化,获取语音资源,填充到解码队列当中,对数据进行解码,对上述过程进行重复,即为播放循环,然后定时从播放队列中取出数据到DAC通道中进行播放。DAC放音的流程图如图4.4-1所示:图4.4-1 放音流程图4.5 单片机与外部储存器系统软件设计外扩设计时,先进行对系统
51、初始化,在进行键盘扫描,判断是由有按键按下。进行判定,若是又开始键按下,就初始化写FLASH、初始化编码、把当前状态设置为录音状态,若是没有键按下,再一次进行判定,如果是录音状态的话,初始化读FLASH,把它设为播放状态,如果是播放状态的话,就停止播放。对上述情况再次进行判定,播放状态的继续播放知道队列为空,录音状态的进行对语音资源录音。通过对凌阳音频的介绍,讲述基本的关于语音音频的常识,有利于加深对语音的认识。然后再对语音压缩编码算法的介绍,对压缩编码的标准进行了列表说明,对压缩编码的分类也进行了说明,对常用的音频形式和压缩编码波形编码、参量编码、混合编码三种编码技术进行比较,对各自存在的优
52、缺点也进行对比,对选择SACM_DVR编码算法的API应用程序接口函数介绍了几个非常使用的函数。之后,再对MIC程序流程图进行的介绍,DAC放音程序图也进行了说明,对外部储存器W29C040的连接总体流程进行了说明。最后,对凌阳单片机的编程软件的开发方式和使用的下载工具进行对比和说明,对开发环境介绍。在认识语音资料的过程当中,学习和了解了语音相关的资料,而在设计流程图时,培养了逻辑思想。外扩流程图如图4.4所示:图4.6-1 外扩流程图5 系统调试和功能实现在做硬件时,使用万用表对硬件进行简单的测试;而软件时,使用IDE集成开发环境,编写程序时,使用C语言和汇编语言。5.1 硬件调试按照第三章
53、所示的电路,焊接相应的元器件在做好的PCB上,相应的器材包括电容、电阻、二极管、电位器、芯片、插座、晶振、麦克风、扬声器等。照着原理图上的器件,焊在PCB板子上。在焊接贴片芯片是要注意焊枪温度。万用表分别对元器件进行简单的测试,判断其好坏。而在连接W29C040外扩储存器时,由于使用的杜邦线比较多,使用万用表依次对连接口和杜邦线进行测试。通过跟板子上电测试相应端口是否通电。经过测试系统硬件电路正常。5.2 软件调试5.2.1 SPCE061A 的开发方式SPCE061A的开发方式有使用在线调试器PROBE、EZ-PROBE和USB转TTL下载器三种方式对程序进行下载。在线调试器PROBE实现目
54、标板与PC之间的信息转换和传输,它既是一个编程器(完成程序的烧写),又是一个实时在线调试器,用它可以代替传统单片机应用项目开发过程中的两种工具实时仿真器和程序烧写器。PROBE是利用凌阳单片机内置的在线仿真电路ICE和凌阳单片机在线串行编程技术实现仿真和编程的。在开发软件IDE下,完成在线调试器、下载功能。PROBE连接图如图5.2.1-1所示:图5.2.1-1 PROBE连接图 凌阳单片机的开发是通过ER-PBOBE跟PROBE来实现的。ER-PBOBE和PROBE不同的是在IDE集成开发环境下需要选择当前是选择哪一种方式进行调试在PROBE共有三种选择方式:采用自动方式调试可选AUTO;采用PROBE调试可选PRI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- emc买断合同范本
- 代款合作合同范本
- 2025年抗风湿类药品合作协议书
- 合同范本网翻译
- 合同范本全是正式合同
- 双方交付款合同范例
- 2025年分离纯化控制系统项目合作计划书
- 中英日文合同范本
- 合同范本模板去石墙
- 叉车置换销售合同范本
- 法律和道德的关系 课件
- GB 16780-2021水泥单位产品能源消耗限额
- 2023-瑞幸咖啡vi手册
- 全面推进依法行政课件
- 政务服务一网通办平台解决方案-最新
- IPC-7351表面贴装设计和焊盘图形标准
- 第十四届全国交通运输行业职业技能竞赛(公路收费及监控员)赛项题库-上(单选题汇总-共3部分-1)
- NBT 10664-2021 核电厂工程岩土试验规程
- 中医药膳学(中篇-药膳原料)共66张课件
- 医院产前筛查中心设置评审验收工作汇报课件
- 2019年远程开具电子处方管理制度及操作规程版
评论
0/150
提交评论