付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
usb接口在通用串行总线中的应用
usb(通用seilbus)是一个通用的线程。由于设备具有自动识别,它可以自动安装驱动程序和配置,支持不同速度的同时和同步传输方式,支持插值和任意输入,并得到广泛应用。PDIUSBD12是Philips在USB1.1协议设备端使用最多的芯片之一。此芯片是带有并行总线和局部DMA传输能力的全速USB接口器件。片内集成了高性能USB接口器件、SIE(串行接口引擎)、FIFO存储器、收发器以及电压调制器等,可与任何外部微控制器/微处理器实现高速并行接口(2MB/s)。此外,D12还集成了SoftConnect、GoodLink、可编程时钟输出、低频晶振等,这使得USB的应用变得简单。其中SoftConnect技术可以人为控制USB的连接与断开而无需拔出电缆。GoodLink技术可提供良好的USB连接指示。1usb传输USB总线发展至今经历了3个主要的阶段:USB1.1、USB2.0、USBOTG(On-The-Go)。由于采用阶梯式星型拓扑结构和以令牌包为主的通信协议,而使得一个主机可以连接高达127个外围设备。USB被设计为可以处理对传输速率、响应时间和错误校正有不同要求的很多类外设。USB的传输类型共有四种,分别是控制传输(ControlTransfer)、中断传输(InterruptTransfer)、批量传输(BulkTransfer)和实时传输(IsochronousTransfer)。四种数据传输类型每一种都处理不同的需要,并且一个外设可以支持它最适合的传输类型。在实体上,USB包含4条线,2条电源线(Vcc和GND),2条差分方式的信号线(D+和D-)。所有USB的沟通都是由主机来启动的,主机硬件中包含USB主机控制器(USBUniversalHostController),负责启动USB系统上的数据交易和根集线器(USBRootHub),负责给USB设备提供连接端口。这两个硬件设备在PC机“设备管理器”中的通用串行总线控制器中可以看到。USB标准设备请求是用来完成USB设备枚举的命令。USB设备要想让主机识别,就必须对标准设备请求做出响应,不管该设备是否已经被分配了一个默认的地址或该设备目前正在配置。所有的标准设备请求都是使用控制传输和默认管道(端口0)来传输的,而USB设备的描述符是USB设备请求中对USB设备的属性说明。标准USB设备有5种USB设备描述符:设备描述符、配置描述符、接口描述符、端点描述符和字符串描述符。2速度差异的缓冲自供电、非DMA方式的连接电路如图1所示。D12的8根数据线直接与DSP的数据线相连。读写使能由CPLD译码DSP的R/W、IOSTRB后提供。当D12在以12Mbps的速度传输并与微控制器并口连接时,存储器管理单元(MMU)和集成RAM作为USB之间速度差异的缓冲区。这就允许微控制器以自己的速度对USB信息包进行读写。SUSPEND引脚直接拉低,使得D12芯片不挂起,但是中断寄存器中的挂起中断仍会置位。在没有使用DMA方式时,DMACK_N、EOT_N上接上拉电阻与Vcc相连。D+/D-信号线上串接18Ω的匹配电阻。3usb主机的中断方式固件设计的目标是使D12在USB上达到最大的传输速率。固件要实现的功能包括:对PDIUSBD12的初始化;响应主机的标准请求,并做出合适的动作;主机要求进行通信时,能够做出应有的响应。这里将固件设计成中断方式(而USB真正意义上的中断就是轮询)。要主机识别一个USB设备必须经过枚举过程,主机使用总线枚举来识别和管理必要的设备状态变换。下面对D12芯片的USB固件编程中设备枚举过程及设备响应进行介绍(本设计中D12芯片采用自供电方式)。(1)usb系统中的d+和d-USB设备经USB总线连接主机。USB设备采用自供电的外部电源供电。主机对USB设备存在与否的检测是通过D+与D-的电平来实现的。也就是说,当D+与D-有电平差达2.5μs以上后,主机就确认设备已连接上了;反之若D+与D-无电平差达2.5μs以上后,主机就确认设备已脱离了。而此时USB总线上的D+和D-皆为低电平,所以设备上电并不意味着此时主机就能够检测到USB设备的存在。D12上电后,挂起引脚为低,默认输出频率为4MHz,此时LED指示为灭。(3)usb总线复位固件程序中设置模式参数(D12_SetMode(0x12,0x03))使得D12芯片的D+引脚软上拉,2.5μs后,主机开始进行总线复位。当总线复位后,给USB设备产生一个复位中断并将D12芯片中断寄存器的总线复位位置位。SoftConnect技术就是与USB的连接通过1.5kΩ的上拉电阻将D+设置为高实现的。1.5kΩ的上拉电阻集成在D12片内,默认不与Vcc相连,通过软件指令可实现连接与断开。这样USB总线的连接可以重新初始化而无需拔出电缆。D12设备在总线复位后,LED会闪烁3次。(4)主机寻址和分配地址USB设备从总线上接收到一个复位信号后,就使用默认地址0来对主机进行寻址;而主机收到设备对默认地址0响应的时候,就对设备分配一个空闲地址,以后设备就只对该地址进行响应。此过程是D12芯片自动完成的,无需编程实现。(5)usb设备回复数据下面是读取数据的过程。(1)读取设备描述符。USB设备收到8006001000004000,回复DeviceDescr={0x12,0x01,0x00,0x01,0xdc,0x00,0x00,0x10,0x71,0x04,0x66,0x06,0x00,0x01,0x00,0x00,0x00,0x19},其中9~12字节为Philips公司的设备ID和产品ID。(2)地址分配。USB设备收到0005020000000000,回复一个空的应答数据包。(3)读取设备描述符。USB设备收到8006001000001200,回复DeviceDescr={0x12,0x01,0x00,0x01,0xdc,0x00,0x00,0x10,0x71,0x04,0x66,0x06,0x00,0x01,0x00,0x00,0x00,0x19}。(4)读取配置描述符。USB设备收到8006000200000900,回复ConfigDescr={0x09,0x02,0x2e,0x00,0x01,0x01,0x00,0x60,0x01},其中第8个字节表示自供电,支持远程唤醒。(5)读取设备描述符集合(配置描述符+接口描述符+端点描述符)。USB设备收到800600020000ff00,回复ConfigDescr={0x09,0x02,0x2e,0x00,0x01,0x01,0x00,0x60,0x01};InterfaceDescr={0x09,0x04,0x00,0x00,0x04,0xdc,0xa0,0xb0,0x00}。此过程不需要主机USB设备驱动程序的支持,此过程完成后操作系统就会弹出“发现新设备”窗口,要求安装USB驱动程序,这就需要我们来安装所需的USB驱动程序,然后固件程序继续执行。(6)usb设备误接接主机依照读取的USB设备描述符来进行配置,如果设备所需的USB资源得以满足,就发送配置命令给USB设备,表示配置完毕。(1)设置配置。USB设备收到0009010000000000,回复返回0字节作为应答。(2)读取配置状态。USB设备收到8008000000000100,回复发送应答00。(3)读取接口状态。USB设备收到800a000000000100,回复发送应答00。此后固件程序枚举和配置成功,LED指示将一直点亮。随后与D12之间成功的传输(带应答)将关闭LED,在通信过程中LED会根据通信状况间歇闪烁。(7)挂起或唤醒后所有挂起当D12没有收到3个帧的起始(SOF)时,将会进入挂起状态,并将挂起改变中断位置1。其实任何挂起或唤醒状态的改变都会将该位置位并产生中断。主机总线保持空闲状态超过3ms以后,设备的驱动程序就进入挂起状态。禁止形成良好晶振的程序在编写USB的固件程序时,还需要注意如下几点。(1)DSP中使用软件查询方式检测D12中的中断寄存器进行通信。(2)在接收到SETUP包后,一定要调用应答SETUP命令来重新使能端口0。一个SETUP信息包的到达会将IN缓冲区刷新并禁止对IN和OUT端点的两条命令:使缓冲区有效和清零缓冲区命令。微控制器需要通过应答SETUP命令重新使能这些命令。(3)在向IN端点写完数据后,一定要调用“使缓冲区有效”命令,指明缓冲区中有数据并且可以发送给主机,这样D12才可以在接收到下一个IN标志时将其送入主机。(4)当读完数据后,一定要调用“清除缓冲区”命令,以保证可以接收新的包。(5)给I/O口发数据时要根据DSP的运行速度加以固定的延时。(6)复位后等待至少3ms再对D12寄存器进行访问,以使得晶振有足够的时间稳定下来。总之,固件程序的开发是USB外设开发中很重要的一个方面。USB已经在各个方面都得到了广泛的应用,随着USB协议和器件的发展,USB必将得到更加广泛的应用,使用好USB器件对以后的系统设计会带来很多方便之处。(2)ep1xxfesEP1_TXDescr={0x07,0x05,0x81,0x03,0x10,0x00,0x0a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年投资项目管理师通关试题库附参考答案详解(综合题)
- 2026年微生物检验技术考试模拟试卷附答案详解
- 航空运输中货物损耗机理分析
- (2026年)老年患者饮食照料课件
- 2026年西藏阿里地区单招职业适应性测试题库含答案详解
- (2026年)何谓肠内营养不耐受课件
- 景宁畲族自治县鹤溪镇招聘社区网格员备考题库附答案详解
- 2025年贵州电网有限责任公司直属部分单位社会招聘10人笔试历年参考题库附带答案详解
- (2026年)风湿免疫科年终工作总结汇报课件
- (2026年)持续炎症-免疫抑制-分解代谢综合征(PICS)诊断要点课件
- 《长方体和正方体》题型讲解(课件)六年级上册数学
- 工业机器人虚拟仿真与离线编程(ABB)课件 第5章 工业机器人喷涂工作站仿真
- DZ∕T 0270-2014 地下水监测井建设规范
- 2024年浙江省绍兴市特种设备检测院招聘11人历年高频难、易点(公共基础测验共200题含答案解析)模拟试卷
- 露天矿山施工组织设计方案
- 《室内装饰装配式施工》课件-装配式装修技术
- 玻璃安装合同
- GB/T 30791-2014色漆和清漆T弯试验
- 噪声污染与控制
- 春潮现代文阅读理解答案
- 管桩应力释放孔施工方案
评论
0/150
提交评论