新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于Android平台的无线打印模块设计

基于Android平台的无线打印模块设计

作者:时间:2016-10-10来源:网络收藏

摘要:在ARM芯片AT91RM9200上构建了模块的硬件平台,在操作系统上完成了软件平台的搭建,通过调用Linux内核的CUPS,实现移动终端在系统上直接打印文件的功能。
关键词:打印模块;;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所示。

本文引用地址:http://www.eepw.com.cn/article/201610/306024.htm

a1.jpg

a.JPG



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所示。

b1.jpg


存储器系统提供2 MB的NOR FLASH和16 MB的NAND FLASH来存放BootLoader启动程序和应用程序。WiFi无线模块接收无线网络传输的文件,再送到USB芯片的下行口连接的USB打印机实现打印。

3 软件平台设计
软件基于Android平台,经过精简移植与交叉编译完成软件平台的搭建,平台架构如图4所示。

b.JPG


软件平台基于Android实现,人机操作界面采用Java语言编写,Java语言通过JNI访问打印框架链接库,再由打印链接库完成与后台打印服务程序的通信。整体实现遵循Linux系统下的CUPS标准,针对不同型号的打印机提供相应的CUPS打印驱动程序即可完成文件的打印。

4 CUPS打印机驱动程序设计
CUPS作为通用打印系统,默认已支持多种类型的文档的打印,Linux下的打印流程如图5所示。

c1.jpg


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭