摘要:在ARM芯片AT91RM9200上构建了无线打印模块的硬件渠道,在Android操作体系上完结了软件渠道的建立,经过调用Linux内核的CUPS,完结移动终端在Android体系上直接打印文件的功用。
关键词:打印模块;Android;WiFi;USB
导言
Android作为根据Linux开放性内核的开源智能手机操作体系,为智能手机、平板等移动、嵌入式设备使用供给了快捷的体系级支撑,但Android体系现在并不支撑常用的USB打印功用,打印机厂家暂时也没有专门为Android设备供给打印机驱动程序。本文规划了一种新式的根据Android渠道的无线打印模块,选用移植Linux下相关开源驱动的方法,经过调用Linux内核的CUPS(Common UNIX Printing System),完结And roid体系上的USB打印功用,为Android体系打开了一条完结USB打印驱动从上层使用到内核装备的通路。
1 体系全体规划方案
本体系规划的嵌入式打印模块是经过WiFi无线网络接纳客户机发送来的文件,在液晶屏上显现打印行列和打印文件信息,再经过USB接口把需求打印的文件发送到USB打印机上完结打印。全体规划框图如图1所示,文件打印数据流程图如图2所示。
2 体系硬件规划
嵌入式打印模块的硬件首要包含:中心处理器、WiFi无线模块、USB打印功用模块、液晶显现模块等。中心处理器选用的是Atmel公司的AT91RM9200处理器。
为了完结打印模块与USB打印机的通讯,选用Philips公司的ISP1161A1芯片作为USB主机控制器。ISP1161A1的主机控制器部分契合USB1.1规范,支撑全速(12Mbi/s)和低速(1.5 Mbi/s)的数据传输。ISP1161A1供给两个下行端口,可与USB打印机进行衔接。WiFi无线模块选用的是G—SKY无线发射模块,其发射芯片是Realtek公司的RTL8187芯片。液晶选用320×240的LFUBK909XA五颜六色(256色)点阵图形液晶模块,液晶控制器芯片为S1D13503。该液晶屏上带有触摸屏,选用触摸屏控制器FM7843进行A/D转化,转化成果输出到AT91RM9200处理器。体系全体硬件框图如图3所示。
存储器体系供给2 MB的NOR FLASH和16 MB的NAND FLASH来寄存BootLoader发动程序和使用程序。WiFi无线模块接纳无线网络传输的文件,再送到USB芯片的下行口衔接的USB打印机完结打印。
3 软件渠道规划
软件根据Android渠道,经过精简移植与穿插编译完结软件渠道的建立,渠道架构如图4所示。
软件渠道根据Android完结,人机操作界面选用Java言语编写,Java言语经过JNI拜访打印结构链接库,再由打印链接库完结与后台打印服务程序的通讯。全体完结遵从Linux体系下的CUPS规范,针对不同类型的打印机供给相应的CUPS打印驱动程序即可完结文件的打印。
4 CUPS打印机驱动程序规划
CUPS作为通用打印体系,默许已支撑多种类型的文档的打印,Linux下的打印流程如图5所示。