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

博主主页:单片机辅导设计

博主简介:专注单片机技术领域和毕业设计项目。

主要内容:毕业设计、简历模板、学习资料、技术咨询。

文章目录


主要介绍

在人类的历史长河中,语言的作用尤为重要,人们一直在思考一个问题,那就是如何把语言完全不差的记录下来。当今智能化的仪表仪器的自动控制装置中,如果能够添加语言功能,就可以非常好的提升操作便捷度,在日常生活中,人们在很多场合都需要语言的存储与回放技术,所以将这种技术与生活更好的结合在一起,是现在需要解决的一大难题。传统的语言记录装置体积庞大,使用不方便,在信息处理的过程中受到许多限制,为了解决这些问题,本项目将使用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

相关推荐
scan18 小时前
单片机串口接收状态机STM32
stm32·单片机·串口·51·串口接收
Qingniu018 小时前
【青牛科技】应用方案 | RTC实时时钟芯片D8563和D1302
科技·单片机·嵌入式硬件·实时音视频·安防·工控·储能
深圳市青牛科技实业有限公司10 小时前
【青牛科技】应用方案|D2587A高压大电流DC-DC
人工智能·科技·单片机·嵌入式硬件·机器人·安防监控
Mr.谢尔比11 小时前
电赛入门之软件stm32keil+cubemx
stm32·单片机·嵌入式硬件·mcu·信息与通信·信号处理
LightningJie11 小时前
STM32中ARR(自动重装寄存器)为什么要减1
stm32·单片机·嵌入式硬件
西瓜籽@12 小时前
STM32——毕设基于单片机的多功能节能窗控制系统
stm32·单片机·课程设计
远翔调光芯片^1382879887214 小时前
远翔升压恒流芯片FP7209X与FP7209M什么区别?做以下应用市场摄影补光灯、便携灯、智能家居(调光)市场、太阳能、车灯、洗墙灯、舞台灯必看!
科技·单片机·智能家居·能源
极客小张15 小时前
基于STM32的智能充电桩:集成RTOS、MQTT与SQLite的先进管理系统设计思路
stm32·单片机·嵌入式硬件·mqtt·sqlite·毕业设计·智能充电桩
m0_7393128718 小时前
【STM32】项目实战——OV7725/OV2604摄像头颜色识别检测(开源)
stm32·单片机·嵌入式硬件
嵌入式小章18 小时前
基于STM32的实时时钟(RTC)教学
stm32·嵌入式硬件·实时音视频