USB设备的开发一般包括主机端(上位机)驱动程序的开发(如果您的USB设备符合某一标准设备类且主机端已经提供了此类设备的驱动程序的话,则可以省掉此步骤)和USB设备端驱动程序的开发,有时还可能包括主机端应用程序的设计工作。
1、设备系统需求分析
设备系统需求分析是进行USB设备设计的第一步,通过对USB设备功能特性和USB主机端操作系统的分析,可以获得实现该USB设备的软硬件设计需求。
在该阶段,设计者需要充分了解该设备的应用环境(如USB主机的软件、硬件平台),这样以用来确定是否需要提供USB主机端相关软件工作,以便该设备能得到广泛地应用。为了提供合理的软硬件设计方案,设计者还需要充分了解市场上的USB接口芯片,不同的USB接口芯片在USB协议上有着不同程度的支持,比如,对数据包地址的硬件自动识别、CRC16和CRC5的自动生成等等。
当然,在确定具体的软硬件需求时,产品的开发费用和开发周期也是必须考虑的因素。
2、设备硬件需求
通过设备系统需求分析,以及对市场上USB接口芯片的充分了解,设计者必须确定相应的设备硬件结构以及可能采用的硬件。在选择器件时,需要考虑到器件体积、功耗等,因为,小的设备功耗,有利于采用总线供电模式。必须通过设备系统的功耗来确定是否需要提供本地电源。
3、设备软件需求
在确定了设备的硬件结构以后,该设备的软件结构就会同时产生。不同的硬件平台,可能需要不同程度的软件支持。
4、设备硬件设计
在选定USB控制芯片以后,如果是带USB接口的单片机,则是一般单片机应用系统的开发;反之,就是如何把USB接口芯片与单片机应用系统融合的问题。一般USB接口芯片都支持多种并行总线结构(复用/非复用),可以方便的与多种单片机接口。硬件设计中要注意的就是USB接口芯片的时钟速度比较高,所以匹配网络的设计以及PCB布线要特别关注。
5、设备软件设计
USB设备的软件设计主要包括两部分:一是USB设备端的软件开发,主要完成USB协议处理与数据交换以及其它应用功能程序。二是主机端的程序,由USB通信程序(驱动程序)和用户服务程序两部分组成,主机端用户服务程序通过USB通信程序(驱动程序)与系统USBDI(USB Device Interface)通信,由系统完成USB协议的处理与数据传输。主机端程序的开发难度比较大,程序员不仅要熟悉USB协议,如果需要开发主机端驱动程序的话,还要熟悉主机端操作系统(如常用的WINDOWS系统)体系结构并能熟练运用DDK工具(驱动程序开发工具)。
6、设备调试
要快捷、成功的开发一个USB设备,正确、合理的调试方法是必不可少的环节。调试基本分三步进行:首先对外部设备(单片机部分)借助PC调试软件(常用的有:bus hound、USB MONITOR,某些芯片生产商还提供针对特定芯片的调试软件)将设备端的USB协议(主要有描述符请求、端口配置、地址设置以及基本数据交换)调通(当然我们还可以使用USB分析仪等开发设备,但此类设备一般比较昂贵)。然后,用调试好的USB设备接口来开发、调试PC软件,这一步相对比较容易。最后,加上USB设备端的其它用户程序,对整个完整的系统进行系统调试。
关键字:USB 开发基础 USB设备 开发流程
引用地址:
USB开发基础:USB设备的开发流程
推荐阅读最新更新时间:2024-05-03 00:20
Microchip高性能USB、LCD及通用8位PIC系列再添12位ADC
12款新型PIC18单片机迎合需高分辨率模数转换功能的先进传感器设计,为外部模数转换器节省成本并化繁为简 全球领先的单片机和模拟半导体供应商——Microchip Technology Inc.(美国微芯科技公司)宣布推出12款全新的高性能、8位闪存单片机,其中包括该公司首款集成片上高速12位模数转换器外设的USB及LCD单片机系列。三个新产品系列共备有16种集成高分辨率片上模数转换器的高性能PIC18 单片机,扩展了Microchip通用PIC18F4523系列产品线并极大地丰富了客户的选择。 在这三个新产品系列中,PIC18F8723大容量存储器通用系列提供丰富的外设集以及高达10 MIPS的卓越性能;PIC18F4553
[单片机]
纳微GaNFast功率IC在中国USB PD快充产业高峰论坛大放异彩
纳微(Navitas) 宣布将在5月25日召开的2018(夏季)中国USB PD快充产业高峰论坛上展示业界领先的GaNFast™功率IC和用其开发的世界上最小并且最快速的USB-PD充电器产品。 纳微联合创始人、首席技术官兼首席运营官Dan Kinzer表示:“我很荣幸获邀在中国USB PD快充产业高峰论坛发言。GaNFast技术使得设计人员能够将频率提高10倍至20倍,提高效率、减小尺寸并降低系统成本。我们共同创造出价格廉宜并且尺寸比手掌还要小得多的快速充电器产品,可以轻松滑入口袋,十分轻巧。” 诚邀关注最新GaNFast器件的参观者出席Dan Kinzer先生题为“高密度USB-PD充电器:一起使用GaNFast!
[嵌入式]
赛普拉斯推出全球首款USB Type-C端口控制器样片
赛普拉斯CCG1 Type-C端口控制器系列采用其PSoC 4可程序设计片上系统架构, 可助力顶级PC OEM的产品快速上市。 USB市场的领导者赛普拉斯半导体公司日前推出业界第一款集成可程序设计USB Type-C端口控制器样片。USB Type-C标准正在迅速获得顶级PC厂商支持,其小尺寸、易用型连接器和线缆能够传输多种协议的数据,并具有传送最大100瓦的电力的能力 与之前7.5瓦的标准相比有了显著改进。这些厂商都在热切盼望着此控制器解决方案的推出,以便将革命性的 新一代线缆、电源适配器、笔记本和显示器推向市场。 CCG1 Type-C端口控制器基于赛普拉斯的PSoC 4可编程片上系
[嵌入式]
Silicon Labs参考设计简化USB Type-C移动电源充电宝开发
电子网消息,Silicon Labs(芯科科技)日前推出简化USB Type-C™可充电锂离子电池组开发的完整参考设计,用于为智能手机、平板电脑、笔记本电脑、耳机和其他便携式设备提供电源。该参考设计包括开发人员采用USB Type-C电能传输(PD)创建双角色端口(DRP)应用所需的所有资源,能够加速新型USB Type-C充电宝的开发或将现有USB Type-A充电宝设计迁移到USB Type-C。Silicon Labs的USB Type-C充电宝参考设计包括开发板、USB Type-C PD协议栈、示例代码、原理图和硬件手册。 DRP充电宝参考设计利用Silicon Labs Simplicity Studio中包括的P
[半导体设计/制造]
基于LabVIEW的USB实时数据采集处理系统的实现
通用串行总线USB(Universal Serial Bus)作为一种新型的数据通信接口在越来越广阔的领域得到应用。而基于USB接口的 数据采集 卡与传统的PCI卡及ISA卡相比具有即插即用、热插拔、传输速度快、通用性强、易扩展和性价比高等优点。 USB 的应用程序一般用Visual C++编写,较为复杂,LabVIEW语言是一种基于图形程序的编程语言,内含丰富的数据采集、数据信号分析分析以及控制等子程序,用户利用创建和调用子程序的方法编写程序,使创建的程序模块化,易于调试、理解和维护,而且程序编程简单、直观。因此它特别适用于数据采集处理系统。利用它编制USB应用程序,把LabVIEW语言和USB总线紧密结合起来的数
[测试测量]
基于ARM的嵌入式USB图像采集与显示
引言 目前市场上大部分的图像采集与处理系统是基于DSP 芯片的,这种图像采集与处理系统成本高、功耗高、体积约束等特点并不适用于一些简单的应用。随着USB 摄像头的普及和基于ARM 的嵌入式芯片的快速发展,将二者结合的便携性越来越受人们欢迎。本文介绍了一种基于三星S3C2440A 芯片的嵌入式USB 摄像头图像采集与显示方案,该方案具有良好的可移植性和扩展性,并且成本、大小和实时处理都能够满足市场需求。 1 系统架构 系统通过当前市场上应用最广泛的中芯微公司生产的zc301p 芯片的USB 摄像头进行图像采集,然后将图像信息传送到ARM 芯片中进行处理,最终通过基于Qt/Embedded 编写的图形显示程序在
[单片机]
STM32 USB软件移植注意事项 及硬件接线注意
移植了个自定义HID USB程序到STM32开发板上,成功运行,但是最近自己做的板子上(用的是F103C8T6)就不行,死活没有反应。经过几番调试终于发现问题,以下做个小结: 1.一定要保证USB时钟是48MHZ; 使用PLL作系统时钟SCLK;而USB时钟只能是SCLK的1分频或者1.5分频,要得到48MHZ的USB时钟,则SCLK只能为48MHZ或者72MHZ;由于我是用的内部晶振8MHZ,PLL时钟最大是8MHZ Div2 再倍频16 也就是最大只能到64MHZ,所以只能配成48MHZ才能满足要求;如果使用外部晶振,PLL可以直接倍频HSE 而不用Div2; 2.注意中断向量名称; 由于我使用的是Keil 里
[单片机]
效仿欧盟和美国,巴西考虑强制苹果iPhone使用USB-C接口
苹果正遭受很大的压力,因为多地要求在iPhone上用USB-C标准接口取代Lightning接口。在欧盟决定USB-C将成为移动设备的强制性标准、美国参议员也考虑了类似的政策之后,现在巴西可能是下一个迫使苹果iPhone使用USB-C接口的国家。 据Tecnoblog报道,巴西监管机构(Anatel)在充电端口方面对智能手机制造商提出了新的要求。Anatel认为,USB-C可以“为消费者提供更大的便利”,也有助于减少浪费,因为用户可以重复使用他们的电源适配器。 然而,在巴西该要求只适用于智能手机(至少目前是这样)。Anatel表示,对于那些只能通过无线充电的设备,将不需要使用USB-C接口。作为对比,欧盟还将要求USB-
[手机便携]