论文部分内容阅读
随着USB接口的日益普及,它不仅成为PC机上的标准接口之一,也越来越多的成为很多嵌入式设备所支持的接口。向嵌入式设备中添加USB主机控制器后,嵌入式设备就可以像PC那样外接USB打印机、人机接口设备(鼠标、键盘等)、闪存等外部设备,这样大大提高了嵌入式设备的扩展性和易用性。本文在分析了嵌入式设备连接USB打印机打印报表这样的需求后,详细设计并编码实现了USB打印驱动程序。嵌入式设备通过USB线连接打印机后,通过嵌入式设备用户界面的操作打印出嵌入式设备中的账户列表等报表信息。本文还针对软件需求设计了模块化的软件架构,这个软件架构的层次包括:USB主机控制驱动,USB设备驱动,I/O管理系统和上层应用。并最终在这个构架中实现了打印机驱动程序。本文主要进行了以下几个方面的工作:1.介绍了USB技术的发展历程,概述了USB的体系结构、总线协议和数据流。对USB设备和USB设备的枚举过程进行了描述。本文还介绍了OTG技术,它是USB协议的一个补充并完全兼容USB协议。2.针对用户需求进行了软件需求的开发,给出了软件需求。对USB主机控制器和OTG两用设备两种实现方案进行了概要设计。对两种方案进行了软件结构上描述和比较。最终确定使用USB主机控制器方案,给出了系统框图并对每个模块进行描述。3.对USB主机系统进行了综述。它包括USB核心驱动和与硬件关系较紧密的主机控制器驱动。本文编码实现了USB核心驱动,对USB核心驱动的数据结构,初始化,接口函数等做了详细描述。4.本文在nucleus实时操作系统上用C语言编码实现了USB打印机驱动程序。介绍了USB打印驱动的相关数据结构。对其初始化过程,接口函数都进行了详细分析。还描述了如何向打印机写数据和读取打印机的状态信息。5.介绍了I/O管理系统的作用及其接口函数。编码实现了打印机驱动I/O接口模块。并对一个报表打印的上层应用进行了概要设计。