STM32Cube™ USB 主机库
前言
本文档描述 STM32Cube™ 的 USB 主机库中间件模块。
众所周知,通用串行总线 (USB)是介于作为主机的个人计算机 (PC)与所连接的 USB 外设之间的事实通信标准。目前嵌入式便携设备数量日益增多,USB 主机已不再局限于 PC,嵌入式消费终端与工业设备作为主机已越来越普遍,而嵌入式主机功能有限,仅支持特定的USB 类 (比如大容量存储类、虚拟通信端口等)或特定的供应商设备。
本文档详细描述了 STM32Cube™ USB 主机库,即在 STM32CubeF2 和 STM32CubeF4 软件包中所提供的 USB 主机协议栈。它使用 STM32 微控制器作为 USB 嵌入式主机,与各种USB 类的 USB 外设进行通信 (MSC、 HID、 CDC、音频和 MTP)。
STM32Cube™ 软件包是一款免费解决方案,可以从意法半导体网站下载:http://www.st.com/stm32cube。
1 STM32Cube™ 概述
STMCube™ 计划源自意法半导体,旨在通过减少开发的工作量、时间与成本,使开发者受益。 STM32Cube™ 将涵盖 STM32 全线产品组合。
STM32Cube™1.x 版包括:
• 图形软件配置工具 STM32CubeMX,可通过图形向导生成初始化 C 代码。
• 针对每个系列提供综合的嵌入式软件平台,(比如用于 STM32F4 系列的 STM32CubeF4)
– STM32 抽象层嵌入式软件 STM32Cube HAL,确保用户应用在 STM32 各个产品之间实现最大限度的可移植性。
– 一套中间件组件,比如 RTOS、 USB、 TCP/IP、图形处理。
– 一整套例程用于演示所有嵌入式软件功能。
2 简介
本文档描述 STM32Cube 的 USB 的主机库中间件模块。
USB 主机库处于 STM32Cube USB 主机 HAL 驱动之上。该库提供用于访问各类 USB 设备的API。
USB 主机模块可用于实现主要的 USB 类。
• 大容量存储类 (MSC)
• 人机接口鼠标与键盘类 (HID)
• 通信设备类 (CDC)
• 音频类 (AUDIO)
• 媒体传输协议类 (MTP)
除了以上所列的类以外,用户还能通过库提供的 API 来实现自己的应用类别
该库可单独运行也可以运行在 RTOS 模式之下。该库还支持多实例,比如可以在两个或更多的 USB 主机模块上工作。
|