嵌入USB控制器的51系列单片机EZ-USB

技术分类: 嵌入式系统  | 2008-02-27
来源:电子信息网

  4.1  AN2131Q的封装和引脚描述

  图5是EZ-USB 2100系列中80引脚封装的AN2131Q的引脚排列图。

80引脚的PQFP

图5  80引脚的PQFP(AN2131Q)

  各引脚功能分述如下:

  • DISCON#:引脚1,输出。该引脚由两个位DISCOE和DISCON控制。当DISCOE=0时,引脚悬空;当DISCOE=1时,驱动引脚。当DISCOE=1时,驱动的逻辑级与DISCON位相反。
  • USBD-,USBD+:引脚77,79 ,高阻态。USB D+/D-信号。将24Ω振荡器与USB D+/D-引脚相连。
  • A0~A15:引脚7~12,15,16,26~29,34~37输出。8051地址总线。
  • D0~D7:引脚48~51,57~60,I/O/高阻态。8051数据总线。该双向总线空闲时处于高阻状态,总线读时为输入,总线写时为输出。
  • PSEN#:引脚80,输出。程序存储器使能端。引脚接低电平时有效,表示从外部存储器中读取程序。当EA为低电平时,程序存储器的地址从0x1B40开始;当EA为高电平时,程序存储器的地址从0x0000开始。
  • PA0~PA7:引脚68~71,73~76,I/O。多功能输入/输出引脚。
  • PB0~PB7:引脚44~47,
    52~55,I/O。多功能输入/输出引脚。
  • PC0~PC7:引脚30~33,38~41,I/O。多功能输入/输出引脚。
  • BKPT:引脚61,输出。断点。当8051地址总线与BPADDRH/L寄存器的内容一致,且USBBAV寄存器中的断点使能(BPEN)时,该引脚被激活(高电平)。如果USBBAV寄存器中的BPPULSE位为高,就产生8个24 MHz的高电平的时钟脉冲;如果BPPULSE位为低,保持高电平直到8051清除USBBAV寄存器中的BREAK位(写1)。
  • RESET:引脚25,输入。有效高电平复位。使8051和SIE复位。该引脚一般通过1个10 kΩ电阻接地,用1个1μF电容接VCC。
  • EA:引脚24,输入。访问外部存储器。该引脚有效(HI)时,8051并不是从内部程序RAM中获得代码,而是从外部存储器中读取代码。当EA=0时,8051从外部存储器的0x1B40地址(AN2131)开始读取代码。
  • AVCC:引脚21,电源。Analog Vcc(模拟电源)。该引脚为芯片的模拟部分提供电源。
  • AGND:引脚18,电源。Analog Ground(模拟地)。尽可能以最短路径接地。
  • XIN:引脚19,输入。晶振输入。该引脚经由12 MHz晶振和22~33 pF电容接地。它也能用12 MHz的时钟电路驱动。
  • XOUT:引脚20,输出。晶振输出。该引脚经由12 MHz晶振和22~33 pF电容接地。当XIN由12 MHz时钟电路驱动时,该引脚悬空。
  • WAKEUP#:引脚66,输入。USB唤醒。当8051挂起时,该引脚上的一个上升沿可开启振荡器,向8051发出中断,请求推出挂起状态。维持WAKEUP#的低电平可避免EZ-US芯片进入挂起状态。
  • SCL:引脚65,OD(漏极开路)。I2C时钟。即使没有I2C设备相连,也要用2.2 kΩ电阻接VCC。
  • SDA:引脚64,OD(漏极开路)。I2C数据。即使没有I2C设备相连,也要用2.2 kΩ电阻接VCC。
  • CLK24:引脚4,输入。24 MHz时钟,可锁定为12 MHz输入时钟。当CPUCS寄存器中的OUTCLKEN=0时没有输出。
  • NC:引脚67。该引脚不连接。

  软配置是EZ-USB系列芯片的一个重要特性。EZ-USB芯片中包含内部程序/数据RAM,不再需要ROM或其他固定的存储器。通过USB本身将程序下载到RAM中,为设备提供独特的特性,使得修改、版本更新更容易。

  EZ-USB可作为USB设备进行连接,当内部8051处于复位状态时,将程序下载到内部RAM。这一切都是由改进的SIE完成的,它可以进行图2中的所有操作,甚至更多。SIE包含其他逻辑,可用内部描述符表进行枚举操作。它也能响应主机发出的特殊的"下载固件"设备请求,将固件装入内部RAM。还有一点值得一提的是,增加的SIE功能可用于8051。这一特点可缩减8051程序,加快程序的执行。

  5  EZ-USB的枚举和再枚举

  PC机运行时,若插上或拔去一个USB设备,Windows系统便会自动装载或卸去设备的驱动程序,即所谓的即插即用。这一系列动作的自动完成归因于在每一个USB设备里都有一个描述符表,记录了设备的要求和性能。当插上USB时,要经过以下几个步骤:

  ①  主机向地址0发送"Get_Descriptor/Device"请求(设备第一次连接时,必须响应地址0);

  ②  设备响应该请求,并将ID数据发送给主机;

  ③  主机向设备发出"Set_Address"请求,给设备提供一个唯一的地址,以区别其他与总线相连的设备;

  ④  主机发出"Get_Descriptor"请求,获取更多的设备信息。据此,主机可以了解到该设备的其他情况,如该设备的端点个数、电气要求、所需带宽,然后下载程序。

0
0
(请您对文章做出评价)
1】【2】【3】【4
加载中

对文章的评论

更多评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销

  • 博客推荐

  • 论坛推荐

  • 在线研讨会