文档介绍:上海交通大学
硕士学位论文
基于ARM和Nucleus Plus的打印机设计与实现
姓名:杨剑
申请学位级别:硕士
专业:软件工程
指导教师:吴刚;陈拥军
20080515
上海交通大学工程硕士学位论文摘要
基于 ARM 和 Nucleus Plus 的打印机设计与实现
摘要
随着国有银行向商业银行的转变,银行的设备采购标准会越来越高,
与此同时,银行柜台业务量的增加,使得老一代的银行专用打印机无论
在速度上还是在使用的方便性上都显得力不从心,为了占领市场,公司
有必要开发新型的、使用更加方便的打印机。
老一代打印机在打印存折时,柜台工作人员要把存折放准位置,要
不然打印会偏离预定位置,在打印信函时,有的冷僻字无法打印出来,
软件无法下载升级。为了加快柜台处理速度,减小柜台工作人员的工作
量,需要开发能自动纠偏定位,字符完善的打印机。
本文在分析需求的基础上,比较当前流行的处理器,选用 Atmel 公
司的 ARM 芯片 AT91M42800A 作为处理核心,使用 Xilin 公司的 20 万门
的 FPGA XC2S200 做硬件逻辑控制,通过光电传感器和相关的控制电路
来实现自动纠偏定位。在嵌入式操作系统上选用 Nucleus Plus,约 95%
的 Nucleus Plus 代码用 C 语言编写,因此它能很方便移植,同时它还提
供全部源代码,这样便于开发。另外,它还只要一次性付费,这使得它
有很好的成本优势。
文中详细说明了本系统的硬件、固件的实现。在硬件上阐述了一些
单元电路,包括存储器电路,接口电路,传感器电路等的设计思路和实
现方法。通过光电传感电路,步进电机控制和软件结合,形成闭环控制,
I
上海交通大学工程硕士学位论文摘要
从而实现了快速自动纠偏定位;通过大屏幕的 LCD 显示实现了操作界面
的简单化;采用大容量的存储器以及大字库解决了冷僻字无法打印的问
题;固件部分详细阐述了系统上电启动过程,包括 Bootstrap 模块和 loader
模块,Bootstrap 模块主要功能是重定位存储器,初始化基本硬件以及 Loader
模块的自动在线下载升级。Loader 模块的主要功能是下载 FPGA 的配置
代码,初始化键盘和显示器,然后调用 Nucleus Plus 初始化代码,从而
建立和调用任务。
本文通过总结测试结果,与老一代打印机相比,新打印机在智能化
上实现了自动纠偏定位,使得打印机操作人员不需要准确放置存折,就
能正确打印,提高了工作效率;在打印速度上比原系统提高 30%,还可
方便地实现软件升级。
当然,新的打印机在存折偏移很大时,要耗费长时间才能把存折推
到正确位置。这要在纠偏算法上做进一步的改进。
关键词:打印机,ARM,Bootloader,Nucleus Plus
II
上海交通大学工程硕士学位论文 ABSTRACT
PRINTER DESIGN AND IMPLEMENTATION
BASED ON ARM AND NUCLEUS PLUS
ABSTRACT
Along with state-owned bank mercial bank's transformation, the
bank business will increase, and banks hope to purchase high quantity equipments
with low price, the former banking printer can not meet the requirement. In order
to sale more printers, pany needs to develop a new banking printer with
more intelligence.
Former banking printer has some disadvantages. The first, when printer prints
bankbook, it requires operator to place the bankbook at the special position,
otherwise it can not print well; the second, when it prints Chinese letter, some
mon words can not be printed; the third, software can not be updated. In
order to decrease th