盧 貺
(武漢軟件工程職業(yè)學院,湖北武漢 430205)
稅控收款機(簡稱稅控機)指在交易過程中,具有記錄、計算、打印、顯示、分類、斷電保護等功能,同時具有稅控功能,能保證經(jīng)營數(shù)據(jù)的正確生成、可靠存儲和安全傳遞,并可實現(xiàn)稅務機關管理和數(shù)據(jù)核查等要求的電子設備。
稅控收款機根據(jù)嵌入式系統(tǒng)設計的基本方法,滿足安全性、方便性和經(jīng)濟性,采用稅控IC卡為核心的安全機制。充分考慮了可靠性、維修性、安全性和電磁兼容性設計。通過稅控卡正確生成稅控數(shù)據(jù),稅控數(shù)據(jù)分別可靠地存儲在稅控卡和稅控存儲器中;采用用戶卡或其他方式將稅控數(shù)據(jù)安全傳遞到稅務機關的稅控收款機管理系統(tǒng)中。稅控收款機和稅控IC卡分別遵循統(tǒng)一的技術規(guī)范,實現(xiàn)稅控收款機及稅控IC卡的設計、生成、測試和驗收的分別實施。稅控收款機管理系統(tǒng)將納稅人相關信息寫入稅控卡中,并通過稅控卡對稅控收款機進行初始化處理,即建立稅控卡和稅控收款機的唯一對應關系,稅控收款機能防范應用在各行各業(yè),各種領域,并對稅務數(shù)據(jù)進行實時高效監(jiān)控[1]。
一般有兩種:IC卡報稅方式和遠程聯(lián)網(wǎng)報稅及稅務稽查系統(tǒng)。前一種方式較簡單,主要使用稅控收款機、IC卡及手持POS;后一種方式在企業(yè)端不通過IC卡收集數(shù)據(jù),通過電話線等網(wǎng)絡方式聯(lián)網(wǎng),將稅務數(shù)據(jù)上報。
稅控收款機在硬件設計上考慮了稅控、金融等對資源的要求,將涉及到的各種要求羅列成硬件總體設計方案,說明如下:
金融稅控收款機選用CIRRUS LOGIC公司的EP7312作為控制芯片,采用32位數(shù)據(jù)總線方式[2~3]。
稅控收款機需要記錄5000到10000條發(fā)票明細,同時還要記錄5年中每天的交易匯總,作為金融終端時需要記錄至少300條記錄,考慮到這些交易記錄數(shù)據(jù)量與稅控機對發(fā)票的存儲容量要求相近,這些交易數(shù)據(jù)能存儲到5000條以上。因此,設計時CPU可支持最大32M字節(jié)外部擴展FLASH芯片地址空間。
終端上有四個卡座,具體是1個用戶卡、1個工作卡、2個SAM卡,能夠完成對卡的各種操作;對卡上電和去電,判斷卡的種類等功能。通過約定的卡操作流程,完成對卡的認證、讀寫等操作。分配一個串口給卡座電路,其中用戶卡部分和CPU的GIPO引腳連接,能對異步卡和同步卡進行操作。其他的3個卡座電路也共用該串口,每個卡座電路的電源、時鐘、復位信號分離,保證這些卡能分時工作??娐飞线€有3.3 V和5 V供電電源選擇電路[4~5]。
采用MF RC531射頻模塊處理方案,對符合ISO 14443 Type A的射頻卡進行操作。由于射頻卡模塊最大電流有200多毫安,因此通常射頻卡模塊不工作,其指示燈不亮。當操作人員將該功能選定后,就能使用射頻卡模塊,相應的指示燈點亮。射頻卡模塊與CPU是并口連接。
由于終端上的許多設備使用的是串口連接,使用TI公司的16C554擴展串口,一共擴展出4個串口。分配給打印機、擴展功能串口、密碼鍵盤等。在主板上預留2個串口作為通用通訊模塊的接口和卡讀寫數(shù)據(jù)口。
時鐘芯片有單獨的鈕扣電池,在沒有外電和電池不足的情況下能維持時鐘。時鐘芯片鈕扣電池一般不用更換,用電池扣固定。時鐘芯片與主機為I2C接口。時鐘芯片內(nèi)部存放的是稅控機的時間,終端在上電后將該時間讀出,CPU內(nèi)部的RTC進行計時。當作為金融終端使用時,在簽到后,將金融時間和內(nèi)部時間比較,得到一個時間偏移量,這樣就能解決金融和稅控對時間的不同要求。
終端上還配備了PS/2接口,能外擴標準鍵盤,并能連接帶PS/2接口的條碼閱讀器。主板上鍵盤接口支持5×5掃描鍵盤。
顯示模塊使用320X240單色16級灰度顯示模塊,水平放置。該顯示模塊具有較強的背光,背光可以控制開啟和關閉。使用外部電源時,背光不關閉,背光使用冷光管。背光的亮度可以分5級調(diào)整[6]。
主控硬件電路原理框圖如圖1。由圖1可以看出系統(tǒng)由 CPU 、Flash memory、SDRAM 、卡控制電路、鍵盤接口電路、顯示電路、CS8900網(wǎng)卡電路、蜂鳴器電路、磁卡電路、RC531射頻卡電路、CF卡電路、TL16C554串口擴展電路、時鐘電路、觸摸屏控制電路等組成。CPU通過總線對Flash memory、SDRAM、CS8900進行控制,通過擴展地址和數(shù)據(jù)總線對 TL16C554、RC531、CF卡電路和磁卡電路進行控制[7]。
圖1 主控硬件電路原理框圖
2.2.1 主控處理器介紹
EP7312中央處理器核心邏輯功能以ARM720T處理器為基礎,ARM720T處理器帶8K字節(jié)CACHE和寫緩沖器,并集成了內(nèi)存管理單元(MMU)。EP7312處理器具有數(shù)字音頻解碼功能,內(nèi)置一個48K字節(jié)的片上SRAM,并有一個LCD控制器件。
2.2.2 觸摸屏接口電路
主板上的觸摸屏接口芯片采用ADS7846,該芯片支持工業(yè)標準的四線電阻式觸摸屏。其功耗低,通信速率快。
CPU通過ADCCLK時鐘信號、nADCCS片選信號、ADCOUT、ADCIN數(shù)據(jù)信號及 nPIRQ中斷信號與ADS7846連接,同時采集nPIRQ信號的狀態(tài)來判斷觸摸屏中斷的狀態(tài),更準確、有效的完成觸摸屏數(shù)據(jù)的采集。主板通過EP7312芯片ADC接口和該芯片相連,連接圖如圖2所示。
2.2.3 TL16C554接口電路
T L16C554是TI公司生產(chǎn)的串口擴展芯片,相當于增強型的由4個TL16C550異步通信單元(ACE)組成。每個異步通信單元(ACE)都有自己的可編程波特率發(fā)生器。它能夠完成外設端的串口數(shù)據(jù)向并口數(shù)據(jù)的轉(zhuǎn)換和CPU向外設傳送的并口數(shù)據(jù)向串口數(shù)據(jù)的轉(zhuǎn)換。TL16C554內(nèi)部有16字節(jié)的FIFO,可以對串口接收和發(fā)送的數(shù)據(jù)做緩沖。在FIFO模式,可以通過對 RTS和CTS兩信號線的控制來實現(xiàn)串口數(shù)據(jù)的自動流控制。這樣可以顯著減少軟件代碼量和提高系統(tǒng)的工作效率。
圖2 ADS7846接口圖
主板通過擴展總線同T L16C554芯片相連,電路原理見圖3,讀寫信號的接口見圖4。
稅控收款機軟件采用分層次結構化、模塊化設計,依次分為業(yè)務處理層、接口層、設備驅(qū)動層。其中業(yè)務處理層完成稅控收款機具體的業(yè)務處理;接口層作為業(yè)務處理層與設備驅(qū)動層的橋梁,提供與具體硬件平臺無關的應用程序接口;設備驅(qū)動層包含具體的硬件平臺的各種設備驅(qū)動程序。
采用上述架構設計的系統(tǒng)軟件,層次清晰,不相鄰的上下層沒有依賴關系,各模塊之間的耦合度低,具有良好的可移植性和可擴充性[9~10],系統(tǒng)工作狀態(tài)轉(zhuǎn)化見圖5。
終端可以劃分為如下7個狀態(tài):
1)初始化INIT狀態(tài)
2)IDLE狀態(tài)
3)工作SERVICE狀態(tài)
4)演示交易狀態(tài)
5)管理狀態(tài)(主管操作員)
6)維護MNTN狀態(tài)(系統(tǒng)管理員)
圖3 4 TL16C554接口圖
圖4 5 TL16C554接口電路
7)退出EXIT狀態(tài)數(shù)文件更新、數(shù)據(jù)文件上傳、程序升級的功能。并將操作結果報告給瀏覽器。通訊模塊應該保證在文件傳輸過程中的數(shù)據(jù)完整性;如果不能在規(guī)定時間內(nèi)不能完成傳輸過程,應當能夠及時退出。本模塊是一個單獨的任務,長期駐留內(nèi)存,通過消息管道接收瀏覽器的請求消息,根據(jù)消息類型進行相應的動作(上傳/下載),如果沒有請求消息,該模塊被掛起。該模塊是不可重入的,也就是說只有一次操作完成以后,才能進行下一次操作,當操作完成后,會將結果返回給瀏覽器。
3.2.2 模塊處理流程與狀態(tài)說明
1)通訊主控子模塊負責與其他模塊通訊,其功能包括:接收外部的消息,調(diào)用FTP函數(shù)進行文件傳輸,報告文件傳輸結果,強制退出通訊過程。
圖5 狀態(tài)轉(zhuǎn)化圖
3.2.1 模塊功能
通訊模塊要求能正常傳送、接收文件,實現(xiàn)參
2)FTP子模塊實現(xiàn)FTP協(xié)議的主要功能,實現(xiàn)傳輸命令,控制文件傳輸?shù)倪^程。
3)文件處理子模塊對下載后的文件進行處理?;蚝唵未姹P,或交給其他模塊處理,通訊子模塊分層見圖6。
圖6 通訊子模塊分層圖
當機器交流電源出現(xiàn)故障時,此時會收到掉電消息,如果稅控模塊發(fā)現(xiàn)處于空閑狀態(tài),立即向監(jiān)控模塊發(fā)送退出消息;如果正在處理數(shù)據(jù),在處理完一個完整的最小過程后發(fā)送退出消息,從而保證數(shù)據(jù)的完整性。
本系統(tǒng)充分利用EP7312芯片的硬件資源,通過軟件實現(xiàn)了符合ISO7816和ISO14443標準的智能IC卡和射頻卡接口,系統(tǒng)設計符合稅控收款機國家標準GB/T 18240.1-2003。整個系統(tǒng)設計簡潔,可靠性高[11],能與各種外設連接,具有很強的競爭優(yōu)勢。
1 夏建營.井噴在即的中國稅控收款機市場[J].金卡工程,2005(2)
2 David Seal.ARM Architecture Reference Manual.Second Edition[M].Pearson Education Limited(Addsion-Wesley),2001
3 李 巖.基于S3C44BOX嵌入式 uClinux系統(tǒng)原理及應用[M].北京:清華大學出版社,2005.
4 王愛英.智能卡技術(第二版)[M].北京:清華大學出版社,2000.
5 王卓人.王鋒.智能卡大全-智能卡的結構?功能?應用[M].北京:電子工業(yè)出版社,2002.
6 李維諟.液晶顯示應用技術[M].北京:電子工業(yè)出版社,2000.
7 曹丙霞.Protel99SE原理圖與PCB設計[M].北京:電子工業(yè)出版社,2007.
8 張國云.基于 USB接口的IC卡讀寫器設計[J].電子技術,2002(1)
9 譚浩強.C程序設計(第三版)[M].北京:清華大學出版社,2005.
10 李 宏.使用A RM標準C庫進行嵌入式應用程序開發(fā)[J].單片機與嵌入式系統(tǒng),2005(11)
11 楊克俊.電磁兼容原理與設計技術[M].北京:人民郵電出版社,2004.