电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 接口/总线/驱动 > 详细信息
接口/总线/驱动:USBN9604及其在USB接口设计中的应用
来源:   时间: 2007-5-26 10:31:45    
1引言

USB通用串行总线是近年兴起的一种通信方式。USB协议1.1版规定了低速(1.5Mb/s)和全速(12Mb/s)两种速率,目前大部分USB器件支持该协议。2000年USB2.0白皮书出台后,其速度最高可达480Mb/s。该总线是由Compaq、Intel、Microsoft、NEC四公司共同提出,并得到了众多厂商的支持。USB接口具有安装方便、高速、灵活、低成本、易扩展,支持热插拔等优点,已经逐渐成为现代数据传输的发展趋势。

2 USBN9604

USBN9604是NationalSemiconductor公司设计生产的一款较新型的专用USB通信控制芯片,是US-BN9602的改进产品,同时在时钟产生电路的复位机制上又较USBN9603有所改进。USBN9604支持全速传输,可满足USBl.0和1.1协议。它具有8位并行接口,可支持DMA、MICROWIRE/PLUS。图1是US-BN9604的结构框图。其主要特点如下:

  • 工作频率为48MHz,但外部只需接24MHz晶振,因为芯片内部有倍频电路,因而可得到48MHz时钟。
  • 可由编程时钟发生器编程产生不同的频率时钟,以作为外部器件(如CPU)的时钟信号。
  • 带有串行引擎接口(SⅢ),可实现USB物理层和信号层协议的转换,主要有CRC校验/产生、PID校验/产生、位填充/解除填充、地址识别、握手评估/产生、并串转换等。
  • 带有7个端点的USB功能控制器,每个端点对应一个FIFO。其中端点0是双向控制端点(FIFO 8字节深),另有3个发送端点:EPl(16)、EP3(16)和EP5(64)以及3个接收端点EP2(16)、EP4(16)和EP6(64)。

    USBN9604内部有64个映射到内存的寄存器,主要有主控制寄存器(MCNTRL)、时钟配置寄存器(CCONF)、主事件寄存器(MAEV)、转换事件寄存器ALTEV)、接收发送事件寄存器(RXEV、TXEV)以及各端点的控制寄存器和收发数据及状态寄存器等。固件的大部分功能就是完成对此寄存器组的读写,实现对接口的配置、接口状态的转换以及数据在外设和计算机之间的传输等。


    3 USB接口的硬件实现

    51单片机与USBN9604的并行连接有两种方式,即非复用方式和复用方式。它们可通过设置引脚MODE0、MODEl来选择。在非复用方式时,可用控制引脚CS、RD、WR、地址引脚A0和双向数据线D[7:0]实现相应的地址读写。而在复用方式时,则使用控制引脚CS、RD、WR、地址锁存信号ALE和双向数据线D[7:01实现其地址读写。本设计采用复用方式进行数据交换。

    图2所示是89C51单片机和USBN9604的接口电路,该电路由一片89C51单片机、USBN9604、时钟振荡电路以及相应的外围电路组成。其中USBN9604通过外部中断INT0与89C51单片机进行通信。

    4 USB接口的软件实现

    设备固件是设备运行的核心,可采用C语言设计。其主要功能是控制USBN9604接受并处理USB驱动程序的请求(如各种标准请求)、接收/_k传数据。当主程序完成CPU和USBN9604的初始化后,可用while循环等待外部中断。中断处理程序可在给出中断人口后跳出中断。所有的USB事物处理都在函数USB-ISR中完成。图3所示是USB-ISR程序框图。在USB-ISR中,通过程序可读取USBN9604中的主事件寄存器(MAEV),并判断中断原因,包括收发事件的发生、总线状态的改变以及握手信号的产生等,同时可根据不同原因进入相应函数。另外也可通过函数具体实现各种USB标准的请求、端点0的接收和发送以及其它端点的收发和总线状态的改变等。

    5 设备驱动程序

    目前较流行的驱动程序编写软件主要有DDK、VtoolsD和WinDriver等,其中WinDfiver相对比较简单,并可满足开发USB驱动的需要。利用它开发设备驱动程序不需要熟悉操作系统的内核,同时整个驱动程序中的所有函数都工作在用户模式下,因而可通过与WinDriver的.Vxd或.Sys文件交互达到驱动硬件的目的。


    5.1WinDriver的主要特征

    WinDriver编程软件具有以下特点:

  • 提供有从用户层直接访问硬件的方法;
  • 无需DDK以及核心态驱动程序的开发经验;
  • 支持I/O、DMA、中断处理,同时支持PCI、ISA、USB、PCMCIA的开发;
  • 对于性能要求特别苛刻的部分,WinDriver提供的APl可插入到核心态模式中运行,从而提高执行效率;
  • 可利用常见的软件开发平台(VisualC++、BorlandC++、Delphi等)。

    5.2开发步骤

    利用WinDriver开发驱动程序有两种方法,分别介绍如下:

    第一种是利用WinDriver自带的WinDriverWizard来分析用户开发的插卡,看其能否象设计的那样正常工作,然后自动生成驱动程序的框架代码,接着再修改代码并加入定制功能,同时在用户态执行和调试代码并将性能要求苛刻的部分插入到核心态。


    第二种则直接应用WinDriver提供的API函数编写驱动程序,这种方法比用Wizard生成框架代码的方法更加灵活方便。但要求编程人员对驱动程序的框架有一定的了解。

    笔者在实验中采用的是第一种方法,实验效果良好。

  • 相关信息
    发表评论
    打印本页 关闭本页
    基于AT89C51的数据采集系统设计新方法
      引言   近年来,随着制造技术的发展,单片机的价格越来越低,性能却不断提升,因而其应用范围也越来越广。然而在开发基于单片机的应用系统时,传统方法一般都需要大量的硬件设备,这些设备极易损坏而且携带不方便。为此,本文基于AT89C51数据采集系统详细说明了如何利用Pro-teus和两款串口仿真软件来进行单片机程序及外围电路的仿真设计。采用该方法可以大大简化硬件电路测试和系统调...
    >>详细内容
    基于AT89C51单片机设计的简易智能机器人
      引言   随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器/计数器、并行和串行接口、看门狗、前置放大器、A/D转换器、D/A转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。这种技术促使机器人技术也有了突飞猛进的发展,目前人们已经完全可以设计并制造出具有某些特殊功能的...
    >>详细内容
    基于单片机89C51的异步串行接口键盘设计
        摘 要:介绍了计算机异步串行接口键盘的特殊设计要求和工作原理,结合开发过程,讨论分析了89C51芯片的结构、功能特点以及应用中需要注意的问题,并给出了计算机串行接口键盘的硬件原理图及软件流程图。 关键词:89C51单片机;异步串行接口;键盘设计;E2PROM 在信息处理系统中,显示分系统是整个系统的人机界面。显示器画面呈现出的态势图形和数据,是人们决策的重要依据。人...
    >>详细内容
    以89C51单片机为控制核心的开关电源优化设计
         摘要:文中在简单介绍高频开关电源的工作原理基础上,以通信用-48V开关电源为功率转换部分,89C51单片机为控制核心,对开关电源的控制部分进行优化设计,详细阐述了其工作原理,并通过软件编程实现了对开关电源的智能控制。    关键词:开关电源;单片机;软件编程引言开关电源是利用现代电力电子技术控制功率开关管(MOSFET,IGBT)开通和关断的时间比率来稳定输出电压的一种新...
    >>详细内容
    基于AT89C51的密码电源开关设计
        摘要:为了保护用户用电的权益,使非法用户在不知道密码的情况下,无法使用电源并实行相应的操作,特开发出此密码电源开关。文章详细叙述了密码电源开关的硬件结构和软件设计流程,通过论述表明,用单片机控制的密码电源开关具有结构灵活、开发经济、工作稳定等优势。   关键词:密码电源开关;硬件结构;软件设计   随着现代技术的发展,电与我们生活的关系越来越密切,从工业生产到...
    >>详细内容
    基于89C51单片机的数字视频监控系统键盘及报警控制卡设计
        摘要:分析了PC键盘与主机之间的通信方式,给出了基于89C51单片机的数字视频监控系统键盘及报警控制卡的软硬件设计方法。   关键词:键盘;单片机;串行通信   键盘是数字视频监控录像系统中最重要的输入设备之一,是人机接口的重要组成部分。目前常用的工业控制计算机键盘除配置电子锁开关防止非法键盘输入外,与PC键盘并没有多大区别。这种键盘不仅键数多,操作不灵活,...
    >>详细内容
    已有(
    )位对此新闻感兴趣的网发发表了看法 >>更多评论
    内 容:
         
     
    热点新闻
    一周排行
    关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
    Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
    维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
    总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
    电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com