基于单片机的SD卡录音笔设计与实现_第1页
基于单片机的SD卡录音笔设计与实现_第2页
基于单片机的SD卡录音笔设计与实现_第3页
基于单片机的SD卡录音笔设计与实现_第4页
基于单片机的SD卡录音笔设计与实现_第5页
已阅读5页,还剩68页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

基于单片机的SD卡录音笔设计与实现摘要本文介绍的是基于单片机的SD卡录音笔的设计与实现。首先介绍了SD卡和SPCE061A的技术应用,发展趋势和研究意义;然后深入分析了单片机录音笔的基本原理,同时全面介绍了实现基于单片机的SD卡录音笔所需要的硬件和软件;接下来是详细介绍了实现基于单片机的SD卡录音笔的硬件电路设计以及软件结构设计;最后对整个系统的性能进行测试和分析。整个系统分为硬件设计和软件设计两大模块。硬件部分由凌阳公司的SPCE061A单片机,扬声器,电池组等构成;软件环境选择的是与硬件配套的UNSPIDE200。本系统能够实现对声音的多段录音、放音、删除等功能。关键词NSPIDE,SPCE061A,SD卡,录音笔MICROCONTROLLERBASEDSDCARDRECORDERDESIGNABSTRACTTHISARTICLEISBASEDONTHESDCARDRECORDERMCUDESIGNANDIMPLEMENTATIONFIRSTINTRODUCEDTHESDCARDANDSPCE061AOFTECHNOLOGY,TRENDSANDRESEARCHSIGNIFICANCETHENANALYZEDINDEPTHTHEBASICPRINCIPLESOFSINGLECHIPVOICERECORDER,WHILEACHIEVINGACOMPREHENSIVEINTRODUCTIONTOMICROCONTROLLERBASEDSDCARDRECORDERNECESSARYHARDWAREANDSOFTWAREFOLLOWEDBYIMPLEMENTATIONDETAILSOFTHEMICROCONTROLLERBASEDSDCARDRECORDERHARDWARECIRCUITDESIGNANDSOFTWAREARCHITECTUREDESIGNFINALLY,OVERALLSYSTEMPERFORMANCETESTINGANDANALYSISTHEWHOLESYSTEMISDIVIDEDINTOTWOMAJORHARDWAREANDSOFTWAREDESIGNMODULEHARDWAREUSEDBYTHEMICROCONTROLLERCONTROLCHIPSUNPLUSSSPCE061ADEVELOPMENTBOARD,SPEAKER,BATTERYPACKSOFTWAREENVIRONMENTANDHARDWARECHOICESARESUPPORTINGUNSPIDE200THESYSTEMCANREALIZETHEMULTISOUNDRECORDING,PLAYBACK,DELETEANDSOONKEYWORDNSPIDE,SPCE061A,SDCARD,RECORDERI目录1绪论111SD卡录音笔概论112录音器的发展历史3121留声机3122钢丝录音和磁带3123数码录音笔413SD卡录音笔的发展趋势5131提高录音质量5132多功能于一身5133降低成本减小体积514基于单片机的SD卡录音笔研究意义62录音笔功能分析及开发环境721功能概述7211SPCE061A对SD卡的读写功能7212录/放音及删除功能722设计环境介绍8221系统硬件环境介绍8222软件工作环境NSPIDE介绍9223工程的操作132231创建工程过程132232开发操作过程13II3录音笔总体设计方案及硬件设计1531总体设计方案15311硬件设计总体框图15312系统软件设计架构1632系统硬件设计17321系统硬件连接实物图17322SPCE061A最小系统17323按键电路19324音频输出电路19325SD卡模组电路204系统软件设计2141主程序设计2142按键处理程序流程2343按键扫描程序2944语音录/放在SD卡上的实现3145语音文件操作管理程序3646录/放音程序375系统测试及性能分析3951喇叭测试3952程序下载及运行4053系统功能测试41结论42III致谢43参考文献44附录45附录1主程序代码MAINC45外文资料翻译附原文5611绪论11SD卡录音笔概论SD卡录音笔,数字录音器的一种,特点是机身小巧精致,携带方便,录音笔是通过SD卡的方式来存储音频的。比较于以前的录音机和磁带录音方式来讲,录音笔通过对模拟信号的采样、编码将模拟信号通过数模转换器转换为数字信号,并进行一定的压缩后进行存储,音质效果也要比传统的录音机好一些,而数字信号即使经过多次复制,声音信息也不会受到损失,保持原样不变,由于是数字的录制方式,因此数码录音笔的播放、定位、查找都非常的方便,并且可以实现循环播放。SD卡是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地于便携式装置上使用,例如数码相机和多媒体播放器等。大小犹如一张邮票的SD记忆卡,重量只有2克,但却拥有高记忆容量、快速数据传输率、极大的移动灵活性以及很好的安全性。除了体积极小之外,SD卡的存储特点是可以经受上百万次的反复擦写,因此反复使用的成本是零。而且SD卡容量越大,录音时间也就越长。从现在的情况来看,1GB闪存可以存储大约272小时录音信息。对于传统的磁带式录音方式来说,简直是天方夜谭。本课题是在SD卡和凌阳SPCE061A单片机的基础上设计一款录音笔。凌阳SPCE061A单片机具有的数字信号处理功能及其所提供的音频压缩函数2库来实现语音信号的实时采样与压缩;通过RS232接口,将采集到的语音信号实时上传到SD卡中存储。SD卡数码录音笔主要由下列二部分组成SPCE061A开发板,SD卡模组。SD卡数码录音笔的技术要求主要是录制语音,播放语音,删除语音。SPCE061A开发板SPCE061A是一款16位微控制器,内嵌32K的闪存(FLASH)。SPCE061A为语音产品而集成了ADC、DAC、AGC等,还具有N项内积运算指令,较高的处理速度使UNSP能够非常容易快速地处理复杂的数字信号,是数字语音识别应用领域的一种最经济选择。SPCE061A精简开发板配有调试功能;结合集成开发环境不需外界任何仿真、调试器即可以完成编程、仿真、调试功能。本课题利用SPCE061A的语音处理功能,以及其强大的处理能力,再配合SD卡模组,很容易实现了大容量超长录音功能。SD卡模组SD卡座模组为单片机提供了SD卡的插接装置,以SPI总线方式与单片机通讯,同时,提供卡检测、写保护检测等检测端口,以便用户可以方便灵活的为单片机外扩SD卡存储设备。还包括外置扬声器,外置电源。SD卡数码录音笔广泛应用于社会各个部分,是当今最为常见的录音设施之一。录音笔也由笔形逐渐发展成为各种形状,趋于小巧实用。312录音器的发展历史121留声机1877年8月15日,爱迪生发明了留声机。这台留声机由金属大圆桶、曲轴、受话机和膜板构成,如上图。金属圆桶上面刻有螺旋的槽纹,并安装在一个长的曲轴上,曲轴一端是手柄,摇动手柄圆通就随之转动。受话器其实是一根金属小管,管的一头有一张振膜,振膜上贴着一个有金属钝头的细针,另一头是受话端。录音的时候,先在圆桶上贴一张锡箔,然后将受话器细针端对准圆桶,匀速转动圆桶,对受话器的另一端说话,声音则被振动的细针记录在锡箔上。回放的时候,将细针端再拿回到圆桶的最开始处,转筒圆桶,声音就被原样播放出来。122钢丝录音和磁带爱迪生的留声机是纯机械录音技术,在这之后,录音技术发展为光学录音、磁性录音和电子录音。其中,光学录音顾名思义就是将声音信号转变为光学信号,记录在感光底片上的一种技术,最初应用在有声电影的研究上,并在最早的电影领域取得了广泛的应用。在电影胶片的一侧有一条窄条,叫做声带,播放时由播放机转变为同步的声音信号予以伴音。需要说明的是,光学录音由于对制作技术环节要求较高,且不可擦写,所以当时除了电影伴音这部分应用广泛发展外,其他应用面较为狭窄。磁性录音是应非常广泛的录音技术,最具代表性的革新就是1900年钢丝录音机的发明。钢丝录音机利用磁性录音原理,将受话器与电磁铁连接,将4声音信号首先转换为不断变化的磁信号,然后将钢丝与电磁铁紧密贴在一起并匀速转动,这样钢丝上就形成了强度随声音信号变化而变化的磁场,回放的时候只需要把钢丝重新在电磁铁上经过一次,声音就被还原出来,磁带录音机就是钢丝录音机的改进版本,只是现代人把钢丝改为了软质的塑料磁带而已。123数码录音笔21世纪初,数码录音技术(也称电子录音)诞生,这是通过对模拟信号的采样、编码将模拟信号通过数模转换器转换为数字信号,并进行一定的压缩后进行存储的技术。而数字信号即使经过多次复制,声音信息也不会受到损失,保持原样不变。通常数码录音笔的音质效果要比传统的录音机要好一些。录音笔通常标明有SP,LP等录音模式,SP表示SHOTPLAY即短时间模式,这种方式压缩率不高,音质比较好,但录音时间短。而数码录音笔品牌分布图LP表示LONGPLAY,即长时间模式,压缩率高,音质会有一定的降低。因此,数码录音笔迅速取代之前所有录音产品,成为当今录音领域的“专家”。13SD卡录音笔的发展趋势从首款SD卡录音笔上市到现在,短短4年内成为销量最大的随身录音设备,证明其有着极高的性能和质量,价格而比较合理。随着电子录音技术的发展和消费者使用需求的提高,数码录音笔的革新也是势在必行。5131提高录音质量一方面,随着科技的发展,录音笔的录音质量将会提升,高清录音笔,超长时间录音笔将会面世。132多功能于一身近几年,数码产品都朝着多功能化发展,随着技术的不断发展,数码产品的整合绝对是将来的一个大方向,现在很多录音笔都已经支持MP3播放功能,已经从单纯的录音发展到具备听MP3音乐,U盘,复读以及电话录音等多项功能。此外,录音笔将发展到一个全新的阶段,录音/复读,MP3播放,影像记录,图片浏览(数码伴侣),TXT文档阅读,移动存储等多功能于一身的录音笔将会出现。133降低成本减小体积降低成本是任何技术商业化的重要前提,一般的途径是通过规模生产来摊薄成本。录音笔的成本在于技术和原材料两个方面,而技术的发展势必在成本上很难降低,所以,相信通过生产原材料价格的走低,录音笔也会渐渐便宜。既多功能,又小巧实用,外观精致创新,也是录音笔外形的发展趋势。614基于单片机的SD卡录音笔研究意义本课题主要是研究基于单片机的SD卡录音笔设计,本课题是以单片机SPCE061A来实现一个录音笔系统。SPCE061A该款单片机资源丰富,有强大的数字语音处理功能可应用与语音播放和语音识别领域,内置有2路DA转换,8路AD转换及在线仿真等丰富的功能,这些都为实现数码录音和播放提供了良好的方便条件。长期以来,以FLASHMEMORY为存储体的SD卡因具备体积小、功耗低、可擦写以及非易失性等特点而被广泛应用于消费类电子产品中特别是近年来,随着价格不断下降且存储容量不断提高,它的应用范围日益增广。当数据采集系统需要长时间地采集、记录海量数据时,选择SD卡作为存储媒质是开发者们一个很好的选择在电能监测以及无功补偿系统中,要连续记录大量的电压、电流、有功功率、无功功率以及时间等参数,当单片机采集到这些数据时可以利用SD作为存储媒质。因此,基于单片机的SD卡录音笔将会是今后最常见的录音工具。2录音笔功能分析及开发环境21功能概述随着数字存储技术的发展,大容量存储设备充斥着电子应用的方方面面。对于嵌入式系统来说,功能的增强,也需要大容量存储设备做支撑。SD卡是7一种轻便的大容量的存储设备。它使用方便,工作稳定,可以为嵌入式系统提供大容量的数据存储扩展,使得系统有强大的录音功能。利用SPCE061A为主控芯片,SD卡做为存储介质,实现单片机的超长时间录放音功能。211SPCE061A对SD卡的读写功能(1)SPCE061A对SD卡的操作方式为SPI模式;(2)提供SD卡插入检测功能,并进行语音提示;(3)提供SD卡写保护检测功能,并进行语音提示;(4)可以对SD卡进行初始化、扇区写、扇区读、扇区擦除、得到SD卡的容量信息等操作。212录/放音及删除功能(1)录音数据存储在SD卡中;(2)支持多段录音;(3)放音支持“上一曲”、“下一曲”;(4)可以删除所有的录音片断,重新开始录音。22设计环境介绍221系统硬件环境介绍本系统的硬件部分采用的是SPCE061A单片机。SPCE061A单片机是一个16位结构的微控制器。以下是它的性能简介(1)16位的高性能UNSP内核单片机8(2)CPU时钟范围032MHZ49MHZ(3)片内32K字的FLASH程序存储器、2K字的SRAM数据存储器(4)4个16位I/O端口(5)14个中断源(6)1通道专用音频AD转换通道,7通道AD转换通道(7)内置MIC放大电路和自动增益AGC放大电路(8)2路电流输出型的DA转换通道(9)2个16位通用定时器/计数器(10)实时实钟(RTC)(11)低电压复位、低电压监测(12)内置在线仿真接口(ICE)(13)具有保密功能(14)具有WATCHDOG功能SPCE061A片内结构,主要包括SPCE061A时钟电路,PPL锁相环及外围电路,SPCE061A系统时钟和WATCHDOG。图21为SPCE061A片内结构图。9双16位定时器/计数器7通道10位ADC单通道GCPU时钟实时时钟FLASHRAM时基中断控制IOA150IOB150锁相环振荡器IOB0SCKIOB1SDA低电压监测/低电压复位双通道10位DAC串行输入输出接口AUD1A2MIC_IN32管脚通用输入输出端口16位微控制器UNSPICEXI/ROICE_SKI_DAIE_NCPVIOB7(RXD)IOB10(TXD)串行异步通讯接口WATCHDOG图21SPCE061A片内结构222软件工作环境NSPIDE介绍本系统的软件设计使用的是NSPIDE集成开发环境。UNSPIDE集成开发环境支持汇编语言和C语言混合编程进行程序开发,集程序的编辑、编译、链接、调试以及仿真等功能为一体并且支持软件仿真和调试的功能。UNSPIDE的主要特点是提供了友好的交互界面、易于操作,使调试工作方便且高效。工具界面主要分为主菜单,工具栏,工作区窗口,编辑区窗口,输出区窗口。图22为工具界面参照图。10图22工具界面参照图WORKSPACE窗口,如图23。WORKSPACE窗口由FILEVIEW和RESOURCEVIEW两个视窗组成。单击FILEVIEW标签,用户可以方便浏览到工程内的各文件。FILEVIEW视窗用层次图排列出当前工程的所有文件的逻辑关系。FILES文件夹包含了源程序、程序接口和说明硬件配置情况的文件。RESOURCE文件夹包括了各种资源文件RC。SOURCEFILES文件夹用于保存源文件。HEADFILES文件夹用于保存头文件。EXTERNALDEPENDENCIES文件夹用于保存对工程的一些标注信息。RESOURCEVIEW视窗列出当前工程用到的所有资源。可以单击视窗内分支顶部旁边的和号展开和收缩层次图。WORKSPACE窗口所体现的逻辑位置不是指文件在硬盘上的物理位置,而是指一种逻辑从属关系。用户可用拖曳的办法改变文件的逻辑位置。在11WORKSPACE窗口内,不同类型的文件有不同的图标表现。图23WORKSPACE窗口OUTPUT窗口,如图24。OUTPUT窗口用于显示编译、调试和查找的结果。在窗口底部有几个视窗标签BUILD、DEBUG和FINDINFILES等。用鼠标单击这些标签,可以激活相应的视窗。BUILD显示编译和链接过程里产生的信息,包括文件编辑过程里的错误和警告信息等。DEBUG显示程序调试过程里出现的信息。FINDINFILES显示在文件中查找字符的结果。EDIT窗口在EDIT窗口里,文件的打开格式有两种用户可用文本格式打开文件,也可以用二进制代码格式打开文件。12图24OUTPUT窗口文件编辑器,如图25。文本编辑器可以用来打开汇编语言程序和C语言程序。图25文件编辑器二进制代码编辑器,如图26。二进制代码编辑器让用户在EDIT窗口里以十六进制数/ASCII字符的形式来编辑二进制代码的资源文件。图26二进制代码编辑器13223工程的操作2231创建工程过程(1)选择FILENEW,打开NEW对话框如图27,选择PROJECT标签;(2)在FILE文本框内输入工程名称;(3)在LOCATION文本框内输入工程文件的路径;(4)在SELECTBODYHERE区域内选择PROBE;(5)单击OK,创建工程。图27创建工程对话窗口2232开发操作过程从开始菜单内启动工具;选择FILEOPENPROJECT,在打开对话框内选择所要打开的工程;窗口(工作区窗口)显示在工具的左半边,在这个窗口内,用户可以看到当前工程所包含的所有文件;14选择BUILDREBUILDALL,进行源文件的编译和链接。编译过程里的语法错误显示在OUTPUT窗口内;选择BUILDSTARTDEBUGDOWNLOAD,把程序加载到RAM,然后,用户可以用DEBUG菜单内所提供的调试命令来优化和运行程序。选择6、BUILDSTARTDEBUGGO,在调试器内运行程序。153录音笔总体设计方案及硬件设计31总体设计方案311硬件设计总体框图系统采用SPCE061A做为主控制器,使用其通用I/O口控制SD卡设备,实现存储器扩展;利用电路板上的三个按键对录放音进行控制;利用SPCE061A带有AGC的专用A/D转换通道做为音频输入,完成语音录制功能;利用SPCE061A的D/A进行音频输出,实现语音播放功能。图31为硬件总体框图。输入指令麦克风扬声器电源线录音放音电源SD卡SPCE061A储存或删除数字信号提取数字信号按键键盘图31硬件总体框图16312系统软件设计架构软件系统包括以下部分主程序完成系统的初始化,处理按键信息,并根据按键,在语音文件操作管理程序的配合下,创建语音文件进行录音,或控制读取语音文件进行回放。按键扫描程序完成对IOA口低八位的18按键进行扫描,并完成去抖、判断长/短按键等功能。SD卡驱动程序该部分完成对SD卡的初始化、得到卡的容量信息、读写操作、擦除操作等。语音文件操作管理程序该部分完成对多段录音的管理。每增加一段录音,程序会将起始地址、终止地址等相关信息保存,以便可以回放。录/放音程序实现对A/D采样数据的编码和存储,以及从SD卡读取录音数据并解码然后送至D/A播放等操作。1732系统硬件设计321系统硬件连接实物图系统主要由SPCE061A单片机,麦克风,扬声器,电源及储存器构成。SPCE061A单片机控制板作为整个系统的主控板,对麦克风采集来的声音信号进行数字处理并储存号功能。图33为硬件连接实物图。33系统硬件连接实物图322SPCE061A最小系统本设计选用的单片机模块为SPCE061A单片机模块,该模块包括SPCE061A芯片(MCU)、片内FLASH和其外围的基本模块。外围模块有电机驱动电路板、锁相环外围电路(PLL)、复位电路(RESET)等。18SPCE061A的主控芯片,负责构建语音录放的数据结构,并在单片机内部FLASH中保存有语音内容和相关语音信息。SPCE061A控制端口输出控制信息,并控制喇叭输出声音信息。实现对整个系统的控制。通过本系统中的音频输入电路和MIC,可以采集语音信号并处理。图34为SPCE061A最小系统图。图34SPCE061A最小系统图19323按键电路本系统使用三个按键完成录放音控制。图35为按键电路图。KEY1为“下一曲”键,KEY2为“上一曲”键,KEY3为“录音键”。图35按键电路图324音频输出电路SPCE061A内置2路10位精度的DAC,只需要外接功放电路即可完成语音的播放。电路中SPY0030是凌阳公司一款音频放大芯片。它和LM386相比,LM386工作电压需在4V以上,SPY0030仅需24V即可工作两颗电池即可工作;LM386输出功率100MW以下,SPY0030约700MW。图36为音频输出电路图。图36音频输出电路图20325SD卡模组电路在本系统中,SPCE061A通过SPI总线实现对SD卡设备的访问。SD卡模组同时提供卡插入检测和写保护检测接口。图37为SD卡模组电路图。图37SD卡模组电路图214系统软件设计41主程序设计主程序采用的是汇编语言和C语言混合编程。主程序流程图如图41。系统初始化检测SD卡是否插入否检查SD卡是否写保护置写保护标志播放“SD卡写保护”是否初始化SD卡按键处理系统状态处理是播放“注意SD卡没有插入”检测SD卡是否插入否是播放“就绪”语音提示程序开始图41主程序流程图22主程序完成系统初始化后检测SD卡是否插入以及是否有写保护,并有相应的语音提示,告知用户当前的系统状态。如果SD卡正确插入,则系统根据用户的不同按键进行录/放音控制。同时,在循环中对系统当前的状态进行检测,控制系统在录制语音时不至于超出存储器容量限制,或控制系统在放音时播放至文件尾部自动停止播放。部分程序如下SACM_DVR1600_INITIAL/语音初始化IF0SD_CHKCARD/检测卡是否插入PLAYSNDVOICE_ATTENTION,DAC1DAC2PLAYSNDVOICE_SDCARDNOTINSERT,DAC1DAC2WHILE0SD_CHKCARD/等待卡插入IF1SD_CHKCARDWP/检测卡是否有写保护WRITEPROTECT1ELSEFS_INIT/没有写保护,执行初始化操作PLAYSNDVOICE_READY,DAC1DAC2/播放“就绪“/WHILE1KEYPROCESS/按键处理STATUSPROCESS/系统状态处理SACM_DVR1600_SERVICELOOP/录/放音服务2342按键处理程序流程按键处理程序中,当检测到有SD卡写保护时,会播放“卡有写保护”的提示音,对按键不做处理。按键处理流程图如图42。初始化判断是否有写保护标志否判断按键KEY3录音键是KEY2上一曲键KEY1下一曲键返回开始图42按键处理流程图部分程序如下KEYKEYSCAN_GETKEYIF1WRITEPROTECT/卡有写保护,拒绝按键操作IFC_SRELEASEKEYSTATEKEYTYPE|C_LRELEASEKEYSTATEKEYTYPERETURNSWITCHKEY24当按下录音键时,若为短按键且SD卡未满,提示录音开始并置录音标志,开始录音。“录音”按键处理程序的流程图如图43所示。图43正在播放短按键是是停止播放,关闭读取SD卡系统状态置空闲SD卡已满否是否系统空闲否启动写入SD卡,开始录音系统状态置录音否是正在录音结束录音,录音收尾是否开始返回录音键流程图部分程序如下CASEC_RECORD/RECORDIFC_SRELEASEKEYSTATEKEYTYPE/短按键,录/放音控制IFPLAYSTATUS25SACM_DVR1600_STOP/如果正在放音,则先停止播放FS_CLOSEOPENFILESTATUSIDLEIFIDLESTATUSIFG_FILENUMFS_MAX_FILENUM|FS_GETUNUSEDSECNUM0IFPLAYSTATUS/如果正在放音,则先停止播放SACM_DVR1600_STOPFS_CLOSEOPENFILEELSEIFRECORDSTATUS/如果正在录音则不处理IFC_LRELEASEKEYSTATEKEYTYPE/长按键,停止当前播放STATUSIDLEELSEIFC_SRELEASEKEYSTATEKEYTYPE/短按键,播放下一曲系统状态处理程序主要完成在录音时判断是否超出SD卡容量限制,或者在放音时当前语音是否播放完毕。系统状态流程图如图46。检查SD卡是否已满是否正在录音播放是否结束停止录音系统状态置空闲是否正在播放停止读取系统状态置空闲是否否否是是是否返回开始图47系统状态处理流程图29部分程序如下SWITCHSTATUSCASERECORDIFFS_GETUNUSEDSECNUMSD_BLOCKSIZECUROFFSETSD_WRITINGBLOCKDATAUNSIGNEDLONGINTSD_BLOCKSIZECUROFFSET,UNSIGNEDCHARBUFSD_WRITEFINISHED38CURFILESECCURFILEENDSECCURFILESECISD_BLOCKSIZECUROFFSETCUROFFSETLENII1SD_WRITENEWBLOCKCURFILESECSD_WRITINGBLOCKDATAUNSIGNEDLONGINTCUROFFSET,UNSIGNEDCHARELSESD_WRITINGBLOCKDATAUNSIGNEDLONGINTLEN,UNSIGNEDCHARBUFCUROFFSETLENVOIDFS_READINGFILEUNSIGNEDINTBUF,UNSIGNEDINTLENUNSIGNEDINTILENSD_BLOCKSIZECUROFFSETSD_READINGBLOCKDATAUNSIGNEDLONGINTSD_BLOCKSIZECUROFFSET,UNSIGNEDCHARBUFSD_READFINISHEDIFCURFILESEC1SD_READNEWBLOCKCURFILESECSD_READINGBLOCKDATAUNSIGNEDLONGINTCUROFFSET,UNSIGNEDCHARELSESD_READINGBLOCKDATAUNSIGNEDLONGINTLEN,UNSIGNEDCHARBUFCUROFFSETLEN395系统测试及性能分析系统的硬件部分和软件部分完成以后,应对系统进行严格的测试及性能分析。为了保证系统功能的实现,系统的测试按照主程序流程所设计的方案依次对各模块进行测试。系统测试流程图如图51。喇叭测试主程序下载运行控制模块测试音频输入音频输出图51系统测试流程图51喇叭测试目的测试喇叭能否正常工作条件只连接喇叭和电路板,噪音相对较小的室内环境。步骤1接通电源,用万用表测量喇叭的正负极看是否有电压。步骤2将一个最简单的语音播放程序下载并运行。现象1万用表可以测量出电压。40结论喇叭无损环,电路连接正常。现象2程序下载并运行后,声音能正常播放。结论喇叭可以正常工作。52程序下载及运行在程序下载前,先按照硬件连接图33连接好硬件,然后把3节五号电池装入电池盒并把电源线与系统连接。下载线的一边(25针插座)与PC后面的并行接口相接,另一边的五针接头与电路板上标有“EZPROBE”的插座(J11)相接,并用J11接口边上的S5跳线把S5的2和3管脚短接。打开电池盒开关,POWER指示灯和LCD液晶显示屏上的电源指示灯都被点亮,证明系统连接正常,可以开始下载。用IDE打开设计好的工程文件,并确认以选定了“USEICE”按钮。选择“USEICE”如图52。图52选择“USEICE”当程序处于下载状态时,会弹出一个进度框。下载进程如图53。图53下载进程对话框41下载完成后关闭电池盒开关,断开“EZPROBE”下载线并把S5跳线的1、2管脚短接。这时程序下载完成,打开电池盒开关运行。53系统功能测试系统运行后,如果SD卡没有插入,会提示“注意,SD卡没有插入”,并等待SD卡插入后进行下一步操作;如果SD卡被写保护,则会提示“注意,SD卡写保护”,此后,所有按键均无效,按下任意键会提示“SD卡写保护”。此时,用户需要去除SD卡写保护,并重新运行程序;如果SD卡正常插入并且没有写保护,等待SD卡初始化成功后会有“就绪”的提示音。SD卡正常初始化后,可以按照各按键功能进行操作;按下KEY3键,启动录音,此时,会有“开始录音”的提示音。再次按下KEY3键结束本次录音,此时,会有“结束录音”的提示音;停止录音后,按下KEY2播放上一段录音,按下KEY1播放下一段录音;长按KEY2键将清除所有已录语音,此时会有“SD卡已擦除”的提示音;长按KEY1键将停止放音。结论实现录音,放音,删除功能,测试成功。42结论本课题是基于单片机的SD卡录音笔设计与实现,根据课题的要求设计了SD卡数码录音笔,在设计中主要完成了以下几个方面的内容系统硬件结构设计SPCE061A开发板,SD卡模组。系统软件架构设计完成了语音文件的录制,播放和删除,写入,读取及擦除SD卡。在本课题中,用SPCE061A开发板上的MIC作为语音信号采集器,喇叭作语音播放器,通过单片机内部存储器并调用语音模块对输入的命令进行处理,完成录音的过程。由于芯片功能和本人能力的限制,本系统还有许多有待完善和扩展的地方,主要有以下两方面SPCE061A开发板片内FLASH的容量只有32K,预存的语音信息质量受到了很大的限制。这些问题可以通过外接SPR模组扩充系统存储空间来解决。随着计算机的不断普及,人们对人机交互的要求越来越高。SD卡录音笔的研究和开发将极大的提高人机交互质量,因而我相信在不久的将来SD卡数码录音笔会得到充分的发展和应用。致谢经过3个多月的努力,终于完成了本次毕业设计。一直以来,邢老师不但为我们创造了良好的学习氛围而且给我们提供了毕业设计的设备。从邢老43师那里我不仅学习到了知识,更重要的是他严格要求,精益求精,严谨求实的治学态度给我留下了深刻的印象,这必将使我终身受益。在此,向邢老师致以深深的谢意。感谢北方工业大学信息工程学院为我们提供了做毕业设计的实验室,感谢信息工程学院所有帮助过我、指导过我的老师,是他们无私的指导和耐心的教诲,让我学习到了很多。同时我也真诚的感谢我的班级导师邢志强老师,从刚进大学的毛头小子成长到现在,都得到了邢老师热情的帮助和无微不至关怀。感谢通信工程06A2班的所有同学。在与他们共同学习,共同生活的四年里,与他们的交流和讨论,扩展了我的思路,对论文的完成颇有益处。真诚的感谢我的家人,他们对我无私的关心和支持,是我勇往直前的动力,他们对我的鼓励使我度过了大学生活中的一个个难关。参考文献1姜志玲用凌阳单片机实现多路数据采集与传输系统J西华大学学报20052王素珍,田振清用ISP实现对ISD25120语音芯片的录放音控制J电声技术20023林阳凌阳16位单片机与其它主流单片机的比较J电子世界20034王竹便录音技术及技巧浅议J科技情报开发与经济2005445孟宪超数码录音笔原理及应用J信息时代导刊20046薛驹义,张彦斌等凌阳16位单片机原理及应用M北京北京航空航天大学出版社,20057罗亚非等编凌阳16位单片机应用基础M北京北京航空航天大学出版社,20058DIGITALVOICERECORDERDESIGNDB/OLSUNPLUSTECHNOLOGY,DEC21,2004VERSION089JOHNMARKUS电子电路大全M北京计量出版社,199510邓元庆数字电路与逻辑设计M北京电子工业出版社,200111胡隆,许静波录音、调音与音响技术M北京北京工业大学出版社,第1版12王宏民录音与调音M北京中国广播电视出版社,第1版13杨行峻,迟惠生语音信号数字处理M北京电子工业出版社,第1版14ONEBASEDONMONOLITHICINTEGRATEDCIRCUITSDIGITALSOUNDRECORDINGANDTHEBROADCASTSYSTEMMPRENTICEHALLPRESS,199315SDMEMORYCARDSPECIFICATIONSZ2001附录附录1主程序代码MAINCINCLUDE“SD_RECORDING_DEMOH“INCLUDE“DRIVERSDSD_DRIVERH“INCLUDE“FSFSH“45INCLUDE“DVRSYSTEMSACMV40H“INCLUDE“DVRSYSTEMPLAYSNDH“INCLUDE“SYSTEMSETINTERRUPTSTATUSH“INCLUDE“DRIVERKEYKEYH“DEFINEADC_CHANNELMIC/07MIC,LINE_IN1LINE_IN6VOIDKEYPROCESSVOIDSTATUSPROCESSSYSSTATUSSTATUS/系统状态,SYSSTATUS定义在SDDVRH中INTSPEECHINDEXINTWRITEPROTECT/语法格式INTMAINVOID/实现功能主函数/INTMAIN46SPEECHINDEX0WRITEPROTECT0STATUSIDLEDRVKEYINITSD_IOINITSETINTSTATUSC_IRQ5_2HZSETINTSTATUSC_IRQ4_1KHZ_ASM“IRQON“SACM_DVR1600_INITIAL/语音初始化IF0SD_CHKCARD/检测卡是否插入PLAYSNDVOICE_ATTENTION,DAC1DAC2PLAYSNDVOICE_SDCARDNOTINSERT,DAC1DAC2WHILE0SD_CHKCARD/等待卡插入IF1SD_CHKCARDWP/检测卡是否有写保护WRITEPROTECT1PLAYSNDVOICE_ATTENTION,DAC1DAC2PLAYSNDVOICE_SDCARDWRITEPROTECT,DAC1DAC247ELSEFS_INIT/没有写保护,执行初始化操作PLAYSNDVOICE_READY,DAC1DAC2/WHILE1KEYPROCESS/按键处理STATUSPROCESS/系统状态处理SACM_DVR1600_SERVICELOOP/录/放音服务RETURN0/语法格式INTSTATUSPROCESSVOID/实现功能系统状态处理函数/VOIDSTATUSPROCESS48SWITCHSTATUSCASERECORDIFFS_GETUNUSEDSECNUMFS_MAX_FILENUM|FS_GETUNUSEDSECNUM052IFPLAYSTATUS/如果正在放音,则先停止播放SACM_DVR1600_STOPFS_CLOSEOPENFILEELSEIFRECORDSTATUS/如果正在录音则不处理BREAKIFC_LRELEASEKEYSTATEKEYTYPE/长按键,擦除所有语音段FS_INITPLAYSNDVOICE_SDCARDERASED,DAC1DAC2STATUSIDLEBREAKELSEIFC_SRELEASEKEYSTATEKEYTYPE/短按键,播放上一曲IFSPEECHINDEX0IFPLAYSTATUS/如果正在放音,则先停止播放SACM_DVR1600_STOPFS_CLOSEOPENFILEELSEIFRECORDSTATUS/如果正在录音则不处理54BREAKIFC_LRELEASEKEYSTATEKEYTYPE/长按键,停止当前播放STATUSIDLEBREAKELSEIFC_SRELEASEKEYSTATEKEYTYPE/短按键,播放下一曲IFSPEECHINDEXG_FILENUMSPEECHINDEX1FS_OPENFILESPEECHINDEXSACM_DVR1600_PLAYMANUAL_MODE_INDEX,DAC1DAC2,RAMP_UPRAMP_DNSTATUSPLAYBREAKDEFAULT55BREAK外文资料翻译附原文录音笔设计凌阳科技2004年12月21日第08版一、摘要首先,介绍设计方案的选择,介绍了凌阳单片机的集成开发环境。接着进行了系统的硬件设计,包括音频输入输出电路的设计、存储电路的设计、按键控制电路的设计、液晶显示电路的设计等,设计中采用了凌阳的功放芯片SPY0030,利用了单片机其串行接口SIO实现上位机与下位机的通讯,利用UART的RS232接口与PC机232接口进行连接,并设置了8位键盘和LCD显示的人机界面。然后分模块进行了软件设计,包括主程序模块、语音信号的采集模块、键盘扫描模块、语音信号存储模块的设计等,进行了程序流程的设计,编写了程序代码。最后使用IDE进行了仿真调试,验证了系统设计的正确性。系统实现了语音数据的录制、播放、暂停、循环播放、重复播放、选择上一段、选择下一段以及与PC机进行数据传输等功能。56二、引言随着视听家电产品的不断丰富,已经有越来越多微小型化的产品走入了人们的日常生活,他们最突出的优点是体积小巧、非常薄,而且重量很轻,给人们带来方便,并增添了无穷乐趣。作为一种简单方便地获取和记录数字化声音文件的工具,数码录音笔从2000年开始风靡市场,成为学生、记者和商务人士购置录音设备的首选。不仅在校园里取代了复读机,也成为时间紧张的在职进修人员的掌上新宠。带FM功能的数码录音笔,还可以便利地收听调频广播外语教学节目。数码录音笔,实际上是一种采用数码录音技术的录制设备,通过对声音进行采集、压缩、存储到闪存FLASHMEMORY进行记录,无需使用额外的录音磁带、话筒等设备,音质清晰逼真,即使反复播放其音质也毫无损失。在设计中将说明怎样利用凌阳16位单片机SPCE061A来实现一个录音笔系统。SPCE061A该款单片机资源丰富,有强大的数字语音处理功能可应用与语音播放和语音识别领域,内置有2路DA转换,8路AD转换及在线仿真等丰富的功能,这些都为实现数码录音和播放提供了良好的方便条件。三、设计方案SPCE061A是凌阳科技研发生产的一款高性价比十六位单片机,把各功能部件模块化地集成在一个芯片里,内部采用总线结构,减少了各功能部件之间的连线,提高了可靠性和抗干扰能力。片内带有高寻址能力的ROM、静态RAM和多功能的I/O口。芯片工作电压范围大,能在低电压供电时正常工作,且能用电池供电。其指令系统为其应用增添了DSP功能但是又比专用的DSP芯片廉价。对于我的设计来说SPCE061A可以非常方便灵活的实现语音的录放57功能,该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,并且内置有自动增益AGC电路。这为实现语音录入提供了方便的硬件条件。两路10精度的DAC,只需要外接功放(SPY0030A)即可完成语音的播放。另外凌阳十六位单片机具有易学易用、高效率的指令系统和集成开发环境。该开发环境支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用,并且,提供了语音录放的库函数,只要了解库函数的使用,就会很容易完成语音录放,这些都为软件开发提供了方便的条件。同时还可根据设计要求在实现基本录放功能的基础上运用SPCE061A的多功能集成功能扩展录放系统的功能。比如,使用SPCE061A的通用异步串行接口UART来实现与PC机的通讯,或者使用其他的IO口来外挂USB器件实现与PC机的USB通讯;进行低电压检测;还可通过LCD显示字符、数字等图象,在录音笔设计系统中可用来显示按键功能等。这样可以制作更复杂的录、放音系统。四、SPCE061A功能及其特点1)集成度高,易于扩展凌阳16位单片机内部采用总线结构,把各功能部件模块化地集成在一个芯片里,有效地减少各功能部件之间的连线,提高了集成度,增强了芯片的可靠性和抗干扰能力。此单片机属于非总线型单片机,省去厂片外的地址、数据及控制并行总线,而外部封装引脚可明显减少,使芯片成本下降。它既可通过I/O端口与外设器件通信,也可采用串行扩展方式。目前,由于串行传输速度的不断提高,用串行口扩展外围器件,特别在SOC中,已得到了较多的应用。58凌阳16位单片机采用CMOS制造工艺,有较好的低功耗和功耗管理功能,它提供了软件激发的弱振方式、空闲方式和掉电方式三种低功耗工作方式,大大降低了芯片功耗。由于它工作电压范围大,可在低电压供电时正常工作,并可用电池供电,从而可大幅度地减少器件的功耗。低功耗是一切电子应用系统所追求的目标,特别是在野外作业、便携式仪器仪表的开发等方面具有特殊的意义。2)较强的中断处理能力凌阳16位单片机中断系统可支持三种类型的中断异常中断、事件中断和软件中断。中断系统共有10个中断向量,可响应14个中断源的中断请求,由于对外界突发事件具有快速反应能力,使其适合用于实时控制领域。3)高效的指令系统凌阳16价单片机的指令系统以字为单位,从而格式紧凑、灵活,执行时间迅速,并提供了对高级语言和数字信号处理运算能力的良好支持,从而可有效缩短基于凌阳单片机的各种产品的研发周期。五、硬件设计录音笔系统中硬件设备采用由220V交流电压供电。由于在系统中要运用到LCD和SPR4096,他们的接口逻辑电压为33V,并且我选用了SPR4096内部存储空间较大的4MBITFLASH存储语音数据,而电源输入端VDDI是给内部FLASH和控制逻辑供电的,VDDI225V275V。因此系统电压选择了采用220V交流电压供电。六、SPCE061A最小系统设计59前面已经提到我所设计的录音笔系统的核心采用SPCE061A。SPCE061A内置的7路10BITAD转换器和2路音频输出电路使得设计电路简单了很多。七、音频输入电路在这里把要记录的语音信号最高频率定为4KHZ,规定系统的采样频率为8KHZ。当录入的语音信号有高于4KHZ的部分时,则把高于4KHZ频率的信号认为是噪声。噪声是不需要记录的,所以应该把高于4KHZ的声音频率排除

温馨提示

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

评论

0/150

提交评论