标准版
#第四届立创大赛#(已完结)基于STM32的数字无线语音系统

创建时间:4年前

项目主题:自拟主题

描述

<p>注:*为必填项。</p> <p>【请在报名阶段填写 ↓】        基于STM32的多点数字无线语音传输系统的总体设计方案。该系统以STM32F103C8T6作为主控制芯片,以nRF24L01+作为无线通信模块,VS1053B模块作为语音处理,配合外围电路的设计,完成了系统硬件电路设计。软件设计采用层次化、模块化设计方法,将各个模块封装成相应函数,在对系统初始化基础之上,完成了通信链路建立、无线语音数据收发等功能的设计,实现了具有通信的无线语音传输系统。经过调试与性能测试,结果表明该系统实现了预期功能,达到了设计要求。该系统具有抗干扰、实时性、半双工、通信距离远、性能稳定等特性,可方便地应用于消防、抗震救灾、矿井、野外等某些特殊场合。</p> <p>【请在竞赛阶段填写 ↓】 ***  一、作品详情;**     基于STM32的多点数字无线语音传输系统的总体设计方案。该系统以STM32F103C8T6作为主控制芯片,以nRF24L01+作为无线通信模块,VS1053B模块作为语音处理,配合外围电路的设计,完成了系统硬件电路设计。软件设计采用层次化、模块化设计方法,将各个模块封装成相应函数,在对系统初始化基础之上,完成了通信链路建立、无线语音数据收发等功能的设计,实现了具有通信的无线语音传输系统。经过调试与性能测试,结果表明该系统实现了预期功能,达到了设计要求。该系统具有抗干扰、实时性、半双工、通信距离远、性能稳定等特性,可方便地应用于消防、抗震救灾、矿井、野外等某些特殊场合。</p> <p>***  二、描述作品所面临的挑战及所解决的问题;**        近几十年来,移动通信技术确实取得了举世瞩目的发展。以CDMA、GSM等技术为代表的2G移动通信已经实现了远距离的语音通信,以TD-SCDMA、WCDMA、CDMA2000 等技术为代表的3G移动通信也已经实现了多媒体业务的高速传输,而且这几年以 TDD-LTE、FDD-LTE、WiMax为代表的4G 移动通信正在投入应用。但是在有些场合,如在相距不远的时候、移动网络无法覆盖的场所或同一房间内,人们也同样需要应用无线通信技术。短距离、低功耗、低成本、轻便易携的无线通信正在成为人们的另外一种迫切需求。短距离无线通信技术作为无线通信技术的一个重要组成部分,其发展也颇受关注。       短距离无线语音传输有着非常广泛的应用前景和发展空间。特别是在某些特殊场合,移动电话可能并不能满足人们的通信需求,因此,一种低成本的点对点、点对多点的短距离无线语音通信系统正在日益壮大发展中。这种短距离无线语音通信的应用之一就是无线对讲机,它的应用范围非常广泛,涉及安保、民航、工业生产、航海、电网、水利、交通运输、服务业等很多行业,用于团体成员间通话和指挥,以提高沟通效率和快速应对突发情况的反应能力。与移动电话通话方式不同,它在没有任何网络覆盖的情形下,也可以使用,且无需服务费。    (1)采用嵌入式控制,具备节能模式,空闲时可以关闭无线通信电源。    (2)必须同时具备话筒和听筒(喇叭)等。    (3)语音信号放大与数字化处理可以采用集成芯片进行压缩编码。    (4)采用ISM频段的无线通信模块,可以同时发射和接收,使用合适的纠错码技术,无线传输距离不低于30米。</p> <p>***  三、描述作品硬件、软件部分涉及到的关键点;**        本文设计了一种基于STM32的具有低成本、轻便小巧、实时性、抗干扰性、半双工特性的无线语音通信系统。该系统具有使用简单、方便实用优点,并且系统中的每一手持终端都实现了点对点、点对多点的无线语音通信功能,很适合用于上述提到的特殊应用场合以及处理那些突发事件。本设计主要工作可以划分为硬件设计和软件设计两大部分。   硬件设计主要工作内容: (1)STM32F103C8T6主控制器外围电路设计及引脚分配; (2)nRF24L01无线模块接口设计; (3)VS1053B语音模块接口设计; (4)电源模块设计、复位电路设计、晶振电路设计、LED和按键电路设计等; (5)PCB板绘画、制作、焊接和功能调试。  软件设计主要工作内容: (1)系统及模块初始化,包括系统初始化、无线初始化和语音模块初始化; (2)实现语音采集、压缩和编码,实现语音同时录放功能; (3)实现nRF24L01+无线模块数据收发功能; (4)实现系统通信建立、语音收发功能;     本设计确定了系统所需的相关技术和硬件模块。系统硬件主要由STM32C8T6主控制器、nRF24L01无线模块、VS1053B语音模块组成。设计采用专用的VS1053B语音芯片,对模拟声音信号进行数字化处理,并将数字化的语音数据传给STM32主控制器,主控制器将接收到的语音数据进行封包处理,并将封包好的语音数据帧送给nRF24L01无线收发模块,无线收发模块将数据帧以一定的频率发送出去。接收端的无线模块若接收到语音数据帧,则把接收到的数据帧中的语音数据提取出来,发送给主控制器,主控制器将语音数据送给语音模块解码并播放。另外,通过先建立通信,后语音传输的方法,提高了系统可靠性。通过控制语音数据的收发,实现点对点、点对多点的无线语音通信方案设计。     系统整个通信过程中,nRF24L01无线模块和VS1053B语音模块与STM32主控制器之间的信息交换均通过SPI接口来完成。     系统主要由以下几部分组成:STM32主控制器、nRF24L01无线模块、VS1053B语音模块、电源模块、按键和LED。系统总体结构如图1所示。 <img src="//image.lceda.cn/pullimage/WOj2Q9wVSuX0xrdk433DKSeVbw2v2jorgiG4BKij.png" alt="系统框图.png">                                         图1 系统总体结构框图 (1)STM32主控制器的功能主要为控制各模块工作,以及对语音数据进行封包处理。即负责从 VS1053B语音模块获取数字语音信号送给nRF24L01+无线模块发送,或者从无线模块获取数字语音信号送给语音模块解码。 (2)nRF24L01无线模块功能主要是接收空中传来的的语音数据或者控制信令以及把自身的语音数据或控制信令发送出去。 (3)VS1053B语音模块的功能主要分为两大部分:对模拟的语音信号进行数字化处理(即模数转换 AD),并将数据发送给主控 制器;将从主控制器接收到的数字语音数据还原成声音(即数模转换DA),并能驱动耳机、音响或扬声器。 (4)电源模块分为外接电源和独立电源。外接电源主要用在程序下载和在线调试时侯;独立电源则采用电池供电,方便终端携带。 (5)按键主要用来控制系统通信建立、各语音终端的工作模式。LED用来指示各语音终端的工作状态。 (6)SW下载模块主要负责将编译调试好的程序下载到硬件板的主控制器中,并支持在线调试功能。     PCB设计采用简单设计方法,硬件模块化,更利于设计快速验证。原理图和PCB图使用AD绘制,立创的国产EDA还是在学习中,以后支持国产EDA软件是必要。~~~~ <img src="//image.lceda.cn/pullimage/klvHlbA8yOHsFnRXpn74pzMTb4zi2EXeuwUDvtAF.png" alt="image.png"></p> <p>立创PCB引脚下单啦,上图。 <img src="//image.lceda.cn/pullimage/OkWMiwK4Q33qMlT8Iysi5d8KAfSIMui8IbbTvAM6.png" alt="111.png"> *  四、作品材料清单;     BOM表见下图,详细的源文件见附件哦。因为使用的三个模块进行开发,大大减少了硬件上的复杂程度,从而达到了快速原型快速开发的目的。好了,不多说,上BOM表。 <img src="//image.lceda.cn/pullimage/nBfZJJCOqS2Q1hgS06sOstYXNstx27fFW2RcZoU1.png" alt="BOM.png"></p> <p><em>  五、作品图片上传;(PCB上须有大赛logo标识并拍照上传,若无视为放弃参赛) 图片来啦!!!作品上的LOGO给无线模块挡住了大部分。可以看旁边的空PCB或者在视频有体现的。~~~~ 到时候演示的时候,会加入音频的输入然后无线传输再在终端用小音箱播放。还可以插上耳机(带麦的那种),一边说话,另外一半播放噢。而且这个设计是半双工通信,一块板子可以发送也可以接收的。~~~~ <img src="//image.lceda.cn/pullimage/7SGI3COGNNSTKplZmvQpxdd4nV9ux5pgu0M6ltAx.jpeg" alt="QQ图片20190912152116.jpg">\~\~\~\~ </em>  六、演示您的作品并录制成视频上传;(视频内容须包含:作品介绍;功能演示;性能测试;PCB上大赛logo标识特写镜头,若无视为放弃参赛)     视频内容给大家演示一下无线音频传输,就是手机/电脑放音乐,接收机连一个小音箱播放这样。还有就是演示一下,人说话接收端播放。</p> <p>优酷视频链接:<a href="https://v.youku.com/v_show/id_XNDM2MTAxNDE3Mg==.html?spm=a2h3j.8428770.3416059.1" target="_blank">https://v.youku.com/v_show/id_XNDM2MTAxNDE3Mg==.html?spm=a2h3j.8428770.3416059.1</a> 百度网盘链接:<a href="https://pan.baidu.com/s/1uhAEdBff0bM75fwtAUf4Vw" target="_blank">https://pan.baidu.com/s/1uhAEdBff0bM75fwtAUf4Vw</a></p> <p>七、开源文档。     见附件。开源原理图、PCB、烧录文件HEX、相关模块的设计资料(有兴趣的小伙伴可以自己集成一个产品,单片机选STM8系列也是够用的,然后设计射频电路和语音电路,真正的作出一个产品。我后期可能也会做相关的完善,当然是软件硬件能力上去之后的事情了)。~~~~</p> <p>八、设计和原始来源和数字语音传输的感想     有朋友和我说过,无线语音传输,最便宜方式就是利用高频AM、FM这些模拟电路进行设计,成本低呀。对呀,成本的确是低,不过安全性和可靠性会非常的差,并且通信的距离不理想。在者,数字化时代的当下,数字传输的语言系统更具有接入其他设备的可能。比如摄像头的视频采集再加上语音信息的同步传输不是美哉吗,并且数字语音无线传输还可以利于保存和以太网等等的设备的传输呢,意义重大呀,不能就局限于高频的那个对接机呀。如果加上Lora和NBiot技术,传输距离就更远啦,而且再优化一下功耗,电池供电也可以使用很长时间。。     我的最原始的想法,还是看到监控录像都是无声的,才像着做个无线语音传输,数字的语音信号更方便于接入以太网,有想法就干呗。     还有人(别有用心的人)说啦,你这个做了用来偷听很棒噢,有这样想法的小伙子,我劝你善良。技术改变生活,希望都是往好的方向。所以开源的只是HEX文件,希望不要拿去做坏事噢。~~~~</p>

文档

BOM

暂无

附件

附件名 下载
BOM.xls
STM32F103C8T6最小系统板.zip
VS1053 语音模块.zip
NRF24L01+无线发射接收模块2.4G数传收发通信模块 改进功率加强版.zip
SCH_PCB.zip
STM32_VS1053.hex

评论(30)

  • 表情
    emoji
    小嘉工作篇
    小嘉日常篇
  • 图片
成功
工程所有者当前已关闭评论
Fighting007 回复
<p>报名晚啦啦啦啦,呜呜~~~</p>
Fighting007 回复
<p>昨天看到的报名链接,今天的计划完成原理图和PCB的设计。</p>
Fighting007 回复
<p>原理图和PCB已经设计完毕,文档已经更新完毕。使用的是AD。现在在学习这孟工他们写的《手把手教你学做电路设计——基于立创EDA》,相信国产EDA是必然。国产EDA加油。</p>
Fighting007 回复
<p>板子在路上啦,程序在进行中。打卡</p>
立创电赛 回复
<p>基于2.4G通信的对讲机,听起来就感觉很棒!期待你的项目完成!</p>
立创电赛 回复
<p>温馨提示:距项目提交截止还有11天,记得完善作品上传哟!</p>
Fighting007 回复
<p>@LCDS 最近在调试程序呢,一直在跟进</p>
Fighting007 回复
<p>@LCDS 上周立创的小姐姐打电话来,问我知不知道比赛结束的时间,能不能完成提交。我直接回答必须的。啊哈哈哈哈。</p>
Fighting007 回复
<p>全部开源了,欢迎大家学习交流。程序还有点小BUG没有解决,现在一直在调。不过演示功能应该问题不大。</p>
Fighting007 回复
<p>今天完成最后的调试,录制视频。中秋假期第二天。</p>
Fighting007 回复
<p>视频200M多,上传不了,只能看看上次其他腾讯视频这些了。</p>
Fighting007 回复
<p>优酷视频连接:<a href="https://v.youku.com/v_show/id_XNDM2MTAxNDE3Mg==.html?spm=a2h3j.8428770.3416059.1" target="_blank">https://v.youku.com/v_show/id_XNDM2MTAxNDE3Mg==.html?spm=a2h3j.8428770.3416059.1</a></p>
UncleRoderick 回复
<p>你好,请问ADC部分这么实现的?</p>
UncleRoderick 回复
<p>语音的编码解码的分辨率是多少?学习一下</p>
UncleRoderick 回复
<p>我之前用STM32自带的ADC进行采样语音,但是效果不好,很差的样子。现在也是考虑用专业的语音编解码芯片,希望交流一下。</p>
UncleRoderick 回复
<p>支持一下,11个字符11个字符</p>
Fighting007 回复
<p>@UncleRoderick 谢谢支持哈😊</p>
Fighting007 回复
<p>@UncleRoderick 典型8kHz</p>
Fighting007 回复
<p>@UncleRoderick ADC部分在VB1053完成,我们配置寄存器就可以。</p>
立创电赛 回复
<p>@Fighting007 可以下载格式工厂压缩一下,上传哟!上传方式:项目下方>上传附件。支持Mp4、Mov格式,限100M内。</p>
Fighting007 回复
<p>@LCDS 已经过了编辑时间了,不好意思了。没有压缩上传。</p>
jixin001 回复
<p>2.4G的传输能力有限,不能够大范围的传播。</p>
Fighting007 回复
<p>@jixin001 对的对的</p>
立创电赛 回复
<p>恭喜您的项目获得第四届立创电子设计大赛参与奖,点击查看获奖名单:<a href="https://diy.szlcsc.com/posts/7b78bd99e53745588a4f2d81cc11af92" target="_blank">https://diy.szlcsc.com/posts/7b78bd99e53745588a4f2d81cc11af92</a></p>
vaeping123 回复
<p>你好,我是电子信息类专业学生,看到了您的项目,想向您学习请教一下,我也想实现相关内容,但是遇到一些问题</p>
yjwpm 回复
<p>@Fighting007 看个视频还需要密码,晕。。。。。。</p>
glh1758383027 回复
<p>能不能分享一下<span class="colour" style="color: rgb(64, 64, 64);">VS1053的源码,谢谢</span><br><br/><br></p>
preb 回复
<p>您好,请问能分享一下源代码吗学习一下,可有偿,不做坏事,是实践课程做参考,感谢! qq 2604719933</p>
Fighting007 回复
<p>@preb 你现在应该做完了吧</p>
casc 回复
<p>你好我也想要源码来学习一下</p>
goToTop
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow