基于c8051f360语音存储回放系统源码

基于c8051f360语音存储回放系统源码

ID:14530665

大小:101.08 KB

页数:17页

时间:2018-07-29

基于c8051f360语音存储回放系统源码_第1页
基于c8051f360语音存储回放系统源码_第2页
基于c8051f360语音存储回放系统源码_第3页
基于c8051f360语音存储回放系统源码_第4页
基于c8051f360语音存储回放系统源码_第5页
资源描述:

《基于c8051f360语音存储回放系统源码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、语音存储回放——系统软件设计班级:电科0801姓名:学号:语音存储回放系统软件的基本功能是通过按键控制系统实现录音与放音。录音(语音的存储)时,采集语音信号并将采集的数据存入M25P16中;放音(语音的回放)时,从M25P16中读取数据送DAC。一、设计题目设计并制作一个数字化语音存储与回放系统,设计要求:①前置放大器增益可调,功率放大器输出功率≥0.5W。②带通滤波器:通带为300Hz~3.4kHz。③ADC:采样频率fs=8kHz,字长8位。④语音录放时间≥60s。⑤DAC:变换频率fc=8kHz,字长8位。⑥回放语音质量良好。⑦采用语音压缩算

2、法,增加录放时间。拾音器前置放大器带通滤波器ADC微控制器存储器DAC带通滤波器功率放大器喇叭在建立系统软件的框架时,应考虑以下几个问题。⑴人机接口的功能设计语音存储与回放系统的人机接口功能比较简单,按照功能要求要求只需要3个功能键:“擦除”键、“录音”键、“放音”键。“擦除”键有效时,单片机调用擦除子程序将M25P16中数据整片擦除,以便进行录音操作。“录音”键有效时,单片机以8kHz的频率采集语音信号,并将数据写入M25P16中。当“放音”键有效时,单片机通过读数据子程序从M25P16中取出数据送入DAC输出语音信号。语音存储与回放系统在工作时

3、需要提示一些简单的信息,入显示三种工作状态:录音状态、放音状态、擦出状态,另外,需要显示录音和放音的时间。根据设计方案,语音存储与回放系统的单片机子系统采用并行总线单片机最小系统,人机接口采用LCD模块和矩阵式键盘。根据键盘的工作原理,当键有效时,单片机通过执行INT0中断服务程序读取键值。单片机根据读取的键值,执行相应的键处理程序。这里需要考虑的是,键处理程序放在INT0中断服务程序中还是放在主程序中。如果将键处理程序放在INT0中断服务程序中,则单片机在执行键处理程序时,无法响应同级别的中断,影响程序的效率和实时性。因此,将键处理程序放在主程序

4、中,INT0中断服务程序只需要读取键值并设置一个键有效标志。主程序则不断循环检测键有效标志,如键有效标志置1,则根据键执行响应的键处理程序。每次检测到键有效标志置1后,应立即将键有效标志清零,以免键处理程序重复执行。⑵M25P16的读写方案设计由于对M25P16写一字节数据和写一页(256字节)数据所需编程时间是相同的,约需0.64ms。语音存储与回放系统的数据采样频率为8kHz,采样周期为u0.125ms。如果每采集一字节数据就立即写入M25P16,显然M25P16在写操作时间上是不能满足要求的。因此,在程序设计中,采集的语音数据先存放在C805

5、1F360内部的XRAM中,待采满256字节数据,调用M25P16页编程子程序将数据写入M25P16。由于采集256字节数据需要32ms的时间,可以满足M25P16对写操作时间的需求。(3)A/D和D/A转化器的控制为了精确控制采样频率,DAc由定时器2控制,在定时器2中断服务程序中向DAC送一字节数据,将数字化的语音信号转化成模拟信号。ADC由定时器3溢出启动A/D转化(注意需要禁止定时器3溢出中断),A/D转化结束后产生中断,通过ADC中断服务程序读取采样值。为了提高定时精确,定时器2和定时器3均采用16为自动重装工作方式。(4)C8051F3

6、60单片机内部资源的使用在语音存储回放系统中,需要使用C8051F360单片机的ADC、DAC、SPI0、XRAM、定时器等资源。由于C8051F360单片机具有丰富的片上外设,除了人机接口和大容量的存储器外,不需要扩展其他外部设备,大大简化了系统硬件电路的设计。根据上述分析,语音存储与回放系统的软件框架由主程序、键盘中断服务程序、定时器2服务程序、ADC中断服务程序组成。1.主程序流程图主程序的流程图如图。在主程序中首先执行C8051F360单片机和M25P16的初始化程序。C8051F360单片机的初始化包括I/O口初始化、内部振荡器初始化、A

7、DC初始化、DAC初始化、SPI0初始化、定时器初始化、中断系统初始化、M25P16的初始化主要目的是通过写状态字消除M25P16的写保护。YYNNNY“录音”键?“放音”键?“擦除”键?开始C8051F360与M25P16初始化LCD初始化界面清录音和放音标志根据键值散转键有效标志=1?清键有效标志调用M25P16擦除子程序显示“正在擦除”显示“正在放音”显示“正在录音”置录音标志置放音标志显示初始化界面清录放音标志位XRAM、M25P16地址初始化XRAM、M25P16地址初始化录音标志=1?已采集256字节数据?显示录音时间调用M25P16页

8、编程子程序XRAM地址置0M25P16地址加256清录音标志M25P16数据是否存满?YYY已转换256字节数据?放音标志

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。