导言
税控收款机是指具有特定税控功用的电子收款机,它是集软硬件为一体的嵌入式体系,硬件规划考虑高性价比和高牢靠性,软件规划考虑体系的稳定性和牢靠性。依据这一准则,本文介绍了一种依据ARM操控器LPC2214的税控收款机的规划方案。
税控收款机硬件体系的
规划与完结
税控收款机的硬件组成框图如图1所示,其硬件体系由中央处理模块、显现模块、打印模块、电源模块、时钟模块、IC卡接口、外部通讯接口(包括RS232串行接口、网络接口、USB接口等)、蜂鸣器,以及输入键盘、电子锁、条码扫描仪和手写板等几部分组成。
中央处理模块
中 央处理模块选用飞利浦公司依据32位ARM7TDMI-S内核的低功耗ARM处理器LPC2214。该处理器是飞利浦公司为嵌入式运用供给的高性价比微控 制器处理方案,经过在ARM7TDMI-S内容基础上扩展一系列的通用外围器材,使体系费用降至最低,增强了体系对外部设备的支撑才能。因为 LPC2114集成了丰厚的片上资源,所以体系自身的扩展大大削减,这不光减小了产品的体积,并且便于保护。
显现模块
作为人机交互的显现 模块包括一个LCD主显现屏和一个9位的VFD用户显现屏,其间LCD选用内置KS0107/KS0108操控器的图形点阵式液晶,显现分辨率为192× 64,可显现16×5个11×12点阵的汉字;VFD经过具有SPI接口的芯片HT16512进行驱动。
打印模块
体系选用EPSON公司的MU110II打印机头,供电电压为DC24V。电机驱动选用MTD2003F,针驱动选用MTA001M,由LPC2214的通用I/O口进行操控。
电源办理模块
体系选用开关电源为LPC2214供给5V电源。因为税控收款机对掉电保护有严格要求,所以在电源办理模块中规划了掉电保护电路,可以在掉电时保持体系正常作业必定时刻。掉电时该电路会发送给处理器一个中止,使体系进入掉电中止处理程序,进行相应的掉电保护作业。
时钟模块
时钟模块选用I2C总线时钟芯片P8563AP,在后备电池的支撑下,能确保体系掉电后片内时钟持续运转。
税控存储器
税 控收款机需求记载很多的数据信息,本体系选用了ATMEL公司具有SPI接口的Flash存储器AT45DB321,因为LPC2214微操控器具有 SPI的接口,所以可以便利地同它相衔接。规划上选用可插拔式模块,将数据存储模块与体系主板别离。此规划的特色是当体系犯错时,可以将重要数据及时转 移,降低了数据发生过错的几率,进步了数据的完整性和牢靠性。在税控卡的合作下,可以将相关的数据信息转移到另一正常作业的机器中持续进行作业,确保数据 存储的时效性。别的,也可以在保护和检修时选用替换法,这表现出很强的实用性和可操作性。
IC卡接口
一般的规划中会运用专用IC卡读写芯片为体系供给ISO7816的接口,如CTS56I01、WatchCore、TDA8020等。本体系没有进行硬件扩展,充分运用LPC2214的功用特性,完结了契合ISO7816规范的IC卡接口功用。
智 能卡芯片的接口信号包括:电源电压(VCC)、地(GND)、复位(RST)、时钟(CLK)、编程电压(VPP)、输入输出(I/O)。如图2所示, I/O、RST由LPC2214微操控器的通用I/O口(GPIO)来操控,经过软件模仿数据读写操作时序,完结数据的交流,其间I/O上信号的传输是双 向的,所以要运用软件依据时序不断转化输入输出的状况。此办法具有成本低、便利灵敏等特色。
其它模块
键盘操控芯片选用具有SPI串行接口的ZLG7289B,该芯片可衔接多达64键的键盘矩阵,可满意本体系的规划要求。
由 于LPC2214未集成USB操控器,因而体系中选用了CYPRESS公司内含USB主/从操控器、可支撑全速数据传输的USB操控芯片SL811HS, 以支撑U盘和移动硬盘读写操作。此外,本体系选用RTL8019以太网操控器扩展31个以太网接口,税控收款机相互之间可以经过网络接口进行数据通信,并 且可以和PC机的数据库体系进行数据交流。
税控收款机软件体系的规划与完结
税控收款机软件结构
税控收款机软件选用分层次结构化、模块化规划,顺次分为事务处理层、接 口层、设备驱动层和硬件渠道等4个层次。其间事务处理层完结税控收款机具体的事务处理;接口层作为事务处理层与设备驱动层的桥梁,供给与具体硬件渠道无关 的运用程序接口(API),其首要功用是对基层设备驱动程序进行封装,并供给一些公共的函数库;设备驱动层即BSP(Board Support Package,板级支撑包),包括具体硬件渠道的各种设备驱动程序。
选用如上架构的体系软件层次结构明晰,直接相邻的上基层之间存在依靠联系, 不相邻的上基层之间没有依靠联系。同层各模块之间的调用经过预界说的模块输出接口函数完结,各模块之间的耦合度低,具有杰出的可移植性和可扩大性。假如要 针对不同的职业规划不同的机型或依据需求扩大体系功用时,只需修正事务处理层,接口层和设备驱动层均无需修正;假如是变换了硬件渠道,则只需修正设备驱动 层和接口层,事务处理层无需修正。
事务处理层规划
事务处理层是税控收款机软件架构中的最上层,与具体的硬件渠道无关,作为一个运用软件可便利地移植到不同的硬件渠道上。该层用于完结商务和税控两大首要功用,由4个模块组成。
主 程序(主控模块)进行体系自检、软硬件的初始化、调度运转事务处理层的其它模块以及处理掉电数据康复、数据收拾,并操控整个软件的流程;税控功用模块完结 GB18240-2003国家规范中的税控功用,担任机器初始化和注册、发票的购买分发、开发票(包括退票、废票处理)、税控数据申报、监控数据回送、税 务核对等;商务功用模块由出售子模块、统计分析(报表)子模块、设置办理子模块以及其它一些功用子模块组成;通讯模块担任与运转在上位机(PC)上的税控 收款机办理体系进行数据通信。
接口层规划
接口层作为一个笼统层仅供给运用程序接口,不对具体硬件操作,也不处理具体事务,是针对杂乱设备规划的办理程序,首要包括IC卡办理、存储器办理、USB通讯办理等。以下具体介绍存储器办理中的发票存储办理模块。
税控收款机要求可以牢靠存储很多发票数据,因而发票存储办理模块是本体系的一个要害模块。为了节省存储空间,本体系中发票存储体系选用了变长翻滚存储办法。
变 长即指发票长度因各发票头部和其所含明细的不同,占用的存储空间巨细也不同。本体系中发票头部别离或许占用32、64、96字节,发票最大明细数为8,每 笔明细占用32字节。这样,每张发票所占存储空间为1个~11个32字节。发票在存储器中的存储方位也是以32字节为单位对齐的,两张发票之间方位首尾相 连,没有冗余空间。
翻滚存储即指在存储空间固定的状况下,循环运用这部分存储空间,当所存储的发票占用到了足够大的空间时,新的发票或许会覆盖掉最早存储的发票方位。
由 于发票变长存储,所占空间巨细不一,为了到达随机拜访的意图,需求树立一张方位索引表,表中的每项指明发票的实践存储方位,比方,方位索引表中的第n项就 是第n张发票在存储器中的方位。一起,为了加速经过发票号查找发票具体信息的查找速度,要最大或许地削减对存储器的拜访次数,这是进步查找速度的要害。本 体系选用Hash索引表来快速定位所要查找的发票,为了处理该算法的Hash值核算抵触,别的树立了一张Hash链接表,此表的长度和方位索引表相同,表 中每个值代表Hash值抵触的下一张发票的方位。
设备驱动层规划
设备驱动层包括直接操作外设的驱动,如IC卡、Flash、LCD、 VFD、打印机、USB、键盘、时钟等外设的驱动;别的还包括LPC2214内部装备驱动,如内部寄存器装备、UART装备、GPIO设置、RTC读写、 TIMER设置等。其间ISO7816规范IC卡驱动是一个要害部分,它包括插卡检测、卡上下电、卡复位和卡指令等功用。
IC卡与LPC2214 微操控器的数据传输办法为异步半双工字符传输方式,本体系运用软件完结该功用。运用LPC2214的GPIO来软件模仿IC卡的读写操作时序,进行数据交 换:接纳数据时将LPC2214的GPIO设置为输入方式,运用中止程序对I/O数据线进行采样;发送数据时将LPC2214的GPIO设置为输出方式, 在中止程序中直接输出需求发送的数据位。
异常状况处理
当异常状况(如断电、拔卡等)发生时,税控收款机应确保数据不丢掉、无差错。本体系 从两方面确保了数据的牢靠性。一方面,在初始化、分发发票、录入发票、开票、报税及完税等要害过程前先检测电源是否正常,如现已发生掉电,体系停止作业; 不然置标志,开端正常的过程操作,过程完结后,铲除标志。假如过程未完结前发生断电或IC卡意外拔出等事情,则在下一次上电或从头操作该过程时体系会检测 到标志,软件将主动调用康复机制,完结剩下操作,康复丢掉的数据。
另一方面,在发票打印的过程中假如呈现掉电的状况,则需做掉电续打处理。在发票 开端打印前先保存发票明细数据,置“打印未完结”标志;在打印一行数据过程中若发生掉电,掉电保护电路宣布一个中止,调用中止例程,运用掉电保护电路所维 持的作业时刻保存当时打印方位,体系停止作业;待从头上电后检测到“打印未完结”标志,则读出最终一张发票明细数据,从断电时记载的方位持续打印出一张完 整的发票,并铲除标志。
数据安全性处理
税控收款机集商务、税控、办理等功用于一体,对数据的传输和存储要求适当高,需求可以正确地传输、存储、生成及反应数据,因而,对安全性的要求也适当高。本体系的安全性规划从以下几个方面来表现。
系 统中采取了用户权限分级办理的办法,设置了三种具有不同操作权限的人物:体系办理员、收款员、税务稽查员。用户与人物相关,用户暗码选用6位~8位数字, 暗码以密文方式存储在Flash内。进入相应的用户方式都要经过对应的暗码校验,才可以登录税控收款机,履行本用户级的相应操作。
体系会对Flash的数据写入操作做读校验,在读写存储器中的要害数据时比较、保存校验和;在开机自检和运用税控数据时对税控数据作数据完整性校验。
别的,在履行要害操作、外部通讯、代码保护等操作前体系要对用户进行身份辨别,并对操作对应的事情发生审计记载。
结语
本体系充分运用LPC2214自身的硬件资源,经过软件完结了契合ISO7816规范的智能%&&&&&%卡接口,体系规划契合税控收款机国家规范GB18240-2003。整个体系规划结构简练,便于进步功用和与各种外设的衔接扩展,极具竞赛优势,产品得到了商场的认可。
参考文献:
1.Cpc2114/2124/2212/2214 Vser Manual.philips Semicondudor,2004
2.杜春雷编著,ARM体系结构与编程,北京清华大学出版社,2002