1 / 77
文档名称:

lpc2148usb开发手册.pdf

格式:pdf   大小:2,469KB   页数:77页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

lpc2148usb开发手册.pdf

上传人:977562398 2018/1/19 文件大小:2.41 MB

下载得到文件列表

lpc2148usb开发手册.pdf

相关文档

文档介绍

文档介绍:LPC2148USB 设备控制器开发手册
LPC214X 系列微控制器内部带有一个 USB 设备控制器,该控制器支持 32 个固定配置
的物理端点,并完全兼容 全速规范。
LPC2146/8 USB 的所有端点都有一个双向的 DMA 通道,支持 DMA 传输。并且 DMA
接口挂接在 LPC214X 的 AHB 总线上。因此,在 DMA 模式下,LPC2146/8 与 USB 总线的
数据交换速度是非常快的,比较适合于大容量 USB 存储器、打印机、高速数据采集等需要
高速传输大量数据的设备。
LPC2141/2/4 的 USB 控制器则不支持 DMA 传输,但由于是片内 USB 设备控制器,且
整个 USB 控制器都挂接在 LPC214X 的 AHB 总线上,因此也能达到较高的传输速度。
一:LPC214x USB 设备控制器简介
与其它 USB 设备控制器相比,LPC214X USB 设备控制器内嵌于 CPU 芯片内部。这种
集成的方式不仅使 USB 设备控制器与 CPU 之间的数据交换可以稳定地达到很高的速度,
而且提高了芯片的性价比。下面介绍该控制器的特性。
控制器特性
完全兼容 USB 全速规范。
支持 32 个物理(16 个逻辑)端点。
支持控制、批量、中断和同步端点。
运行时,可调整使用的端点。
运行时,可通过软件来选择端点最大包长度。
端点缓冲区的大小取决于使用的端点和最大包的长度。
支持 Softconnect 特性(需要利用 I/O 端口 来实现该特性)。
支持 GoodLink LED 指示器(需要利用 I/O 端口 来实现该特性)。
支持总线供电功能,具有较低的挂起电流。
所有非控制端点支持 8KB RAM 的 DMA 传输(仅 LPC2146/8)。
所有端点都有一个双向的 DMA 通道(仅 LPC2146/8)。
允许 CPU 控制和 DMA 模式之间的动态切换(仅 LPC2146/8)。
实现了批量和 ISO 端点的双缓冲。
控制器结构
LPC214x USB 设备控制器的结构如图 1 所示。该框图清楚地显示了 USB 设备控制器
与 LPC214x 内核总线之间的接口以及 USB 设备控制器的内部结构。
1) USB 管脚。LPC214x 引脚 10 为 USB 总线的 D+,引脚 11 为 USB 总线的 D-。
2) EP RAM。端点使用的缓冲区为 SRAM 的 FIFO,该 FIFO 称为 EP RAM。每个使用
的端点都在 EP RAM 中有一部分保留空间,且保留空间大小可由用户设定。由于 EP
RAM 大小为 2K Bytes,所以全部端点的保留空间的总和不得超过 2K Bytes。
3) 串行接口引擎。该引擎完成 USB 的大部分协议:同步模式识别、并行/串行转换、位
填充/解除填充、CRC 校验/产生等等功能,并对从 USB 总线收到的数据流进行译
码,将译码后的数据写入相应端点的缓冲存储器 EPRAM 中。也可以对 EPRAM 中
的数据进行封装,发送到 USB 总线上去。
4) 寄存器接口和 EP RAM 访问控制。 LPC214x 通过这两个接口来访问端点缓冲区 EP
RAM,实现 LPC214x 从 USB 总线接收数据或向 USB 总线发送数据。
图 1 LPC214X USB 设备控制器结构框图
5) DMA 引擎。除了通过 EP RAM 进行端点的数据接收/发送之外,DMA 引擎也可以直
接完成端点缓冲区 EP RAM 与 LPC2146/8 之间的数据传输(通过 USB RAM), 而且
数据的传输是通过 AHB 总线来完成的。在 DMA 模式下, USB 设备控制器充当了
DMA 主机,这时,它占用 LPC2146/8 的 AHB 总线。
USB RAM 是系统内存的一部分,可当作普通的内部 RAM 来使用,也可用于 USB 控
制器进行 DMA 传输,USB 设备控制器与 LPC2146/8 都可以访问这部分 RAM 空间。
端点配置
LPC214x USB 设备控制器支持 32 个物理端点(16 个逻辑端点),这些端点的类型以
及方向是预先设定且固定的,但每个端点占用的 EP RAM 大小可由用户自己设定,如表 1
所示。请注意,逻辑端点和物理端点的编号并不相同,而且也不是同一个概念:一个逻辑
端点对应两个物理端点。下面将大量用到这两个概念,请读者注意区分。
方向为 OUT 的端点通常称为 OUT 端点,方向为 IN 的端点通常