基于单片机的语音存储与回放系统设计

博主主页:单片机辅导设计
博主简介:专注单片机技术领域和毕业设计项目。
主要内容:毕业设计、简历模板、学习资料、技术咨询。


主要介绍

  在人类的历史长河中,语言的作用尤为重要,人们一直在思考一个问题,那就是如何把语言完全不差的记录下来。当今智能化的仪表仪器的自动控制装置中,如果能够添加语言功能,就可以非常好的提升操作便捷度,在日常生活中,人们在很多场合都需要语言的存储与回放技术,所以将这种技术与生活更好的结合在一起,是现在需要解决的一大难题。传统的语言记录装置体积庞大,使用不方便,在信息处理的过程中受到许多限制,为了解决这些问题,本项目将使用AT89C51单片机和ISD4004语音芯片来设计一款语音的录放系统。ISD4004语音芯片不需要数模转换和压缩就能够直接进行存储,不仅存储时间长,而且没有转换误差,还可以用于多次重复录放。外围核心电路也相对来说十分简单。使用ISD4004语音芯片与单片机相结合,通过软件与硬件的控制,完全可以实现数字化语言的存储和回放。

关键词:AT89C51单片机; 语音存储; 语音回放; ISD4004语音芯片

一、控制系统设计

  

1.1 系统方案设计

方案1:使用AT89C51单片机通过对语音信号的各种转换,来完成对语音的采集与回放。它的原理如图1-1所示。在录音的时候,单片机先将模拟信号转换为电信号,再通过音频的放大器将信号放大,通过滤波器进行滤波再由转换器转换为数字信号,送回到单片机中,然后将其存储。在需要放音的时候,相当于进行一次反向操作,首先读取出数字信号,然后经过模数转换,将数字信号转换成模拟信号,经过放大器进行放大再变成声音播放出来。这种方法虽然过程简单,但是语言信号非常容易受到外界的干扰,而且信号压缩也比较复杂,硬件电路的调试也非常困难。
在这里插入图片描述

图1-1方案1系统原理图
方案2:使用AT89C51单片机来控制整个系统,配合ISD语音芯片完成语言的录放,系统原理图如图1-2所示。通过按键控制单片机,并将指令发送到语音芯片以完成录音和播放。当前的操作状态显示在显示屏上。这种处理方法不但使其抗干扰的能力更强,而且存储也更加方便,调试也更加简单。
在这里插入图片描述

图1-2 方案2系统原理图

1.2 系统工作原理

本次项目使用单片机作为控制核心为基础,通过单片机来完成对按键和液晶显示屏等模块的响应,再控制语音芯片来存储和读取语音。系统结构如图1-3所示。
在这里插入图片描述

图1-3 系统结构框图

二、硬件电路设计

该系统可分为三个部分:微控制器控制部分、语音记录和回放部分,功率放大器部分。采用51单片机为控制核心,采用ISD4004进行录音和播放。P0连接按钮用于记录和播放,并连接到LED,显示当前的记录和播放状态。

总电路设计图

将以上各个电路图进行组合后为本次设计的最终设计电路图(利用National Instruments中的Multiuse绘制)。如图2-7所示。
在这里插入图片描述

图2-7 总电路图

三、 软件设计

主程序的设计思路,是考虑到4个按键的接口,通过单片机循环扫描来检测是否有按键被按下去,当任何一个按键被按下后,都会去执行该按键的这个子程序。例如当单片机扫描识别到按键被按下时,这个时候单片机就会去执行录音的程序,当单片机扫描识别到放音按键被按下时,单片机就会停止录音程序,去运行放音的子程序,每个状态在执行时切换下一个状态时都需要按下停止按键清除状态标志。流程图如图3-1所示。
在这里插入图片描述

图3-1 按键检测流程图

实物图

在这里插入图片描述

在这里插入图片描述

总结

  通过以上分析,此次项目使用单片机作为控制器,实现了设计的所有功能,传统的语言录放设备,要将接收到的语音信号转换为电信号,再将这个信号放大,然后再经过模数转换转换为数字信号,最后再进行处理和存储,放音时还需要数模转换转换成模拟信号,才能够达到放音的目的,这种方法听起来就非常复杂,在实际的制作过程中,还会使声音失真。所以此次项目采用51单片机来控制语音芯片的方法,也熟悉了ISD4004的基本应用,整个系统是采用51单片机对语音芯片的控制,完成了语音的录制和播放,并且描述了整个系统工作流程,各个部件的性能。这个系统不但成本非常低,而且使用起来灵活多变,抗干扰能力十分强,使用起来效果也十分优秀。
本课题的重点、难点总结:
(1)初次接触语音芯片,在使用过程中对各种寄存器的操作不太熟悉;
(2)在播放电路中,语音扩展,抗干扰分析过程应熟悉;
(3)注意调节电路的实现和程序的稳定性。通过本设计,我已经掌握了一些常用的基础理论知识,并对微控制器和PC编程控制的开发和应用有了更深入的了解。

目录

目 录
摘 要 I
Abstract II
引 言 1
1 控制系统设计 3
1.1 系统方案设计 3
1.2 系统工作原理 4
1.2.1 单片机的选择 4
1.2.2 语音芯片的选择 5
2 硬件电路设计 6
2.1 时钟电路 6
2.2 复位电路 6
2.3 显示电路 7
2.4 电源电路 7
2.5 按键模块电路 8
2.6 LM386功放电路 8
2.7 总电路设计图 9
3 软件设计 10
3.1 编程工具软件Keil C51 10
3.2 程序设计原理 10
3.3 系统主程序设计 11
4 系统调试 13
4.1 硬件调试 13
4.2 软件调试 14
4.3 调试结果 14
4.4 调试结果展示 15
结 论 17
参考文献 18
附录 源程序清单 20
致 谢 33

  • 12
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值