- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《USB Mass Storage学习笔记-STM32+FLASH实现U盘》.pdf
USB Mass Storage 学习笔记-STM32+FLASH 实现 U 盘 一、 内容概述 采用 STM32 内部自带 USB 控制器外加大页 NAND FLASH K9F1G08U0A 实现一个 128M 的U 盘。 1 、STM32 的USB 控制器 STM32F103 的MCU 自带USB从控制器,符合USB规范的通信连接;PC主 机和微控制器之间的数据传输是通过共享一专用的数据缓冲区来完成的,该数据 缓冲区能被USB外设直接访问。这块专用数据缓冲区的大小由所使用的端点数 目和每个端点最大的数据分组大小所决定,每个端点最大可使用512字节缓冲 区,最多可用于16个单向或8个双向端点。USB模块同PC主机通信,根据USB 规范实现令牌分组的检测,数据发送/接收的处理,和握手分组的处理。整个传 输的格式由硬件完成,其中包括CRC的生成和校验。 每个端点都有一个缓冲区描述块,描述该端点使用的缓冲区地址、大小和 需要传输的字节数。 当USB模块识别出一个有效的功能/端点的令牌分组时,(如果需要传输数据 并且端点已配置)随之发生相关的数据传输。USB模块通过一个内部的16位寄存 器实现端口与专用缓冲区的数据交换。在所有的数据传输完成后,如果需要,则 根据传输的方向,发送或接收适当的握手分组。 在数据传输结束时,USB模块将触发与端点相关的中断,通过读状态寄存 器和/或者利用不同的中断来处理。 USB的中断映射单元:将可能产生中断的USB事件映射到三个不同的NVIC 请求线上: (1)USB低优先级中断(通道20) :可由所有USB事件触发(正确传输, USB复位等)。固件在处理中断前应当首先确定中断源。 (2 )USB高优先级中断(通道19):仅能由同步和双缓冲批量传输的正 确传输事件触发,目的是保证最大的传输速率。 (3 )USB唤醒中断(通道42) :由USB挂起模式的唤醒事件触发。 图 1、USB设备框图 2、大页NAND K9F1G08 Nand flash 以页为单位读写数据,而以块为单位擦除数据。根据NAND 的容量等级又将NANDFLASH分为大页NAND和小页NAND;K9F1G08就是大页 NAND,它的页大小为(2K+64)Byte,块大小为(128K+4K )Byte。K9F1208U0M 为小页NAND,它的页大小为(512+16)Byte,块大小为(16K+512 )Byte。 由于写数据至FLASH时,只能将指定的位变为0,而不能将指定的位变位 1。因此在写一个页的数据前,必须先擦除(将所有的位全部置1),否则写数 据会失败。 在编制FLASH的读写程序时,需要传递三个参数,要操作的地址,要操 作的数据缓存,要操作的数据长度;在写操作时,还要有擦写和坏块管理。 3、USB Mass storage Bulk Only Mass Storage类支持两个传输协议: 1、Bulk-Only 传输(BOT) 2、Control/Bulk/Interrupt传输(CBI) Mass Storage类规范定义了两个类规定的请求:Get_Max_LUN和Mass Stor age Reset,所有的Mass Storage类设备都必须支持这两个请求。 Bulk-Only Mass Storage Reset(bmRequestType and bReques t=)用来复位Mass Storage设备及其相关接口。 Get_Max_LUN(bmRequestType= and bRequest=)用 来确认设备支持的逻辑单元数。Max LUN的值必须是0~15。注意:LUN是从0开 始的。主机不能向不存在的LUN发送CBW。
您可能关注的文档
- 《UL_758-2016中文版(电气布线)》.pdf
- 《UL_790_standard_test_methods_for_fire_tests_of_roof_coverings》.pdf
- 《UL_817_中文版_工厂测试指引_插头检验规范》.pdf
- 《UL_94(UL)》.pdf
- 《UL_Lithium Batteries》.pdf
- 《UL_Traceability_Requirements-英文版》.pdf
- 《ul_traceability_requirements》.pdf
- 《UL与ETL认证产品设计和生产的相关要求指》.doc
- 《UL之塑料阻燃等级试验》.ppt
- 《UL全球服务协议翻译》.docx
最近下载
- 计算机视觉 第7章 摄像机成像模型.ppt VIP
- 2025年部编版新教材语文二年级上册第三单元教案设计.docx
- 宠物医院一例猫血栓诊治方案.pdf VIP
- 史铁生的课件.pptx VIP
- 2024-2025学年广东省深圳市南山育才集团九年级(上)期中语文试卷.doc VIP
- 北师大版七年级下册 第2章平行线 ---纸片翻折问题 专题练习(word版、含解析).docx VIP
- 2025-2026学年八年级数学上学期第一次月考01(江西专用,人教版2024八年级上册第十三章_第十四章)【含答案】.docx
- 介绍信 接洽函.docx VIP
- 2025年-2025秋形势与政策课件携手周边国家共创美好未来.pdf
- 第05讲 平行线中的翻折问题解题技巧(含解析)-2021-2022学年七年级数学下册常考点.pdf VIP
文档评论(0)