为任何系统增加USB引言有关通用串行总线(USB)的文章通常从USB是个人电脑的一个新连接标准开始讲起
谢天谢地现在不再需要如此做,因此本引言可以简短地写为:如果你有一个嵌入式系统并且想连到PC,主流的连接通道是USB
本文介绍了一款Maxim最新推出的芯片,MAX3420E,它可以很容易地把USB加入到任何系统中
本文主要着重于SPI接口,提供了实现通用SPI的C例程
最后给出了一个简单的USBHID(人机接口设备)—基于Windows的应急按钮程序
为任何系统增加USB微控制器(μC)的选择通常基于它所集成的外设
许多处理器集成了USB功能,但是大多数处理器,特别是一些低价位的处理器不含USB
有时,您可能选用了一个I/O和外设都很完美的微控制器,但它却缺少USB
您是否希望只是添加USB功能而继续使用当前的微控制器呢
利用Maxim的芯片MAX3420E,可以为任何处理器添加USB功能
MAX3420E集成了USB全速收发器、智能USB串行接口引擎(SIE)和一个可工作到26MHz时钟的从SPI接口
MAX3420E的使用如同一个具有单个控制端点、两个双重缓冲的64字节数据端点和一个64字节的中断端点的全速USB外设
总线供电图1
USB供电图1是一个普通的USB外设结构
USB的VBUS电源线为3
3V稳压器提供5V输入,该稳压器给微控制器和MAX3420E供电(无需墙上适配器)
SPI接口可以是3、4或5线
表1列出了5线接口
使用3到5线的SPI接口如果应用中不需要中断(MAX3420E的中断条件可以通过读取寄存器直接检测到)s,可以去掉INT引脚,得到一个4线接口
如果SPI主机具有双向数据接口(MOSI/MISO),则可以省掉另外一条接口线,这样,没有中断、支持双向通信的SPI接口只需要3个引脚
如果微控制器没有SPI接口怎么办呢
没问题,可以很容易地