基于STM32的景点语音自动导览系统的研究与设计

发布时间:2023-03-28  

景点语音导览主要有以下几种方式:一种是通过定位系统(GPS)的用户终端接收工作卫星的导航信息,从而解算出车辆的经纬度信息,进而计算出实时坐标,将其与景点坐标相比较,当车辆驶入景点一定距离范围内时,不用人工干预,系统自动播报景点语音信息;另一种是对车轮轴的转角脉冲进行计数,将计数值和预置值对比,即可确定播放时刻,达到准确播放景点语音信息的目的;第三种方案是利用无线射频识别技术,在每一个景点范围内设置一个具有ID 的射频发射器,采用间歇工作方式发射信号,当旅游列车即将到达景点时,车载系统接收到射频发射器信号并解码出景点的ID 号,由系统控制自动播放对应编号的景点语音信息。由于景点自然环境的复杂性,种方式难以满足系统要求;第二种方式简单可靠,但旅游轨道车辆运行方向存在不确定性,其相对位置往返变化,系统的自动化程度较低且复杂度较高。本文采用第三种方案实现景点语音自动导览系统。

本文首先介绍了系统总体结构,然后,给出了系统各主要功能模块的具体设计,并重点研究了基于ARM3核的STM32F103RBT6芯片与语音芯片ISD4004之间的SPI 通信控制和实现技术,给出了系统设计实现结果。


1 系统总体设计

本系统结构原理设计如图1 所示。本设计利用旅游列车轨道固定的特点,在轨道沿线景点预先安装固定ID的RFID,综合考虑到作用距离、数据通信方式、可靠性、使用寿命和维护成本,选用产品433 MHz有源标签GAO C124061。其存储ID 字长32 b。由于在野外自然环境中,出现碰撞的可能性极低,所以,RFID 阅读器只需要正确可靠地获得RFID的ID值,与固定景点所对应,用以触发中断,开始播放该景点的语音信息。

图1 中,MCU 采用STM32F103RBT6 芯片,该芯片是基于ARM Cortex-M3内核高性能、低成本、低功耗的嵌入式应用MCU。本设计选择这款的原因是看重其性价比:128 KB FLASH、20 KB SRAM、2个SPI、3个串口、1个USB、1个CAN、2个12位的ADC、RTC、51个可用I/O脚等一系列性能特征,能完全满足本系统性能要求。总结下来,STM32具有价格低、功能强、使用简单、开发方便等几个很有利的优势。ISD4004为语音录放存储芯片,根据外部控制和外围电路辅助,可随机对其进行语音录入和语音播放。系统MCU 通过RFID 阅读器获得旅游列车沿途RFID的固定ID,根据ID号所对应的预设语音数据存储位置的起始地址信息,通过对ISD4004内置的SPI端口进行控制,实现景点语音选段自动播放。



2 主要模块电路设计

2.1 ISD4004控制电路设计

ISD4004系列语音芯片工作电压为+3 V,单片录放时间8~16 min,音质好。芯片采用CMOS 技术,内含时钟、抗混叠滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平非易失性存储器阵列。芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI)送入。芯片采用多电平直接模拟量存储技术,每个采样值直接存储在片内非易失性存储器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和金属声。芯片ISD4004 内部结构和主要引脚功能如图2所示。



ISD4004 内部器件控制单元设置非常便于其与STM32序列芯片的SPI进行通信设置。增设STM32多个I/O 口来作为对应语音芯片的片选端,即可实现多片ISD4004 扩展。STM32 与多片ISD4004 的接口电路如图3所示。



STM32 和ISD4004 通过SPI 模块进行通信,两者MOSI、MISO脚对应相互连接,实现STM32和ISD4004之间数据串行传输(MSB 位在前)。通信总是由主设备STM32 发起。STM32 通过MOSI 脚把数据发送给ISD4004,ISD4004 通过MISO 引脚回传数据给STM32。

全双工通信的数据输出和数据输入是用同一个时钟信号同步的;时钟信号由主设备STM32通过SCK脚提供。

扩展为多片语音芯片后,语音信息的存储空间大大增加,便于扩充景点的语音信息量。

2.2 语音录放控制电路设计

语音录放控制电路如图4 所示。通过MCU 的I/O控制端来控制串联调整管Q3 或开关管Q1,实现系统放音或者录音。I/O 端输出高电平时实现录音,输出低电平时实现放音。



2.3 RFID读卡器接口电路

RFID 读卡器模块使用了Philips 的高集成ISO14443A 读卡芯片MFRC500。RFID 读卡器是一个相对独立的功能模块,其输出可通过中断状态信息和串口与外部连接。因此,系统利用STM32F103RBT6 的SPI2接口实现与RFID读卡器接口之间的数据通信,从而自动获得景点位置信息,以控制选择对应景点导览语音的播放。读卡器中断状态直接与STM32F103 的PD口I/O引脚连接;SPI2接口电路形式同图3类似。

3 主要功能软件设计


3.1 软件初始化

3.1.1 外设时钟的使能

本设计中涉及的外设时钟可以通过APB2 外设时钟使能寄存器来使能。当外设时钟没有启用时,软件无法读出外设寄存器的值,返回的数值始终为0.设计中用到的PA 口、PB 口、PD 口的时钟分别通过APB2ENR寄存器的第2、3、5 位来设置,SPI1 的时钟通过APB2ENR的第12位来设置。

3.1.2 I/O口的初始化

本设计涉及的I/O 口包括:用于控制片选扩展的PA.3、PB.0口,需设置成开端输出模式;用于实现按键控制的PA.15(录音键)、PA.0(强制停止键)等需设置为上拉输入模式;用于实现SPI通信的PA.5、PA.6、PA.7 口,它们分别对应SPI1的SCK、MISO、MOSI口,应由软件设置这三个口为复用I/O口即第二功能;用于检测放音结束时语音芯片INT端低电平输出的PA.8和PD.2设置为上拉输入模式。

3.1.3 外部中断的初始化

外部中断初始化中主要完成的工作是设置I/O口与中断线的对应关系、开启与该I/O口对应的线上中断/事件以及设置中断的触发条件、配置中断分组并使能中断。本设计中,将强制停止键连接到的PA.0 口对应的中断触发条件设置为上升沿触发,对应的中断优先级;其余按键连接的I/O口对应的中断触发条件都设置为下降沿触发。把所有的中断都分配到第二组,把所有按键的次优先级设置成一样,而抢占优先级不同。其中,几个放音键连接的I/O口对应的中断共用一个中断服务程序,也就是多个中断线上的中断共用一个中断服务函数,在该中断服务程序里先对进入中断的信号进行区分(通过中断输入I/O口上的电平判断),再分别处理。

3.1.4 SPI模块的初始化

本设计中,通过对CR1寄存器的设置,将SPI1模块设置成全双工模式、软件NSS管理、主机模式、8 b MSB数据格式,并且把SPI1的波特率设置成了(281.25 kHz,为系统时钟的256分频),其中重要的是SPI模块输出串行同步时钟极性和相位的配置,SPI主模块和与之通信的外设备时钟相位和极性应该一致。,发送0xff启动传输。

根据ISD4004 不同相位下的SPI 总线传输时序和SPI操作时序关系,要想实现STM32和ISD4004之间的SPI通信,须将其控制位CPHA和CPOL都设置为1。

3.2 SPI控制功能软件实现

3.2.1 SPI1读写字节函数

在读数据时,接收到的数据被存放在一个内部的接收缓冲器中;在写数据时,在被发送之前,数据将首先被存放在一个内部的发送缓冲器中。对SPI_DR寄存器的读操作,将返回接收缓冲器的内容;写入SPI_DR寄存器的数据将被写入发送缓冲器中。

SPI_SR是16位状态寄存器,它的位为RXNE,该位为0则接收缓冲为空,为1则接收缓冲非空;SPI_SR的次低位为TXE,该位为0说明发送缓冲非空,为1则发送缓冲为空。不断地查询发送/接收缓冲区是否为空,进而实现数据的有序发送和接收。

3.2.2 发送指令函数

首先,语音芯片ISD4004有如下操作规则:

(1)串行外设接口,SPI协议设定微控制器的SPI移位寄存器在SCLK下降沿动作,在时钟上升沿锁存MOSI引脚数据,在下降沿将数据送至MISO引脚。

(2)上电顺序,器件延时TPUD(8 kHz采样时,约为25 ms)后才能开始操作。因此,用户发完上电指令后,必须等待TPUD,才能发出下一条操作指令。

例如,从00处放音,应遵循如下时序:

① 发POWER UP命令;

② 等待TPUD(上电延时);

③ 发地址值为00的SET PLAY命令;

④ 发PLAY命令。

器件会从00地址开始放音,当出现EOM时,立即中断,停止放音。

如果从00处录音,则按以下时序:

① 发POWER UP指令;

② 等待TPUD(上电延时);

③ 发POWER UP命令;


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    基于STM32的景点语音自动导览系统的研究与设计;景点语音导览主要有以下几种方式:一种是通过定位系统(GPS)的用户终端接收工作卫星的导航信息,从而解算出车辆的经纬度信息,进而计算出实时坐标,将其......
    ,集成可见光通信与可见光室内定位、WiFi连接和照明三合一功能,可广泛应用于商场导购、精准广告推送、地下停车场导航、机场导航、井下定位、核电站导航、盲人语音导航、室内展馆导览等场景,灿芯......
    多点触控电容TP;自带GPS支持第三方地图应用,内置BT,FM;具有联通3G/2G网络和WIFI网络,便于随时随地上网,更新地图,下载Android等应用,使用科大讯飞语音技术实现语音导航,拨打电话,电台......
    漂亮。 如果还是2499元起的售价,你们要不要支持下?最后要说的是,据悉锤子此次还会发布语音导航和人工智能方面的功能,高德地图罗永浩语音导航版目前已处在上线状态,而语音交互和人工智能等,锤子......
    功能成了他们费劲的事情,而加上语音提示功能,能实现真人语音导航,真人语音提示功能,真人语音教你如何操作按摩椅,方便又简单! NV040D语音芯片在共享按摩椅上的应用方案(语音内容可定制): 1、“欢迎使用XXX品牌......
    便捷的音频体验。 专业音频: 无线麦克风、无线监听系统,在舞台演出、广播和录音棚中广泛使用。 家庭自动化和物联网: 智能音箱、多房间音频系统,通过Wi-Fi或专用协议实现设备间的音频共享和控制。 公共场所: 语音导览......
    猎豹移动旗下的智能服务机器人公司猎户星空。 具体而言,猎户星空智能语音服务机器人豹小秘将在公寓入住、导览翻译场景一显身手;智能交互递送机器人”豹小递“则在点菜送菜方面缓解人力,移动零售机器人还可以现场移动送货。 二、高规......
    达到祛病强身、保健益寿、美容养颜的效果。 在养生足浴盆上置入NV040C语音芯片实现语音提示功能,可语音导航引导操作,提示当前模式和使用状况,更加人性化。并且可以内置多首舒缓音乐,泡脚......
    芯片,实现语音导航提示功能,NV080C语音芯片是我国知名芯片型号NVC语音系列中的一款性能稳定的语音芯片,无需任何外围电路,在极其恶劣的噪声环境下都可正常工作。它实现中英文语音播放,音质优美,是目前语音方案行业流行的高性价比的语音......
    全不失人情味。 消息推送、一键静音、关爱提醒、语音导航、APP连接等5大人性关怀,即使出门在外,也能是知道家人是否按时回家、是否安全,多一份关爱,少一份忧心。打拼夜归人安静进门,不打扰熟睡的家人,让爱......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>