基于I2C总线的USB接口设计
USB(Universal Serial Bus)通用串行总线是在1994年底由康柏、IBM、Microsoft等多家 公司联合制订的,但是直到1999年,USB才真正被广泛应用。同时,他也得到了各PC厂商、芯片制造商和PC外设厂商的广泛支持,USB外设在国内外以惊人的速度发展,迄今为止,各种USB的外设已经有数千种。为PC外围设备设计USB接口已成为大势所趋。
随着单片机技术的发展,单片机的功能日益强大,外围电路日益复杂,其有限的管脚也就显 得捉襟见肘。目前采用普通单片机外加USB接口芯片开发USB外设时,USB接口器件大都是采 用并行接口与单片机相连接,这样再加上一些控制信号线,总共需要占用单片机十余个管脚 ,对于一般对传输速度要求不是很高的设备显得有些浪费,特别是对于为产品转型而 进行的USB接口开发,势必会影响原来的电路连接和功能设置。因此,采用一种既能保持较 高的传输速度,又能减少单片机引脚使用的USB接口开发方法很有必要。本文介绍一种 采用Philips公司带I2C接口的USB接口芯片PDIUSBD11进行USB接口开发的方法,他使用高速通用I2C接口与单片机相连接。
2 背景介绍
2.1 USB背景介绍
USB是一些PC厂商为解决日益增加的PC外设与有限的主板插槽和端口间的矛盾制定的一种 串行通信标准。他传输速度快,能提供3种传输方式:低速模式(速率为1.5 Mb/s);中速模 式(速率为12 Mb/s);高速模式(速率为360 Mb/s以上)。数据传输可靠,USB设备在发送 数据时支持 数据侦错和纠错功能,增强了数据传输的可靠性。设备安装和配置容易,安装USB设备不必 再打开机箱,增减设备不用关闭计算机,所有USB设备支持热插拔,系统对他进行自动配置 。易于扩展,外设接口之间采用菊花链形式连接通过使用Hub扩展可连接多达127个外设。能 够采用总线供电,USB总线提供最大达5 V电压,500 mA电流,可为小型设备供电。使用灵活,USB共有4种传输模式:控制传输(control)、同步传输(synchronization)、中断传输 (interrupt)、批量传输(bulk),以适应不同设备需要。
2.2 I2C总线技术介绍
I2C总线技术是Philips公司研制出来的串行扩展技术。他是一种简单、双向二线制同步串 行总线,他只需要2根线(串行时钟线SCL和串行数据线SDA)即可在连接于总线上的器件之 间传送信息。对于并不要求很高的数据传输速度的外设,I2C总线的使用无疑简化了系统 ,增加了硬件构成的灵活性,是一种高效、方便的串行扩展总线。
使用I2C传输数据有2种基本方法。第一种是采用I2C总线标准的单片机或IC器件,其内 部含有I2C接口电路,使用这种方法可直接从接口读写数据。第二种是采用软件程序模拟I2C总线的时序来完成接口功能,使用这种方法可任意从单片机中选取2个I/O口,作为串 行时钟线SCL和串行数据线SDA,使用灵活。
3 PDIUSBD11芯片介绍
3.1 PDIUSBD11芯片特点
PDIUSBD11 是一款性价比很高的USB 器件,他通常用作微控制器系统中实现与微控制器进行 通 信的高速通用I2C接口。这种实现USB 接口的标准组件使得设计者可以在各种不同类型微 控制器中选择出最合适的微控制器。这种灵活性减小了开发的时间风险以及费用,通过使用 已 有的结构减少固件上的投资。从而用最快捷的方法实现最经济的USB 外设的解决方案。PD IUSBD11适用于电脑监视器、操纵杆、键盘和其他一些使用I2C或SMBUS结构的器件 。PDIUSBD11符合USB 11协议规范、I2C串行接口和SMBUS协议规范。他完全符合人机接 口设备和监视控制类协议规范。PDIUSBD11所具有的低挂起功耗连同LazyClock 输出可以满 足使用ACPI,OnNOW 和USB 电源管理的要求。低的操作功耗可以执行总线供电功能。此外他 还集成了许多特性包括SoftConnetTM,GoodLinkTM,可编程时钟输出、低频晶振、多重功能 终端和终止寄存器集合。所有这些特性都为系统显著节约了成本,同时使USB 功能在外设上 的应用变得容易。
3.2 PDIUSBD11内部结构
PDIUSBD11芯片的内部结构如图1所示。
![](../img/eep/emb/emb-67150v4fwlzjexui.jpg)
模拟收发器收发器接口可通过终端电阻直接与USB电缆相连,他们能以全速(12 Mb/s)传送和接收数据。
PLL片内集成了12~48 M时钟乘法器PLL。这样就可使用低成本的12 M晶振 ,EMI也随之降低。PLL的工作不需要外部元件。
Philips串行接口引擎PSIEPhilips SIE实现了全部的USB协议层。完全由 硬件实现而不需要固件的参与。该模块的功能包括:同步模式的识别、并行/串行转换、位 填充/解除填充、CRC校验/产生、PID校验/产生、地址识别和握手评估/产生。
存储器管理单元MMU和集成RAM当USB接口以12 Mb/s的速率传输并且I2C接口以1 Mb/s与微控制器
I2C总线USB接 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)