2.1 AN2131QC的功能
AN2131QC是基于USBl.1的外设通信控制芯片,主要特点:(1)4时钟周期的8051内核;(2)2个快速存储器到存储器的数据传送指针;(3)扩展的中断,包含有多个USFB数据传输中断;(4)8 K内部RAM,用于存放程序和数据,支持外部存储器;(5)灵活的固件程序升级;(6)32个输入输出管道,其中同步传输支持1 024 B长度数据传输;(7)多种固件程序引导方式,方便的固件程序升级办法。
2.2 AN2131QC的USB传输
AN213lQC的USB传输分为块传输、控制传输和中断传输。USB规范允许块传输的最大数据包尺寸为8、16、32、64字节,中断数据1~64字节。AN2131QC提供了8个IN端点和8个OUT端点,每一个端点具有最大64字节的缓冲区空间。其中第2、4、6个IN和OUT端点可以和它紧接着的端点提供双缓冲区,允许8051在处理一个数据包的同时另外一个数据包在USB总线上传输,即6个端点对(USBPAIR寄存器)控制双缓冲。8051在初始化时设置14个端点有效位,并且通知AN213lQC哪一个端点有效。块数据出现在RAM中,每一个块端点保留了64字节的RAM空间,1位计数寄存器,2位控制和状态寄存器。8051能读取状态寄存器中的一位来决定端点是否为“忙”。在端点的忙位被设置时,8051不能读写端点缓冲区和字节计数寄存器。当一个端点为805l操作准备好时,AN2131QC设置一个中断清求位。AN2131QC向量中断系统根据端点自动传输控制,从中断服务子程序分离出中断请求来响应端点请求服务。
端点O是AN2131QC芯片中唯一的控制端点。AN2131QC提供了2个64字节的缓冲区INOBUF和OUTOBUF。另外有一个附加的8字节缓冲区,对端点O来说是唯一的,这个缓冲区保存着在控制传输过程中的SETUP阶段到达时的数据。中断传输是一种特殊的块传输。AN2131QC控制端点O接收特殊的SETUP令牌,它是一种主机用来处理设备控制信号的传输。主机通过端点。发送一系列标准设备请求表。
2.3 AN2131QC的程序引导
AN2131QC内部没有ROM,因此程序只能在上电复位时从外部导入,主要为以下几个途径:
(1)通过驱动程序,CYPRESS公司提供了工具将编译的固件HEX文件嵌入到驱动程序内,USB外围设备接入到总线后,主机自动将固件程序写入到:EZ-USB内RAM,完成枚举和重枚举。
(2)通过外部12CE2PROM。将固件HEX文件通过“HEX2BIX-I-B2(TARGET).IIC(SOURCE).HEX”命令转换成IIC文件,用编程器或者“控制面板程序”写入到I2C器件。I2C器件选用24LC64A或者24AA64,将其A0管脚上拉到高电平,A1,A2接地。
(3)采用外部FLASHIROM和RAM。固件程序如果大于4 K,那么就要考虑用这种方式,注意EA上拉到高电平。
2.4 AN2131QC的电路配置
主机向外围USB设备提供的最大电流是500 mA,因此当USB外围设备电流消耗超过500 mA时,需外接电源。AN2131QC的工作电压是3.3 V,可以通过LDO芯片将5 V转换成3.3 V。
几点要说明:
(1)芯片的5、6、13、14、72脚通过一个1 kΩ电阻接地,主要用于上电测试。
(2)无论I2C总线是否外接有器件,SCL和SDA管脚都应通过2.2 kΩ的电阻上拉。
(3)不能让WAKEUP管脚悬空。
(4)将USB+和USB-通过2个24 Ω电阻接到D+和D-端,可以抑制虚噪声信号和限制环流。