嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器

所需积分/C币:50 2017-09-20 10:06:21 5.97MB PDF
2
收藏 收藏
举报

嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器, 嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器,
54.3安装CDC设备 54.4测试新的虚拟串行端 55代码如何工作 551初始化 55.2串口任务 5.6分析USB通信 5.6.1获取配置描述符 5.6.2获取和设置线路编码 5.6.3设置控制线路状态 5.64CDC输入/输出数据 5.7总结 第6章HD例程:鼠标 61在AR中打开项目 62配置鼠标实例 6.3构建鼠标实例项目 64运行鼠标实例项目 64.1连接开发板 642启动调试会话 643安装HD设备 644测试新的虚拟串行端口 65代码如何工作 66分析USB通信 661获取配置描述符 66.2获取报告描述符 66.3鼠标输入报告 67总结 第7章MSC例程:移动存储设备 7.1在|AR中打开项目 7.2配置移动存储设备实例 7.21启用和禁用类 7.2.2配置存储容量 7.3构建移动存储设备实例项目 7.4运行移动存储设备器实例 7.41连接开发板 7.4.2启动调试会话 743安装MSC设备 7.44格式化新的移动存储设备 7.45查看新的移动存储设备 746测试新的移动存储设备 75代码如何工作 7.6分析USB通信 7.61获取配置描述符 7.62MSC协议 7.63SCS命令 7.7总结 第8章PHDC例程:通信检测仪 81在|AR中打开项目 82配置PHDC实例 821启用和禁用类 83构建PHDC实例项目 84运行PHDC实例项目 841连接开发板 842启动调试会话 843安装PHDC设备 844测试新的PHDC设备 85代码如何工作 851初始化 86分析USB通信 861获取配置描述符 862获取和设置线路编码 863设置控制线路状态 864cDC输入/输出数据 87总结 第九章供应商类例程:批量同步/异步通信 91在1AR中打开项目 92配置供应商类实例 921启用和禁用类 93构建供应商类实例项目 94运行供应商类实例 941连接开发板 942启动调试会话 943安装供应商指定设备 944测试新的供应商指定设备 95代码如何工作 951同步通信 95.2异步通信 953初始化 96分析USB通信 9.61获取配置描述符 97总结 附录Aμc/ Probe介绍 A.1进一步学习 附录BSTM32F107USB设备驱动程序 B.1STM32F107片上 USB OTG控制器 B2μC/Eva|STM32F107评估板 B3设备驱动约定 B.31端点变量名称 B31端点信息表 B4设备驱动AP 附录C枚举过程 C.1捕捉USB通信 C.11获取设备描述符 C12设置地址 C.13获取字符串描述符 C.14获取配置描述符 C15选择配置 附录DμC/OS川和μC/USB- Device许可政策 D1uC/USB- Device维护更新 D2μC/USB- Device源码更新 D3μC/USB- Device支持 附录E参考资料 第1章简介 USB接口是计算机系统历史上最成功的通信接口,并已成为连接计算机外设的 事实标准。本书是《嵌入式协议栈μC/USB- Device》的第二部分。本书的内容以 μC/Eva-STM32F107开发板和Mcriμm的μc/USB- Device协议栈为基础,演示了如何 通过一个成熟的硬件和软件平台的组合,构建一个UsB设备。 Micrμum的 μC/USB- Device协议栈是专门针对嵌入式系统设计的USB设备协议栈。依靠 Microμm 团队的共同努力,高质量、可伸缩和高可靠性的代码经过了非常严格的验证过程, uC/USB- Device符合USB2.0规范。μC/ Eval-STM32F107开发板的核是 ARM Cortex-M3 MCU,STM32F107运行的时钟频率最高可达 ,包含了高性能外设,如10/100N 以太网MAC、全速 USB OTG接口、CAN控制器、定时器和UART等 本书中的例程涵盖了USB设备的最基本的功能,可以帮助读者理解《嵌入式协 议栈μC/USB- Device》一书中涵盖的USB概念,同时,它们还提供了一个快速构建 USB设备的框架,例如 ■USB转串口适配器(通信设备类) 鼠标或键盘(人机接口设备类) 移动存储设备(大容量存储类) ■USB医疗设备(个人健康设备类) 定制设备(供应商类) 图1-1展示了运行本书中5个例程所需的基本要素 F1-1(1)为了运行书中提供的USB设备应用例程,读者需要一台运行 Windows7及以 上系统的电脑,电脑至少有三个USBA型接口。一个UsB接口用来连接仿 真器,其它两个USB接口用于连接到UsSB协议分析仪,捕获USB通信流用 于协议分析。 F1-1(2) uC/Eval-STM32F107开发板中国版可以从北京麦克泰软件技术有限公司购买 开发板包含两个USB端口。一个USB端口用于开发板供电,另一个USB端 口用于连接STM32F107的USB控制器。关于如何设置开发板的更多信息, 参见第2.2.1“μC/Eva|STM32F107开发板”一节 F1-1(3) Total phase公司的 BeagleTMUSB480协议分析仪是一款低成本、非侵入式的 髙速UsB2.0总线监控仪,支持实时USB类级解码。开发板运行例程并不需 要该工具,但为了更好的理解USB协议,推荐用户使用该工具,如果你正在 开发一个USB设备,它绝对是一个必需品。关于如何连接协议分析仪的更多 信息,参见2.2.2“USB协议分析仪 BeagleTM USB480″一节 Windows pc (6) licripunμc/UsB- Device 应用软件包 Total Phase Data center 软件 IAR uC OS-Ill Windows主机 Embedded workbench uC/ CPU 测试程序 IG/ LIB ARMI uC/ USB-Device [Visual Studio) 应用例程 A USB 8) Windows USB 驱动 Micrium HCProbe A型 ITAG A型 HusB Total Phase uC/ Eval Beagle US4 STMT32F107 USB USB 480 B型 Mhn毛 图1-1sB设备应用例程连接 1-1(4)为了构建和调试例程代码,用户需从AR网站下载 EWARM集成开发环境。还 需要准备丌AG调试工具,例如」-Link。关于安装 EWARM集成开发环境的 更多信息参见212“ AR EWARM”一节。 F1-1(5)本书的配套软件包可以从 Micrium网站下载。软件包中不仅提供了应用实例 还包含μC/oS-Ⅲ源代码和预编译链接库形式的μC/USB- Device代码。此外, 些例程需要定制的 Windows应用程序,这些应用程序也包含在配套软件 包中,以 Visual studio源代码形式提供。关于安装所需的 Micrμum软件的更 多信息参见15“μC/USB- Device书的配套软件”一节。 F1-1(6) Total phase的 Data center软件是一个免费的协议分析软件, Beall le TM USB 480 协议分析仪需配合该软件使用。关于安装 Data center软件的更多信息参见 2.1.4“ Total phase data center软件”一节 F1-1(7)C/ Eval-STM32F107开发板中国版没有内置」Link调试器,用户需准备JTAG 仿真器 F1-1(8)为了运行例程, Windows pc机上需要安装一些驱动。一些例程如实现HD和 MSC类的应用,使用了 Windows本地驱动程序。其他的例程如实现CDC, PHDC和供应商定义类的应用,需要安装本书配套软件包中提供的 Windows 驱动程序 F1-1(9)用户可以从 Micrμm网站下载μc/ Probe的试用版,通过μC/ Probe,在例程 运行时,不仅可以监控应用程序变量,还可以监控μC/USB- Device协议栈和 C/OS的内部变量。关于安装pC/ Probe的更多信息参见2.1.6“uc/ Probe” 节 本书和μC/Eval-STM32F107开发板为创建自己的USB设备感兴趣的工程师提供 了一个很 好的平台 本书提供的应用实例仅作为参考,以协助工程师使用 Micrμm的产品。 Micrμmg公司不允许任何人在没有版权许可的情况下,基于本书中的信息设计 或制造任何USB设备 关于这些例程对任何特定用途的适应性, Microμm不作任何保证、声明或担保, Microμm也不承担由于应用或使用任何实例设计所产生的任何法律责任,并特别声 明,任何和所有法律责任包括间接的或偶发的损害。 11本书的章节内容 图所示为本书的布局和流程。这对于理解各章节和附录之间的关系非常有 帮助。 左边第一列是μC/USB- Device的结构和应用实例。右边两列是各种附录,进一步 解释了第一列章节中的信息。 F1-2(1)第章:介绍,本章。 F12(2)第2章:准备工作。本章叙述了从准备测试环境到运行C/ USB-Device例子的 过程。叙述了从何处下载和如何安装所需要的软件,以及如何连接所需的硬 件 F1-2(3)第3章: LAR EWARM。本章简要介绍了 IAR EWARM集成开发环境及如何编译 和调试嵌入式应用。 F1-2(4第4章:例程任务模型。本章叙述了书中介绍的所有基于μC/OS-Ⅲ的例程的 任务模型。例程中大多数任务是相同的 F1-2(5)第5章:应用实例#1:通信设备类。本章叙述了如何使μC/USB- Device协议 栈启动和运行起来。它展示了如何使用CDC类和ACM子类,通过一个虚拟 CoM端口,从UsB设备发送和接收串行数据。还介绍了作为开发USB应用 不可缺少的工具, Total phase的UsB协议分析仪。 介绍 准备工作 (2) (3 IAR EWARM 4) (A) 例程任务模型 uC/Probe uc/USB-Device(5)uc/USB-Device (B) 应用实例# STM32F107驱动 枚举过程C CDC-ACM uC/USB-Device 应用实例#2 HD类 uC/USB-Device(7 应用实例#3 HC/USB-Device (8) 应用实例#4 应用实例# 授权政策/0) 参考书月/ Vendor 图1-2本书内容布局安排 F1-2(6)第6章:应用实例#2:人机接口设备。本章叙述了一个使用输入报告符发送 信息给主机计算机的模拟鼠标。它主要控制鼠标指针在wⅰ ndows主机中来 回移动。通过分析 Beagle USB480协议分析仪捕捉到的一些重要的USB总 线通信事务,帮助用户更好的理解《嵌入式协议栈μC/USB- Device》书中 描述的USB原理。 F1-2(7)第7章:应用实例#3:移动存储设备。本章叙述了如何使用μC/USB- Device 协议栈和MSC类创建一个固态USB存储设备。叙述了如何运行该实例,并 通过分析代码和捕获的USB通信流,解释了例程是如何工作的 F1-2(8)第8章:应用实例#4:个人健康设备类。本章提供了Mcriμ m PHDC类实现 的一个示例。用户可以使用该示例作为基础,创建基于USB连接的医疗设 备;由于例程还提供了与PHDC设备接口的 Visua| Studio windows工程,用 户可以参考该例程,创建其相应的 Windows主机应用 1-2(9)第9章:应用实例#5:供应商指定类。如果你的∪SB应用不符合任何前面描 述的USB 类定义,你可以使用供应商指定类来定义自己的应用。本章描述了一个定义 USB供 应商指定类的实例。 F1-2(10)附录:p 介绍。本附录提供了卩 产品的简单介绍,它让 用户可 以很方便的修改和显示目标系统变量的实时变化。 F1-2(11)附录B:STM32F107μC/USB- Device驱动。本附录提供了μC/ USB-Device STM32F107USB控制器驱动的简单描述 F1-2(12)附录C:枚举过程。本附录根据USB通信捕获,提供了枚举过程的简单描述。 F1-2(13)附录D:μC/OSⅢ和μc/UsB- Device授权政策。 F1-2(14)附录E:参考书目。 12致谢 感谢 Micrelμm的USB团队,他们不仅提供了顶级的 USB Device协议栈,还提供 了书中所有原始的资料(针对 Renesas rx63N平台)。 感谢ST公司Mr.Do ugnon和Mr. Olivier Brun,他们的优秀团队设计了 μC/Eva|-STM32F107评估板和撰写了用户指南。感谢ST中国公司支持开发和生产u c/Eva-STM32F107中国版。感谢AR公司的支持, EWARM是一个很优秀的开发工 具,读者一定会很喜欢在μC/Eval-STM32F107评估板上使用 EWARM运行 μC/USB- Device例程。还要感谢 Total phase提供了 Beagle USB480协议分析仪的样品 该协议分析仪和他们的 Data center软件是一个优异的工具,我们认为它们是开发基 于USB应用不可或缺的工具。 10

...展开详情
试读 127P 嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器
立即下载 低至0.43元/次 身份认证VIP会员低至7折
抢沙发
一个资源只可评论一次,评论内容不能少于5个字
上传资源赚积分or赚钱
    最新推荐
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器 50积分/C币 立即下载
    1/127
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第1页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第2页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第3页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第4页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第5页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第6页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第7页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第8页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第9页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第10页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第11页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第12页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第13页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第14页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第15页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第16页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第17页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第18页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第19页
    嵌入式协议栈uCUSB-Device应用开发——基于STM32微控制器第20页

    试读结束, 可继续阅读

    50积分/C币 立即下载 >