
引言 本用户手册将介绍STM32Cube扩展包的内容,该扩展包可从STM32应用连接到Alexa Voice Service(AVS)。 X-CUBE-VS4A扩展包提供应用示例,将STMicroelectronics板连接到Amazon服务器,以便在STM32器件上轻松实现面向AVS的产品。 X-CUBE-VS4A扩展包由一组库和基于STM32F7系列微控制器(充当支持Alexa的器件)的应用示例组成。 X-CUBE-VS4A在32F769IDISCOVERY板上运行。它具有可直接运行的固件示例,用于演示简单智能音箱的实现。 X-CUBE-VS4A提供了下列功能: • 板配置接口 • TCP/IP连接功能 • AVS协议封装,便于轻松实现应用 • 应用特定的服务 • 用于Alexa Voice Service的STMicroelectronics框架 • 创建面向AVS的STM32应用 • 可替换的基础音频采集 • 有限音频播放器示例 注:X-CUBE-VS4A不包含用于音频前端增强的软件,也不包含需要与所有不同的音频服务兼容的 完整媒体播放器 1概述 本用户手册将介绍X-CUBE-VS4A扩展包和STVS4A语音服务中间件。侧重点在于说明其使用,而不是解释Alexa架构或AVS帐户创建。后者的相关说明可以在Amazon网站和开发者网站上找到: X-CUBE-VS4A扩展包在STM32基于Arm®(a) Cortex®-M处理器的32位微控制器上运行。 表 1给出了相关术语和缩略语的定义,帮助您更好地理解本文档。 ![]() 2关于安全的重要说明 注意: 应用开发人员必须注意安全方面,并通过实施机制来保护用于连接AVS的令牌和密钥。 X-CUBE-VS4A扩展包中提供的应用示例未实施此类机制。它只提供了一个基本实现,以便理解栈接口。 3软件包说明 本章详述了X-CUBE-VS4A扩展包的内容和使用。 3.1概述 X-CUBE-VS4A扩展包基于STVS4A,是支持基于STM32的Alexa Voice Service器件设计的软件开发套件。STVS4A具有服务API,用于连接AVS服务器和与服务器协商身份验证。STVS4A还为接收指令和向服务器发送事件提供支持。此外,STVS4A提供一组音频支持,包括麦克风采集和音频回放。通过添加外部元件, STVS4A支持可扩展至文字识别。 STVS4A支持Alexa Voice Service API版本v20160207。 可支持以下集成开发环境: •IAR Embedded Workbench® for Arm® (EWARM) •Keil®微控制器开发套件(MDK-ARM) •System Workbench for STM32 注: 有关所支持IDE版本的信息,请参阅软件包根文件夹中的版本说明。UM2354 Rev 1 [English Rev 2] 9/30 3.2架构 图 1概括了X-CUBE-VS4A软件架构。 ![]() X-CUBE-VS4A是STM32Cube的扩展包,它: •完全兼容STM32Cube架构 •扩展STM32Cube用于支持AVS的应用的开发 •使用STM32微控制器的硬件抽象层STM32CubeHAL 除了第 3.1节:概述中所述的功能,X-CUBE-VS4A扩展包和STVS4A中间件还具有以下功能: •STVS4A为配置提供API,该API主要用在初始化阶段。 •STVS4A还提供一个API,用于通过应用自定义某些服务,例如访问持久存储器以加载和保存AVS令牌。 •STVS4A使用事件驱动的架构。初始化后,STVS4A主要使用通知与用户应用通信。通知是包含一个或多个参数的代码。参数是取决于事件的不透明变量。它可以理解为整数、结构指针、句柄或任何其他含义。参数的含义记录在事件文档中。 •移植层用于自定义应用特定的环境中的STVS4A中间件。自定义确保与可能不同的MCU、网络和音频接口的连接。 •应用和中间件组件在FreeRTOS™环境中运行。 •HTTP/2是与AVS服务器交互所使用的主要通信协议。 X-CUBE-VS4A提供一个库,用于管理该协议。 •LwIP负责TCP/IP通信服务。由MbedTLS元件提供加密。 •STM32Audio为音频输入和输出以及MP3解码提供库。 •X-CUBE-VS4A扩展包是STM32Cube生态系统的一部分。它依赖其BSP和HAL驱动。 3.3文件夹结构 图 2给出了X-CUBE-VS4A扩展包的文件夹结构。 ![]() 完整版请查看:附件 |
DM00473808_ZHV1.pdf
下载792.92 KB, 下载次数: 0
【有奖体验】STM32Cube通过Clang/LLVM支持进一步简化代码开发
STM32CubeMX应用结构选择指南
经验分享 | STM32CubeMX 生成时钟获取函数的分析
兔哥的最强U5图显【000】——U5G9最小系统绘制
兔哥的ST67——【000】ST67模组订购
基于LORA的环境感知系统
经验分享 | 使用CubeMx配置NVIC时为何不见子优先级?
经验分享 | 三个 ADC 同步模式配置以及 CubeMx 错误配置的解决方法
兔哥的边缘AI【001】——DIY-STM32N6全IO扩展板
兔哥的BLE【002】-WB09最小系统板PCB设计