基于ARM芯片的语音录放系统的研究.docx_第1页
基于ARM芯片的语音录放系统的研究.docx_第2页
基于ARM芯片的语音录放系统的研究.docx_第3页
基于ARM芯片的语音录放系统的研究.docx_第4页
基于ARM芯片的语音录放系统的研究.docx_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学号:毕业设计(论文)题 目:基于ARM芯片的语音录放系统的研究作 者江西理工应科院届 别2007系 别机电工程系专 业电子信息工程指导老师李振凯职 称讲师完成时间2011.012011.05摘 要随着公安、铁路等部门对语音记录的需求不断增长,出现了许多声音处理的产品。而数字录音系统作为其中的一种,经常用于某些监控对话系统中,在适当的时候用语音实时报告系统的工作状态和提示信号等。I本文介绍了一种用ARM芯片实现的嵌入式数字录音系统,该系统为一个数字录音模块,可以将其封装在上面进行二次开发。它采用数字录音的原理,录音时,ARM芯片的CPU将语音信号转换为数字信号,存储存储器中。播放的时候,既可以播放录音文件,也可以播放提前存入存储器中的语音文件。本文首先介绍了实现嵌入式录音的几种技术,然后介绍了数字录音的原理,在这之后进行了系统的总体结构设计和详细的软硬件设计,给出了系统调试过程和实验结果。最后,对系统的应用前景进行了分析并提出了改进设想。从实验结果来看,本论文所设计的嵌入式数字录音系统稳定性较好。当然要真正做到商业化还需要做很多的改进工作,但它对许多要求录放的场合是十分有用的。关键词: 嵌入式系统;数字录音;Flash MemoryABSTRACTWith the growth of the need for sound record in the department of Gongan and Railway, many products for sound disposal have appeared. As one sort of the products, digital recording system is mainly used in the systems of industrial watch and automatic responsion, reporting timely the State of working and warning information, prompt information and explanation.IIThe paper has devised the embedded system of digital recording on the basis of the principle of digital recording. When recording, the microcontroller will convert the analog signals into the digital signals and then store the digital signals in the Flash Memory. While playing the sound, the recording file or the .wav file can be both played. The paper firstly introduces several ways of designing the system,then the principle of digital recording, and then the main architecture of the system and the devising of the hardware and software. At last the future of the system and some thinking of promoting is provided.The embedded system of digital recording is proved to be stable after the test of it. Obviously the system has to be promoted before its commercialization,yet it is useful highly for the situation needing recordingKeywords: the embedded system;digital recording;Flash Memory目 录摘要IABSTRACTII第1章 绪 论11.1论文背景11 .2 当前嵌入式录音系统实现的方案21.2.1语音芯片的采用21.2.2 DSP芯片的采用31.3 本论文的任务4第2章 数字录音的基本原理62.1模拟声频和数字声频62.2数字音频技术的概念62.3语音信号的数字化82.3.1取样82.3.2量化92.3.3编码102.4数字信号的检错、纠错及模拟信号的恢复102.4.1数字信号的检错和纠错102.4.2模拟信号的恢复11第三章 系统的硬件设计123.1系统的硬件总体设计123.2 C8051F020的简介143.2.1 微处理器143.2.2 C8051F020的资源和特性163.3 Flash Memory173.4 输入放大电路和输出电路的设计18第四章 系统的软件设计204.1 软件的总体设计204.2 单片机控制程序224.2.1 文件传送子程序224.2.2 录音程序234.2.3 放音程序24第五章 总结26参考文献27I致谢28第1章 绪 论1.1课题背景随着我国经济建设的迅猛发展,公安、铁路、民航、金融等部门对语音记录的需求不断增长。把语音生成技术用于工业监控系统、自动应答系统、多媒体查询系统、智能化仪表、办公自动化系统或家用电气产品中,使它们具有语音输出功能,使之能在适当的时候用语音实时报告系统的工作状态、警告信息、提示信息或相关的解释说明等,无疑在提高人机通信能力、减少对错误处理的遗漏、提高系统性能、降低人们的工作强度等方面都有极大的好处。数字录音系统是将现场的语音模拟信号转变为离散的数字信号,然后存储在一定的存储介质上的一种录音方式,它也是数字语音处理技术中常用的一种方式。采用数字录音技术,有较高的效率和自动化程度,录音时间也长,并可将信息长期保存于存储介质中,同时对语音信息进行编辑整理非常方便,可快速查找。实现数字录音系统可以采用PC机实现和嵌入式系统实现两种方式。当使用PC机的时候,由于它的体积庞大,耗电高,造价也高,并且在某些情况下系统的稳定性得不到保证所以用PC机来实现前述的各项功能和操作,就受到了一定的限制。而嵌入式系统的体积小,供电方便,造价低,稳定性也高,所以得到了广泛的应用。本文中设计的嵌入式数字录音系统,主要是要满足以下几个指标:(1)足够长的录音时间,至少30分钟以上的时间,主要满足对长时间数字语音记录的需要;(2)大容量非易失数据的存储器作为存储媒介,可以保存语音文件和一记录;(3)灵活方便的控制方式,可以随心所欲地进行客户所需要的各种对语音的操作;(4)好的语音质量的保证,必须有足够高的采样频率; (5)合理的数据压缩方式,既保证语音的质量,又要尽可能地充分地利用存储空间;(6)同时录放音,即实现语音数据全双工传输;(7)与PC机联机,能够将语音文件传入存储器,以备播放时用。现阶段下,实现嵌入式录音系统主要有三种方案:语音芯片实现、DSP芯片实现和通用ARM芯片实现。1 .2 当前嵌入式录音系统实现的方案1.2.1语音芯片的采用采用语音芯片进行录音是一种可行的方法,它有音质自然、单片存储、反复录放、低功耗等优点。现有的主流语音芯片有以下几种:(1)ISD系列8一块 ISD 芯片上集成有麦克风前置放大器(AMP)、自动增益控制电路(AGC)、抗混淆和平滑滤波器、模拟存储阵列、扬声器驱动器、控制接口和内部精确的参考时钟,外部元件包括:麦克风、扬声器、开关和少数电阻、电容,再加上电源和电池。ISD系列语音芯片包括如下几种:表1.1 ISD系列语音芯片技术指标芯片型号录音时间采样频率特点ISD1400系列16-20秒6.4-8.OKHz边缘/电平触发音,EEPROM存储器,真实、自然再现语音和音乐,100,000次录 音周期(典型值)ISD2500系列32-120秒4.0-8.OKHz边缘/电平触发音,EEPROM存储器,实自然再现语音和音乐避免了量化噪音,100,000次录音周期(典型值)ISD33000系列60-240秒4.0-8.OKHz自动静噪功能,内置微控制器串行通信接口,EEPROM存储器,真实、自然再现语音和音乐,避免了量化噪音,反复录音十万次ISD4003系列4-8分钟4.0-8.OKH自动静噪功能,内置微控制器串行通信接口,音质真实自然,EEPROM存储器,反复录音十万次ISD 系列芯片的控制录放音有两种方式:引脚的边沿或电平触发控制和微控制器串行通信接口控制,这两种方式都不能用类似文件的方式进行控制,因此操作不方便;它的存储器采用的是非易失数据的EEPROM,但它的容量较小,由表1.1可以看出,最大录音时间只有8分钟;另外,ISD系列芯片不能同时进行录放音。由于上述原因,本嵌入式数字录音系统不采用ISD系列语音芯片。(2)APR系列APR系列芯片的控制录放音有两种方式:电平触发录音、边缘触发放音控制和微控制器串行外设接口控制,这两种方式也都不能用类似文件的方式进行控制,因此操作不方便;它的存储器采用的是非易失数据的多段式闪存。APR系列语音芯片最长的录音时间也只有16分钟;另外,APR系列芯片也不能同时进行录放音,所以本嵌入式数字录音系统亦不采用APR系列语音芯片1.2.2 DSP芯片的采用24DSP芯片,也称数字信号处理器,是一种特别适合于数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有以下特点:(1) 在一个指令周期内可完成一次乘法和一次加法运算。(2) 程序和数据存储空间分开,可以同时访问数据和指令。(3) 片内具有快速RAM,通常可通过独立的数据总线进行访问。(4) 具有低开销或无开销执行循环及跳转操作的硬件支持。(5) 快速的中断处理和硬件I/O支持。(6) 在单周期内操作的多个硬件地址产生器。(7) 可以并行执行多个操作。(8) 支持流水线操作,不同操作阶段可以重叠执行。从以上的特点可以看出,DSP芯片具有较快的运算速度和较短的指令周期,它的应用领域也非常广泛,对于语音的处理也是它的一个应用。在本嵌入式数字录音系统中,未选择DSP芯片主要是基于以下几个因素的考虑:(1) 运算速度。本系统中,对运算速度的要求,主要是要满足每一个AD变换后的数据都能及时地存入存储器,从后面的分析可以看出,通用单片机的处理能力已经可以满足本系统的需要。(2) 运算精度。本数字录音系统没有复杂的数学计算,所以没有对运算精度的要求。(3) 片内硬件资源。本数字录音系统由于必须能同时进行录放音,所以AD和DA的功能是必需的,对DSP芯片,若外接AD或DA元件,增加了复杂度,也提高了成本。(4) 功耗 。DSP芯片实现的功能较多,所以它的功耗相对较高。(5) 开发调试工具。因为选用DSP芯片的同时,还要增加它的开发调试工具,因此提高了成本。(6) 价格 。DSP芯片的价格虽然己经降到很低,但相对于通用的ARM芯片系列微处理器,还是要高一点,因此从成本考虑的话,选择一个价格相对较低的产品可以带来利润和产品竞争力的提高。由于上述原因,本系统未采用DSP芯片,而是选用了通用的ARM芯片。 1.3 本论文的任务在铁路公寓的叫班机系统和铁路机车上,都需要播放语音提示,为了界定责任,放音的同时还要将这些语音录制下来,这样在发生事故的时候,从录制的该语音情况就可以判断出谁是事故的责任方。本系统就是针对类似的这种应用进行设计的,这种嵌入式数字录音系统,可以播放预先存储在存储器里的语音文件或它们的组合,也可以播放录音后存在存储器里的声音文件,在自己播放语音文件的同时,它还可以通过麦克风将该声音连带外界的声音一起录制下来,作为对播放过该语音文件的证明。另外,通过它的TTL232接口,可以向其中输入命令来执行录放音、读取参数、传送文件等多种操作。为了实现这些功能,本嵌入式数字录音系统必须在下列各项指标上达到要求:(1)录音时间。本系统的录音时间应该在30分钟以上,以满足对长时间录音的需要。为了实现如此长时间的录音,必须有大容量的存储设备。(2)非易失数据的存储器。语音和录音文件必须能保存下来,才能用来重复播放,以满足需要。(3) 合适的采样速率。由于本系统处理的不是音乐,而是语音信号,所以11.025KHz的采样速率可以保证录音和放音的质量。(4)与PC机的联机功能。要实现对本数字录音系统的控制,应考虑与PC机联机,通过TTL232接口发送相应的命令来实现相应的操作,另外也要通过TTL232接口将语音文件传入存储器。(5)数据的压缩。适当的数据压缩,可以减少存储器空间的用量,增大录音时间,但由于存储器的录音区是循环利用的,为了降低算法的复杂度,少占用更多的系统资源,所以本系统没有采用语音数据的压缩。 (2.3)可见,量化比特数M越大,信噪比越好。量化噪声是均匀分布在0-fs/2的频带中,另外量化噪声的振幅为常数,它等于,不随信号大小而改变,因而当信号很大时,系统的信噪比很高;但当信号很小时,则量化噪声对系统的音质影响就将十分明显。量化噪声的减低对于量化噪声可采用在信号中加给高频抖动信号的方法,量化后,再减去高频抖动信号,而使量化噪声白噪声化。量化噪声随量化比特数增大而相应减小,但不能减为零。量化噪声是不同于白噪声(即等带宽能量相等的噪声)的一种高频噪声,它是由比较少的孤立频谱重叠而成的噪声。因此在听感上与白噪声不同,是一种较粗糙的、刺耳的、称为颗粒性噪声的声音。可以将一种称为高频脉动的、与量化阶梯高度相等的小振幅白噪声与信号重叠,经量化后,颗粒性噪声即被白噪声化,使听感变好。理论上将与量化阶梯高度v相等的均匀分布的高频抖动在量化前先与信号相重叠,量化后再将高频抖动除去,量化噪声就成为宽度为V、电功率v2/12的均匀分布的白噪声。另外 ,还可由过取样减低量化噪声,利用非均匀量化的输入输出特性也可减低量化噪声。2.3.3编码13二进制使用“0”或“1”两个数字,逢二进一,用二进制数表示某一数值时,这一二进制数称为字,这种表示过程称为二进制编码。常用的各种二进制码有自然二进制码、偏移二进制码、2的补码、偏移反射二进制码和折叠二进制码。将模拟信号转换为数码,然后再转换成二进制数字信号的方法称为脉冲编码调制(PCM),冠以脉冲是因为转换后的数字信号以脉冲形式出现。2.4数字信号的检错、纠错及模拟信号的恢复2.4.1数字信号的检错和纠错1数字信号在传输或记录过程会产生误码,根据产生的状态,误码可分为随机性误码和突发性误码两类。随机性误码是指彼此孤立的误码,突发性误码是指彼此连续的集中误码。为了避免重放已记录的数字信号时,由于各种原因所造成的连续的突发性误码影响重放,采取在记录时改变数字信号的顺序,重放时再按原来顺序重排回来的措施称为交织。经过交织,可以将记录媒质上所产生的突发性误码,在信号恢复为原来顺序后被分散开形成随机性误码,以便于采取措施进行纠错。常用的检错和纠错方法有:奇偶校验码、交叉交织码、循环冗余校验码和邻接码。2.4.2模拟信号的恢复数字信号经反交织、纠错码处理和D/A变换后,还要经窗口电路和低通滤波器才能恢复为模拟信号。(1)窗口电路D/A 变换器的输出信号需馈送到一个窗口电路,窗口电路是由一个模拟开关和两个缓冲放大器组成。因为D/A变换器的输出信号必须经过一定时间后才能达到稳定值,利用来自模拟开关的控制信号,可在波形稳定后读出电压值,输出PAM信号。(2)解调低通滤波器当窗口电路输出的PAM信号,如果设计得使下一个脉冲正好在上一则通过低通滤波器后的脉冲串可变为各个脉冲响应的合成波,重现出原信号的波形。第三章 系统的硬件设计在前一章介绍的数字录音原理的基础上,结合实际的情况和需要,从系统的任务和要求入手,开始对系统进行总体设计。3.1系统的硬件总体设计嵌入式数字录音系统应由下面各部分组成,如图3.1所示。放大滤波采样保持A/ DARM内核存储器D/A窗口电路滤波放大输入输出电压调整+3V 5V 输入+5V 图3.1 系统总体结构框图本嵌入式数字录音系统采用包含有AD与DA电路的ARM芯片来实现模拟信号和数字信号的相互转换,因此不需要再另外设计专门的AD与DA变换电路,其中单片机中的DA变换己实现窗口电路的功能,所以本系统也无需再设计窗口电路。在语音信号从驻极体麦克风进入通用ARM芯片之前,应该进行信号的放大和滤波处理,所以应有相应的输入电路和器件;同样在放音的时候,信号经过DA变换后,也要经过滤波和放大处理,最后通过扬声器将语音播放出来。为了保证录音时间满足要求,本系统连接了一片Flash Memory来存储语音文件和其它的相关参数。Flash Memory又称闪烁存储器、快闪存储器,是一种高密度低成本的大容量新型半导体存储器,由于Flash Memory断电后数据不会丢失,同时它的容量较大,32M的空间在11.025KHz的速率下,录音可达到40多分钟的时间。因此,Flash Memory是实现本系统各种功能的保证,也是系统的关键技术之一。考虑到应对本数字录音系统进行控制,以实现录放音等操作,所以本系统设计了TTL232接口与PC机相连,PC机发送相应的指令控制ARM芯片进行不同的操作。本系统主要由通用ARM芯片、一片Flash Memory,输入信号放大电路和输出信号电路组成,通过TTL232接口与PC机相连,当PC机发出相应的指令,系统可执行相应的操作,这些操作包括:录音开始、录音结束、放音开始、中断放音、传送文件、擦除块、读取系统参数、读取列表区数据6。如下图3.2: 输入 输出 PC机 TTL232接口图3.2 系统硬件结构图CPUFlash Memory输入电路输出电路在录音时,声音信号放大后通过AD管脚进入ARM芯片,经过AD转换后,数据被存储在Flash Memory 中,放音时ARM芯片将存储在Flash Memory中的语音数字信号(可以是录音数字文件数据,也可以是固定的语音文件数据)。经过DA转换后再经DA管脚输出,经输出电路通过扬声器将声音播放出来。录音的命令格式是:RECORD文件名,日期,时间,格式#;录音结束的命令格式是:END#。放音的命令格式是:PLAY文件名,日期,时间,格式#;中断放音的命令格式是:STOP#。传送文件是将特定语音的语音文件从PC机通过TTL232串口传入Flash Memory中,当播送特定的语音时,可以将这些固定语音的语音文件进行拼接,然后播放出来。擦除块是将Flash Memory中存储的某些数据删掉,以写入新的数据。读取系统参数是将Flash Memory中存储的诸如版本号、日期、录音区和放音区开始地址、总长度、首尾指针以及录音最大长度、格式等系统信息通过TTL232串口传送至PC机以备察看和使用。读取系统参数的命令格式是:READ#。由于列表区存储的是语音文件的信息,如:文件名、日期、时间、起始地址、长度和格式,所以读取列表区数据就是将这些信息通过TTL232串口传送至PC机,使用户可以了解文件的各种信息以及存储区的使用情况。读取列表区参数的命令格式是:LIST1/2#。系统在实现录放音的功能时,采样频率为11.025KHz。在输入录音命令和文件名等参数之后,系统开始录音,输入停止录音命令或录音时间达到预设值后,系统即停止录音。在播放语音文件时,只要输入放音命令和要播放的连续文件名即可,可以中断正在播放的语音来进行其它的操作。3.2 ARM芯片的简介 3.2.1 微处理器本系统中选择ARM公司的LPC2100系列,原因是:LPC2100系列ARM芯片有丰富的模拟和数字资源,并采用了一些在ARM中前所未有的新技术,在CPU的内部和外部有几项关键性的改进,提高了整体性能,更易于在最终应用中使用。它有如下的优点: (1) 高速的ARM内核。为了提升速度,DALLAS公司PHILIPS公司采用传统的改变总线速度的方法,将机器周期从12个缩短到4个和6个,速度提升有限。而ARM处理器使用的是流水线来增加处理器指令流的速度,这样可使几个操作同时进行,并使处理器和存储器系统之间的操作更加流畅、连续,能提供0.9MIPS/MHZ的指令执行速度。ARM的中断系统可以提供多个的中断源,允许大量的模拟和数字外设中断微控制器。一个中断驱动的系统需要较少的MCU干预,却有更高的执行效率。 (2) I/O实行交叉开关配置。迄今为止,I/0端口大都是固定为某个特殊功能的输入/输出口,可以是单功能或多功能,I/0端口可编程选择为单向/双向以及上拉、开漏等。固定方式的I/0端口,既占用引脚多,配置又不够灵活。为此,ARM公司在推出的LPC系列中,采取虚拟外设的方法将I/0的固定方式转变为软件设定方式。而在LPC2100中,则采用开关网络以硬件方式实现I/0端口的灵活配置。在这种通过交叉开关配置的I/0端口中,ARM外部为通用I/0端口。内有输入/输出的电路单元通过相应的配置寄存器控制的交叉开关配置到所选择的端口上。 (3) 双重系统时钟。LPC2100内部有一个能独立工作的时钟发生器并具有外部振荡器驱动电路。在复位后内部时钟发生器被默认为系统时钟。外部振荡器可以使用晶体、陶瓷谐振器、电容、RC电路或外部时钟源产生系统时钟。如果需要,时钟源可以在运行期间在内部振荡器和外部振荡器之间切换。这种时钟切换功能在低功耗系统中是非常有用的,它允许MCU从一个低频率(节电)外部晶体源运行,当需要时再周期性的切换到高速的内部振荡器。 (4) 在系统调试。LPC2100具有片内JTAG和调试电路,通过4脚的JTAG接口并使用安装在最终应用系统中的器件就可以进行非侵入式、全速的在系统调试。ARM的调试系统支持观察和修改存储器和寄存器、支持断点、观察点、堆栈指示器和单步执行。调试时不需要额外的目标RAM,程序存储器、定时器或通信通道,并且所有的模拟和数字外设都正常工作。当MCU单步执行或遇到断点而停止运行时,所有的外设(ADC除外)都停止运行,以保持同步。对于开发和调试嵌入式应用来说,该系统的调试功能比采用标准MCU仿真器要优越得多,标准MCU仿真器要使用在板仿真芯片和目标电缆,还需要在应用板上有MCU的插座。ARM的调试环境既便于使用又能保证精确模拟外设的性能。 (5) 多源复位。迄今为止的LPC系列ARM芯片多数停留在只提供引脚复位一种方法。为了系统的安全和功耗管理,对系统的复位功能提出了越来越高的要求ARM公司把单一的外部复位发展成多源复位。LPC2100芯片的多复位源提供了上电复位、掉电复位、外部引脚复位、软件复位、时钟检测复位、比较器0复位、WDT复位和引脚配置复位。众多的复位源为保障系统的安全、操作的灵活性以及零功耗系统设计带来极大的好处。 (6)最小功耗系统的最佳支持。在CMOS系统中,按照CMOS电路的特点,其系统功耗WS为: WS=CV2f (3.1)式中, C为负载电容,V为电源电压,f为时钟频率。LPC2100系列需要四组电源输入:数字3.3V、数字1.8V、模拟3.3V和模拟1.8V。实现了片内模拟与数字电路的3V供电,大大降低了系统功耗;完善的时钟系统可以保证系统在满足响应速度要求下,使系统的平均时钟频率最低;众多的复位源使系统在掉电方式下,可随意唤醒,从而可灵活地实现零功耗系统设计。 在LPC2100系列ARM中的基本参数如下 表3-1 常用LPC系列型号和参数芯片型号工作温度FLASH存储器(字节)RAM(字节)CPU电压数据I/0口A/DD/ALPC2132-4085C64K16K3.3V648-ch/10-bit1-ch/10-bitLPC2134-4085C128K16K3.3V64Dual8-ch/10-bit1-ch/10-bitLPC2141-4085C32K8K3.3V646-ch/10-bit-LPC2142-4085C64K16K3.3V646-ch/10-bit1-ch/10-bitLPC2148-4085C512K32K3.3V648-ch+6-ch/10-bit1-ch/10-bitLPC2158-4085C512K40K3.3V648-ch+6-ch/10-bit1-ch/10-bit从表中可以看出LPC2132可以基本满足本系统的要求。 3.2.2 LPC2132的资源和特性 1.概述 LPC2131/2132/2134/2136/2138微控制器是基于一个支持实时仿真和嵌入式跟踪的16/32位ARM7TDMI-S CPU,并带有32kB、64kB、128kB、256kB和512kB嵌入的高速Flash存储器。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降低超过30%,而性能的损失却很小。 较小的封装和很低的功耗使LPC2131/2132/2134/2136/2138特别适用于访问控制和POS机等小型应用中;由于内置了宽范围的串行通信接口和8/16/32kB的片内SRAM,它们也非常适合于通信网关、协议转换器、软件modem、语音识别、低端成像,为这些应用提供大规模的缓冲区和强大的处理功能。多个32位定时器、1个或2个10位8路的ADC、10位DAC、PWM通道、47个GPIO以及多达9个边沿或电平触发的外部中断使它们特别适用于工业控制应用以及医疗系统。 2.特性 16/32位ARM7TDMI-S核,超小LQFP64封装。 8/16/32kB的片内静态RAM和32/64/128/256/512kB的片内Flash程序存储器。128位宽度接口/加速器可实现高达60MHz工作频率。 通过片内boot装载程序实现在系统编程/在应用编程(ISP/IAP)。单个Flash扇区或整片擦除时间为400ms。256字节行编程时间为1ms。 EmbeddedICE RT和嵌入式跟踪接口通过片内RealMonitor软件对代码进行实时调试 和高速跟踪。 1个10位的D/A转换器,可产生不同的模拟输出。(LPC2132/34/36/38) 2个32位定时器1外部事件计数器(带4路捕获和4路比较通道)、PWM单元(6路输出) 低功耗实时时钟具有独立的电源和特定的32kHz时钟输入。 多个串行接口,包括2个16C550工业标准UART、2个高速I2C总线(400 kbit/s)、SPI和具有缓冲作用和数据长度可变功能的SSP。 向量中断控制器。可配置优先级和向量地址。 小型的LQFP64封装上包含多达47个通用I/O口(可承受5V电压)。 多达9个边沿或电平触发的外部中断管脚。 通过片内PLL(100us的设置时间)可实现最大为60MHz的 CPU操作频率。 片内集成振荡器与外部晶体的操作频率范围为130 MHz,与外部振荡器的操作频率范围高达50MHz。 低功耗模式:空闲和掉电。 可通过个别使能/禁止外部功能和外围时钟分频来优化功耗。 通过外部中断或BOD将处理器从掉电模式中唤醒。 单电源,具有上电复位(POR)和掉电检测(BOD)电路:CPU操作电压范围:3.03.6 V (3.3 V10%),I/O口可承受5V的电压。3.实物图 图3.2 LPC2131的64脚的封装3.3 Flash Memory613 由于Flash Memory的容量, 并且录音区又是循环使用的,所以本系统中的语音数据没有压缩。它的组织与使用情况如图3.4所示存储系统表放音列表区放音数据区录音列表区录音数据区图3.4 系统存储器的组织对于Flash Memory的组织是以块为单位的,第一块存储系统的参数,如:版本编号、日期、录放音列表去、数据区的开始地址、总长度、首指针、尾指针等。录放音列表区分别占一块,存储关于文件的参数,诸如:文件名、日期、时间、起始地址、长度和格式等。放音数据区存储的是提前录制好的、由PC机传送过来的语音文件,播放这些文件或者他们的组合时,也是从这里读取数据。录音数据区存储的是录音文件,对于录音数据区的管理是采用循环利用的方式,即录音文件依次存储,当剩余空间小于系统参数之一最大录音长度时,就将录音数据区最前面的文件删除,这样就保证剩余的空间可以存储下一个录音文件。这时文件的参数发生变化,也需要增加或删除录音列表区文件的参数。同样,录音列表区的空间也是循环利用的,这是通过列表区的尾指针来实现的。当指针指到该块的末尾时,若要指向下一个文件参数,就需要指回该块的开始处。3.4 输入放大电路和输出电路的设计系统的输入放大电路这样实现滤波、语言信号的放大和限制语音信号幅度的功能,而输出电路主要实现功率的放大,起到隔离和加强输出信号的作用。根据系统的硬件结构图和对硬件的设计,可设计出电路如附录I。嵌入式数字录音系统的电路板外观图如3.5。图3.5 系统电路板图 第四章 系统的软件设计4.1 软件的总体设计111214系统功能的实现依赖于软硬件的协同工作。软件开发有两部分的工作,它们是ARM芯片控制软件和PC机控制软件。ARM芯片控制软件实现录放音、中断放音、停止录音、读取参数等功能,PC机控制软件实现向单片机传送系统参数和语音文件功能。ARM芯片控制软件采用循环查询方式,即各种操作都有一个标志位,系统循环检查各标志位,若发现某标志位置1,即执行相应的操作,若有标志位同时置1,则按照程序的顺序先后执行。主程序流程如图4.1。 图4.1 主程序流程图开始各寄存器初始化收到完整命令循环处理子程序出错处理否循环处理子程序:从TTL232接口传送到ARM芯片的如果是完整的操作命令,则命令字符转入命令处理子程序处理,命令参数则转入参数处理子程序进行处理。在传送语音文件数据时,由于Flash Memory读写是以一页为单位的,所以当ARM芯片接受到一页数据的时候才进行处理。在录放音过程中,不论是录音还是放音,都是分三部分进行的,这样做的目的是能够同时录放音,即在微观上是顺序执行,但在宏观上是并行执行的。首先是初始化,即进行录音或放音的准备工作,然后是录音或放音的执行,即向Flash Memory种写入语音数据或从Flash Memory中读出语音数据,最后是录放音结束,进行一些收尾工作。若要了解系统的一些工作状况,可通过从Flash Memory中读取系统参数和录音区参数、放音区参数来实现。这些参数有的是预先存入Flash Memory中的,有的是进行录音后才存入Flash Memory中的。循环处理子程序工作流程如图4.2所示:图4.2循环处理子程序流程图命令处理收到一页数据参数处理命令处理子程序参数处理子程序文件传送子程序开始放音开始放音放音结束放音初始化子程序放音结束子程序放音子程序录音开始录音录音结束结束录音子程序录音初始化子程序录音结束子程序是是是是是是是是是否否否否否否否否否4.2 ARM芯片控制程序ARM芯片控制程序在收到PC机传送的命令和数据将进行相应的处理,另外还实现将语音文件写入Flash Memory、录放音初始化、录放音、录放音结束、读取系统参数和列表区参数的功能,各操作相应的标志位来控制。系统的主程序以循环查询的方式检测各标志位,有标志位置“1”即执行相应的子程序。4.2.1 文件传送子程序该程序接受PC机传送来的语音文件和列表文件,进行数据的校验,如果无误则写入Flash Memory写操作以一页(512byte)为单位,相应的地址中。由于Flash Memory因此接收数据也是以一页为单位,因此接收数据也是以一页为单位。数据丢失或有误,则重新传送刚才的数据页。流程图如图4.3所示:图4.3 文件传送子程序流程图4.2.2 录音子程序录音初始化首先是通过查找系统参数找到录音区空白块、空白页的起始地址,语音文件的数据就从这地址开始存储;同时读出最大录音时间和长度,这两个参数是用来自行停止录音的。当没有收到录音结束的命令时,超过最大时间或长度时,录音即自行停止。读出这两个参数后,打开控制AD变换速率的定时器,然后打开AD变换操作。录音时,每当AD转换后的数据满一页,就将其写入Flash Memory中当一块写满后,空白指针就指向下一空白有效块。录音子程序流程图如图4.4。图4.4 录音子程序流程图录音结束后,首先停止AD转换,然后将控制变换速率的定时器关掉。这时候,变换后的数据可能不满一页,将这些数据写入Flash Memory中,由于录音区的空白位置指针、文件数目等参数己经变化,所以系统要修改这些参数,为下次和其它操作打下基础。这时,还要检查剩余的空间是否小于最大录音空间,若小的话,要将录音区的最后一个文件删去,这样就为下次的录音留有了空间。可见本系统中,录音区的空间是循环利用的,以便满足在具体的应用中对空间的要求。若删除了最后一个文件,则应该修改系统的参数。如图4.5,图4.5为录音结束子程序流程图。图4.5 录音结束子程序流程图4.2.3 放音子程序放音初始化土要是根据输入的文件名在列表区查找匹配的语音文件,若找到则取得语音文件所在起始块地址和文件长度,然后读出语音文件的前两页数据到两个读数据缓区,再打开DA变换器,准备进行DA变换,为放音做准备。最后是打开控制DA变换速率的定时器。如图4.5,图4.5为录音初始化流程图。放音结束子程序是在放音结束后,首先关掉定时器和DA转换,然后察看是否是播放文件的最后一个,因为播放文件的时候可能同时播放几个文件,若不是的话则播放下一个文件,直到播完为止。如图4.6,图4.6为放音结束子程序流程图。4.7 放音结束子程序流程图图4.6 放音子程序初始化流程图第五

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论