0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于STM32F103系列单片机的无线解说器

电子设计 来源:网络整理 作者:工程师1 2018-05-25 10:00 次阅读

本实例是以STM32F103系列单片机作为核心处理器,利用VS1003芯片进行音频解码的一种无线解说器。通过对触摸显示屏的操作,实现手持部分和终端部分二者的无线通讯。系统采用大容量的SD卡作为存储部分,通过SPI将VS1003B与SD卡的数据与STM32进行交互通信。本解说器在播放时没有出现理论上的断续情况,音质较好,占用的软硬件资源也较少,为后续的扩展留下了很大空间。

无线讲解器通常用于工厂、博物馆、景区等室外空旷场所供参观介绍用,通过事先在场所安放无线发射模块,并控制发射模块的工作范围。听众到达景点后,手上的讲解器将自动接收各个地点的无线编码信号,经解码后即可将存储在SD卡中的语音播放,以便清晰地全程收听全部介绍内容。

1 系统总体构成

系统主要器件包括TFT触摸屏、STM32F103RCT6微控制器、SD卡、语音解码芯片VS1003、扬声器。STM32F103RCT6微控制器为系统终端的控制核心,通过它与手持式设备之间进行无线串口通讯,读取SD卡中的音频文件,控制VS1003解码读取的数据,实现声音的播放与控制,该系统主体结构如图1所示。

图1 系统设计框图

2 硬件电路控制

2.1 TFT触摸屏控制电路

单片机芯片STM32F103RCT6工作在8MHz时钟下,RTC工作在32.768kHz时钟下。单片机PA3、PA5、PA6、PA7、与SD卡SD_CS、SPI1_SCK、SPI1_MISO、SPI1_MOSI相连,采用SPI通讯。显示屏接口采用并行总线方式(数据总线D[7:0]、地址总线A[1:0]、片选/CS、读/RD、写/WR),直接与单片机引脚相连,如图2所示。

图2 TFT触摸屏与单片机连接控制原理图

2.2 VS1003音频解码控制电路

语音解码芯片VS1003可解码MP3(MPEG 1&2音频层III)(CBR+VBR+ABR)、WMA 4.0/4.1/7/8/9的所有配置文件(5.384kbit/s的)、WAV(PCM+IMAADPCM)、MIDI/SP—MIDI文件,对话筒输入或线路输入的音频信号进行IMA ADPCM编码,内含高性能片上立体声数模转换器,两声道间无相位差。

图3 音频解码电路原理

VS1003通过7根引脚(VS RST、VS DREQ、VS_MISO、VS_MOSI、VS_SCK、VS_XDCS、VS_XCS)与主控芯片相连,如图3所示。需要播放音频文件时,首先应复位VS1003(包括硬复位和软复位),让其回到原始状态,准备解码下一个音频文件。接着需配置VS1003相关寄存器,包括VS1003的模式寄存器(MODE)、时钟寄存器(CLOCKF)等。最后向VS1003里写入数据。VS1003会自动识别它所支持的音频格式并进行播放。

3 软件控制设计

3.1 手持设备控制流程

对手持式设备进行软件控制编程时,第一步使用需要对系统时钟进行初始化,需要对外部高速时钟使能,中断向量表配置,锁相环配置等过程。这样系统才能正确执行相关程序。接下来对串口进行初始化,本设计使用的串口一,需要对GPIOA进行初始化,并配置其复用功能,将TXD引脚设置成复用延迟输出,RXD配置成浮空输入。下面设置USAT的波特率、传输字长、有无奇偶校验、数据流控制、收发模式、中断优先级、中断服务函数等。

图4 手持设备控制程序流程图

手持设备上的TFT初始化以后,就可显示初始化界面,接着等待终端设备发送数据显示,手持设备在完成各种初始化工作后与终端设备进行握手连接,握手成功之后便能显示终端设备上发送过来的信息,握手失败后就不停尝试着与终端设备进行握手,直到握手成功。触摸屏点击后进行软件判断得到点击的坐标值,并将坐标值传送至终端设备。

3.2 终端设备程序流程图

终端设备开机后需要设置无线单片机的初始值,初始值为包括解说区域的坐标代码,因此在游览干道旁需每隔约25m设置一个终端,当游人在游览干道上行进,身上的手持设备就可随时和道路旁放置的无线终端相互交换信息,播放需要的解说词。

因此终端流程最开始对所需要的外设进行初始化,确认初始化无误以后进入正弦波测试,如有初始化不成功的程序将不能进入下一个流程。在正弦波测试完之后确定终端设备上的外设运行良好,将SD卡中的音频文件信息解码出来,并发送出去,此时进入串口监控状态,时刻监控串口信息,当收到播放指令时即在SD卡中寻找对应的信息,并从SD卡中将数据读取出来,发送至VS1003进行解码,在播放过程中如接收到新的串口数据,再进行判断,是停止还是暂停或者其他命令,然后执行相应的命令。

图5 终端设备程序流程图

4 结论

本文所设计的无线解说器以STM32F103系列单片机作为核心处理器,处理速度快且性价比高。利用VS1003解码芯片控制音频解码文件,选用合适的通讯方式,严格把控时序,确保播放声音的清晰与真实。通过对触摸显示屏的操作,实现手持部分和终端部分二者的无线通讯,确保游人在指定地点接收到相应解说词,本系统经过实际使用,通信效果良好,播放的解说词流畅,音质较好。在后期设备升级中,可考虑采用高速DSP作为中央控制芯片,即可无需解码芯片,且更好地将系统嵌入到DSP为核心的产品中,从而更加人性化。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6037

    文章

    44564

    浏览量

    635840
  • STM32
    +关注

    关注

    2270

    文章

    10904

    浏览量

    356314
  • VS1003
    +关注

    关注

    0

    文章

    28

    浏览量

    20079
收藏 人收藏

    评论

    相关推荐

    MH32F103A单片机介绍 STM32替代 增强多种功能,替换简单,性能优异

    。MH32F103A系列单片机内置了最大512KB Flash存储和96KB SRAM,有LQFP48/64/100多种封装。 MH32F103
    的头像 发表于 12-17 15:53 169次阅读
    MH32<b class='flag-5'>F103</b>A<b class='flag-5'>单片机</b>介绍 <b class='flag-5'>STM32</b>替代 增强多种功能,替换简单,性能优异

    STM32F103×8/STM32F103×B MCU手册

    需要确定系统时钟源,如使用HSE或HSI,然后配置PLL倍增因子以获得所需的系统时钟频率。这通常通过修改RCC(复位与时钟控制)寄存来完成,并可以在STM32CubeMX或标准外设库/HAL库中轻松设置。2. Q: 为什么STM32F
    发表于 11-18 15:14 0次下载

    MH32F103A单片机,可替换STM32,主频可达216兆,并强化诸多功能

    MH32F103A系列单片机使用高性能的32位M3内核,最高工作频率216 MHz。内置的存储包括:最大512K Flash存储,96K
    的头像 发表于 08-09 18:16 716次阅读

    基于STM32单片机的智能书房系统设计

    本次设计的系统是以STM32F103单片机作为核心控制,可以通过光照传感对书房内的光照强度进行采集,可以通过温度传感完成对温湿度的采集
    的头像 发表于 06-25 09:24 2054次阅读
    基于<b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>的智能书房系统设计

    基于STM32单片机的智能冰箱控制系统设计

    基于单片机设计的一款智能冰箱控制系统,可以控制冰箱的制冷装置,可以采集冰箱的异味浓度,超过闽值之后控制紫外灯进行消毒工作单片机采用单片机采用单片机采用
    的头像 发表于 06-25 09:21 1276次阅读
    基于<b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>的智能冰箱控制系统设计

    STM32F103xC,STM32F103xD,STM32F103xE中文资料

    电子发烧友网站提供《STM32F103xC,STM32F103xD,STM32F103xE中文资料.pdf》资料免费下载
    发表于 06-17 14:12 4次下载

    STM32为什么首选F103C8T6?

    STM32F103C8T6是STMicroelectronics(ST)推出的一款基于ARMCortex-M3内核的32位微控制单片机(MCU)。它具有一系列优势和广泛的应用场景。这
    的头像 发表于 05-18 08:04 5976次阅读
    学<b class='flag-5'>STM32</b>为什么首选<b class='flag-5'>F103</b>C8T6?

    stm32f103能超到多少频率,是否稳定?

    谁超频使用过stm32f103系列的片子,能超到多少频率,是否稳定?
    发表于 05-09 07:35

    STM32国产兼容替代芯片,MH32F103A 32位M3内核 主频216M

    这次介绍的可以兼容替代STM32F103的国产芯片是MH32F103A。MH32F103A系列单片机基本兼容SXX32
    的头像 发表于 04-25 16:43 1883次阅读

    AVR单片机外接16M晶振和STM32F103外接8MHZ运行速度哪一个更快?

    ,就是在执行串口接收中断程序时,检测不到按键,发生丢失按键动作现象。 按理说STM32F103的系统时钟是72M,而AVR单片机晶振是16M,STM运行速度要快很多,不应该出现丢失按键动作的现象啊
    发表于 04-23 07:43

    求助,关于STM32 USB转串口与其他单片机通讯问题求解

    想实现stm32f103在usb转串口后,跟其他的单片机 通讯,可以实现吗? 如果用stm32f407也USB转串口,跟stm32f103的usb转串口互相通讯,可以实现吗?
    发表于 04-23 07:10

    STM32F103RCT6下载程序后无法启动的原因?

    我的STM32F103的程序是HEX文件, 是2012年的时候编译,并开始批量生产的。 最近产线上下来的单片机,都无法启动。 新买了多批单片机,都无法正常启动。 一定要用旧单片机,才能
    发表于 03-19 07:04

    STM32F103如何使用BOOT下载程序?

    STM32F103如何使用BOOT下载程序
    发表于 03-15 07:21

    ARM系列STM32F103芯片的解密方法

    本文介绍ARM系列STM32F103芯片的解密方法,其内核是Cortex-M3,内存从16K-512K都有。
    发表于 02-28 11:20 1714次阅读

    stm32f103 flash模拟eeprom

    STM32F103是意法半导体(STMicroelectronics)推出的一款32位单片机系列,该系列芯片具有高性能和丰富的外设接口,广泛应用于工业控制、消费电子、汽车电子等领域。其
    的头像 发表于 01-09 11:21 2075次阅读