usbn64接口的程序调试系统.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
usbn64接口的程序调试系统 1 数据侦错及纠错 usb(通用响铃木,一般响铃)是一种快速连接设备和计算机的新接口,具有灵活隐患的灵活性。是在1994年底由康柏、IBM,Microsoft等多家公司联合制定的。他传输速度快,能提供3种传输方式:低速模式(速率为1.5 Mb/s);中速模式(速率为12 Mb/s);高速模式(速率为480 Mb/s)。数据传输可靠,USB设备在发送数据时支持数据侦错和纠错功能,增强了数据传输的可靠性。易于扩展,外设接口之间采用菊花链形式连接,通过使用Hub扩展可连接多达127个外设。使用灵活,USB共有4种传输模式:控制传输(control)、同步传输(synchronization)、中断传输(interrupt)、批量传输(bulk),以适应不同设备的需要。 由于其具有上述特点,因而备受人们的青睐。开发具有USB接口的USB设备,必须有开发USB接口的过程,虽然现在的USB控制器的芯片会自动处理大部分的通信,但是仍需要开发者设计相应的程序控制芯片以实现正常的通信。但由于USB协议复杂,不像别的早期的接口,只需要简单的电路和协议就可以实现,所以增加了开发者的难度。现在介绍开发USB接口的资料很多,但是对于初学者来说,不容易掌握得如此全面,而且USB设备接口固件的开发在整个USB接口设计中有举足轻重的地位。 虽然设备接口硬件能够完成一部分工作,但其中的每一步都需要软件的协同处理,另外,还有一些必须由软件来处理的任务。所以设计一个固件程序调试系统,让初学者能够直观地看到主从设备之间传输的数据包,既能增加直观的印象,又能深刻地理解协议的实质,无疑是一件很有意义的工作。本文正是基于此种原因设计了调试USB固件程序系统。 2 usb设备管理 系统设计之前首先介绍一下主机与设备之间的数据通信。USB数据通信可以划分为2个阶段:列举阶段和应用阶段。列举阶段主要发生在设备的初始化过程中。在这个阶段主机了解设备特性并根据设备的要求进行系统和设备的配置,建立主机与设备之间的数据通道。在列举阶段对USB主机和设备的操作有明确、清晰的理解是开发USB接口固件和主机驱动的前提。USB总线属一种轮询方式的总线,主机控制端口初始化所有的数据传输。要主机识别一个USB设备必须经过列举的过程,主机使用总线枚举来识别和管理必要的设备状态变化。总线枚举的过程如图1所示。完成了图中所示过程后USB设备就可以使用了,即数据通信进入应用阶段。 2.1 系统硬件设计 2.1.1 usbn984封装 系统硬件设计时特别考虑了USB协议处理芯片的选择。目前市场上供应的USB控制器主要有2种:一种是带USB接口的单片机(MCU),另一种就是纯粹的USB接口芯片,仅处理USB通信,必须有一个外部微处理器来进行协议处理和数据交换。考虑这个系统的总体设计和初学者的应用能力,这里选用National Semiconductor 公司生产的USBN9604。他是一款性价比很高的USB器件,可以实现全速USB传输方式,采用SO-28封装形式。USBN9604提供了8位与MCU的并行接口,支持数据/地址复用方式和非复用方式,可以很方便地与51系列单片机连接,符合USB协议1.1规范。芯片时钟采用外部24 MHz时钟输入,内部时钟电路为48 MHz。 USBN9604内部共有7个端点(endpoint),其中端点0是8字节双向控制端点,主要用来接收和发送各种控制命令。端点1,3,5负责接收数据,端点2,4,6负责数据发送,他们都有64 B的FIFO。单片机通过控制这7个端点就可以完成和主机的通讯。USBN9604芯片提供存取区域数据总线的3种方式:非多进程并行(non-multiplexed parallel);多进程并行(multiplexed parallel);Microwire同步串行(Microwire synchronous serial)。方式的选择是通过管脚24(MODE1)和25(MODE0)连接不同的电平。 微处理器选用AT89C52,使用这款芯片的优点是开发者很熟悉芯片的结构和指令集,而且能够完全胜任此系统的控制任务。显示模块使用的是字符点阵式液晶显示器EDM1602,芯片小巧,指令简单,能够完成显示任务。 2.1.2 系统硬件电路的原理图 硬件原理图如图2所示。 2.2 软件设计 2.2.1 中断子程序设计 固件采用单片机C语言来开发,其整体思想是模块化和通用性。在整体的调试过程中则是采用添加式的软件编程思想。固件使用分层结构,最低层是一些简单、原始的功能子程序。这些子程序用于完成一些基本的功能。此系统软件设计的新颖性,主要是体现在中断子程序上。为了在调试时能够准确地在LCD上显示出每次传输的数据包,中断子程序必须准确的控制事件的处理

您可能关注的文档

文档评论(0)

176****2725 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档