- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5我的基于STM32的USB学习笔记
对USB的初步了解:
1、USB的优点:
可以热插拔,即插上后可以自动识别;
系统总线供电,USB共有四根线,一根电源线,一根地线,一根D+线,一根D-线,D+和D-线是差分输入线;
可以支持多种设备,且扩展容易,通过HUB可以再一个主机上连接多个设备
传输数据的速度快,最快可达480Mbit/s
方便的设备互联:在没有主机的情况下,实现点到点的通信(还可以实现主从互换)(USB OTG)
2、USB的基本规范:
USB1.0/1.1 低速情况下1.5Mbit/s:键盘、鼠标等
全速情况下12Mbit/s:U盘、CD-ROM
USB2.0 高速达到480Mbit/s:音频设备、显示器等
USB OTG 设备到设备的传输
3、USB设备类规范:
大容量存储设备类(Mass Storage Device)U盘、CD-ROM等
人机交互设备类(Human Interface Device)键盘、鼠标、游戏手柄
语音设备类(Audio Device)麦克风、音响等
通信设备类(Communication Device)电话、调制解调器等
打印机设备类(Printer Device)打印机
监视设备类(Monitor Device)显示器、摄像头等
4、USB逻辑上分为3:信号层,协议层,数据传输层
协议层:
包是USB系统中信息传输的基本单位,所有的数据都是经过打包后在总线上传输的。
包由6部分组成:同步字段(SYNC);包标识符(PID);地址字段(ADDR);数据字段(DATA);检验字段(CRC);包结束(EOP)
包标识符(PID):令牌包(Token)(输出,输入,帧起始,建立),数据包(DATA)(数据,数据1),握手包(Handsnake)(确认,不确认,停止),专用包(Special)(前同步)
5、USB协议提供4种数据传输方式:
控制传输:突发,非周期性,由主机发起,用于命令和状态的传输
同步传输:周期性,持续性的传输,用于传输与时效相关的信息,并且在数据中保存时间戳的信息
中断传输:周期性,低频率,允许有限延迟的通信
大容量的数据传输:非周期性,大容量突发数据的通信
6、USB描述符:
1)设备描述符:描述设备的类型、厂商信息、USB的协议类型、端点的报数据的最大长度等,每个USB设备只有一个Device Descriptor
2)配置描述符:每个配置描述符提供了设备特定的配置,描述了设备的接口和端点的性质、供电模式、设备的耗电
3)接口描述符:描述了设备的不同接口的特性,例如,一个设备U盘的功能,又有键盘的功能,用两个接口描述符分别描述两个功能
4)字符串描述符:描述了设备制造商、设备名称、何序列号等信息
基于STM32制作USB的过程
STM32的USB模块特性:
遵循USB2.0全速设备标准
支持双向8个端点,8个IN端点和8个OUT端点(每个端点最大可使用512字节)
[ 每个端点都有一个缓冲区描述块,描述该端点使用的缓冲区地址、大小和需要传输的字节数]
硬件实现CRC自动生成/校验,NRZI编码/解码和bit-stuffing(位插入,位填充)
支持控制传输、中断传输、大容量传输和同步传输四种传输方式
支持USB的挂起和/唤醒
***USB设备的实现过程***
系统初始化
初始化系统时钟,设置USB时钟
配置USB中断,选择通道,设置优先级,使能中断
配置GPIO
USB的初始化,对描述符、设备的端点接口等的初始化
FLASH的初始化
USB的枚举
枚举过程就相当于主机和设备建立连接的过程(接头),Host向Device询问一些东西,Device将自身的设备类型,如何进行通信报告给Host,这样,Host就知道怎么对Device进行操作。
在枚举过程中就是如何处理好SETUP事件,如果STM32 USB接收到正确的SETUP事件,将响应函数CTR_SETUP0(),此事件是特殊的OUT事件,数据方向Host-Device,SETUP事件数据长度固定为8。
在USB插入主机时,主机首先需要先对USB设备进行供电
接着USB总线复位:
设置分组缓冲区描述表起始地址;
初始化端点0,设置发送和接收状态。默认所有的设备地址和端口地址都会初始化为0.
USB主机往端点0的0地址位置发送获取设备描述符的请求。
/*发送请求属于控制传输的建立过程,控制传输包括建立过程,可选数据过程及状态过程,首先是主机发送一个令牌,其次是发送的数据,最后设备回应一个应答(握手包)*/
4、获取设备描述符信息
设备在接收到请求以后,首先需要对主机发送来的命令进行解析,并将要发送给主机的描述符信息填入USB缓冲区中,等待USB主机发
您可能关注的文档
- 3《电子信息技术导论》课程教学大纲.doc
- 3专业—微机信息管理与多媒体技4-Authorware.doc
- 3个月的宝宝的护理.doc
- 3下小学科学实验操作能力评价标准三下(滨城).doc
- 3个项目分析.doc
- 3三相异步电动机点动长动控制线路点动与长动混合控制识读.doc
- 3以种植业为主的农业地域类型(必修2).doc
- 3会计基础__会计等式与复式记账.doc
- 3住宅楼施工组织设计.doc
- 3六年级牛津英语6B(Unit3)附听力和答案.doc
- 2025中国冶金地质总局所属在京单位高校毕业生招聘23人笔试参考题库附带答案详解.doc
- 2025年01月中国人民大学文学院公开招聘1人笔试历年典型考题(历年真题考点)解题思路附带答案详解.doc
- 2024黑龙江省农业投资集团有限公司权属企业市场化选聘10人笔试参考题库附带答案详解.pdf
- 2025汇明光电秋招提前批开启笔试参考题库附带答案详解.pdf
- 2024中国能建葛洲坝集团审计部公开招聘1人笔试参考题库附带答案详解.pdf
- 2024吉林省水工局集团竞聘上岗7人笔试参考题库附带答案详解.pdf
- 2024首发(河北)物流有限公司公开招聘工作人员笔试参考题库附带答案详解.pdf
- 2023国家电投海南公司所属单位社会招聘笔试参考题库附带答案详解.pdf
- 2024湖南怀化会同县供水有限责任公司招聘9人笔试参考题库附带答案详解.pdf
- 2025上海烟草机械有限责任公司招聘22人笔试参考题库附带答案详解.pdf
文档评论(0)