STM32USB设计原理
6页1、广州虹科电子科技有限公司http:/STM32 USB设计原理首先,我们来看看USB的工作过程。 当USB设备接入到主机时,主机开始枚举USB设备,并向USB设备发出指令, 要求获取USB设备的相关描述信息,其中包括设备描述(device descriptor)、配置描述(configuration descriptor)、接口描述(interface descriptor)、端点描述(endpoint descriptor)等。这些信息是通过端点0(endpoint 0)传送到主机的。获取各种描述信息后,操作系统会为其配置相应的资源。这样主机就可以与设备之间进行通信了。 USB通讯有四种通讯方式控制(control)、中断(interrupt)、批量(bulk)和同步( synchronous)。USB通讯是通过管道(pipe)实现的。管道是一个抽象的概念,指的是主机与设备之间通讯的虚拟链路。比如说一个USB通讯主机A和设备B,其中有bulk in(批量输入)、bulk out(批量输出)、control out(控制输出)三种通讯方式,那么A与B之间的通讯管道就有三个。(这里明确一
2、个概念,在USB通信中数据流向都是相对设备来说的,in表示设备向主机传送数据,out表示表示主机箱设备传输数据)。在设备一端,每个管道对应一个端点,端点配置相关的寄存器和缓冲区。在通讯之前需对端点进行相关设置。在通信中,只需向缓冲写或读数据,并置位相关比特位即可。 下面具体从USB的中断输入输出来讲述基于keil C mdk开发环境的STM32的USB接口单片机程序设计。值得一提的是,ST或相关公司给我们提供许多封装函数和相关例子,我们可以根据其中的例子并进行修改即可实现我们自己需要的USB通讯程序。1.USB描述符配置 从上面的讲述可以看出,USB描述符是USB通讯的前提。主机必须先了解设备后才能与其进行通讯。在ST提供的例子中,描述符都在USB_des.c文件进行定义,下面就其中的Joystick例子说明USB描述负的配置。1.1设备描述符const u8 Joystick_DeviceDescriptorJOYSTICK_SIZ_DEVICE_DESC = 0x12, /*本描述长度*/ USB_DEVICE_DESCRIPTOR_TYPE, /*指明为设备描述符*/ 0x00,
3、 0x02, 0x00, 0x00, 0x00, 0x40, /*最大数据包大小为64字节(对于端点0而言)*/ 0x84, /*生产商ID*/ 0x19, 0x06, /*产品ID*/ 0x04, 0x00, 0x02, 1, 2, 3, 0x01 /*配置描述符数目*/ 设备描述符两个重要参数是生产商ID和产品ID,主机将根据以上两个ID为设备选择相应驱动程序。在我们的应用中,我们一般只需修改例子中的这儿两个参数即可完成设备描述符的设置。1.2配置描述符const u8 Joystick_ConfigDescriptorJOYSTICK_SIZ_CONFIG_DESC = 0x09, USB_CONFIGURATION_DESCRIPTOR_TYPE, JOYSTICK_SIZ_CONFIG_DESC, 0x00, 0x01, /*接口数目*/ 0x01, /*Set_Configuration命令所需要的参数值*/ 0x00, /*描述该配置的字符串的索引值*/ 0xE0, /*供电模式的选择,bus供电、自供电、支持wakeup*/ 0x32, /*最大供电电流*/* 接口1配
《STM32USB设计原理》由会员工****分享,可在线阅读,更多相关《STM32USB设计原理》请在金锄头文库上搜索。
中学生心理健康教育的方法途径
2022年新闻记者个人年终总结范本
2022幼儿园后勤工作计划2022
夏县碳基新材料项目建议书_范文模板
B090104 大跨度巷道锚、梁、网、索耦合支护及数值模拟分析
2023小学体育教学工作计划模板(三篇).doc
用电监察(检查)员—高级技师要点(DOC 25页)
建筑劳务分包合同范文(2篇).doc
走向成熟演讲稿
2021年08月2021年广东汕头市澄海区卫生健康局下属事业单位招考聘用100人冲刺题(答案解析)
2023年大学教研室工作计划(必备8篇)
西部水泥低氮燃烧脱硝技术验收监测报告02
和的word如何分段插入页码和设置“第几页共几页”的页脚
小学数学核心素养的内涵与价值
2023爱护公物演讲稿合集15篇
校企实习协议
口腔专科洁净手术部的感染控制及管理
市场营销基础教学教案
电动吊篮租赁合同参考范本(9篇).doc
幼儿园小班个案观察笔记《我不想画》
2023-01-20 13页
2024-02-14 40页
2023-08-03 11页
2024-01-20 2页
2023-02-01 6页
2024-02-10 6页
2023-03-14 6页
2022-10-10 34页
2022-08-03 77页
2023-08-09 10页