基于ARM 技術一卡通消費系統(tǒng)設計
文章出處:http://srpd123.com 作者:王先彪 人氣: 發(fā)表時間:2011年12月08日
引言
隨著科學技術的不斷發(fā)展,一卡通系統(tǒng)市場越來越大,而一卡通消費系統(tǒng)作為它的主要組成部分發(fā)展卻比較慢,早在幾年前(甚至更早)的技術架構下發(fā)展。為改進現有消費系統(tǒng),增強市場競爭力,本文提出基于ARM 技術的一卡通消費系統(tǒng),不僅具有很好的市場效應,還能促進一卡通系統(tǒng)發(fā)展。
本設計具備以下特點:
1) 系統(tǒng)處理能力和穩(wěn)定性有一定提高,系統(tǒng)能管理百萬張IC 卡和百萬條消費記錄,并有快速響應能力;
2) 系統(tǒng)網絡得到改善,系統(tǒng)能提供高速、可靠的網絡通道,并支持未來的無線通信;
3) 提高了系統(tǒng)性能價格比,非單純的降低成本;
4) 系統(tǒng)既能工作在聯(lián)網狀態(tài)下,也能在脫網狀態(tài)下正常工作。
1 系統(tǒng)組成
1.1 系統(tǒng)總體設計
硬件設計:如圖1 所示,系統(tǒng)采用ARM7 S3C4510B芯片作處理器,使用RTL8201 構成以太網網絡通信接口,采用AT89C2051 作為PS/2 鍵盤輸入接口,再配合外部閃速存儲器K 9 F 1 2 0 8 和S D R A M 存儲器HY57V281620,8 位LED 顯示驅動芯片BC7281A 及非接觸式IC 卡驅動芯片MFRC500,構成整個電路,它具有可靠性高、處理能力和聯(lián)網能力強及性能價格比高等優(yōu)點。
軟件設計:除提供現有消費系統(tǒng)的所有功能外還提供32 位的運算能力,系統(tǒng)處理和響應能力提高。此外,系統(tǒng)使用標準的以太網接口和TCP/IP 協(xié)議,提供安全、快速的網絡聯(lián)接,因此本系統(tǒng)使用方便,具有很強的通用性和極大的系統(tǒng)拓展性。
1 . 2 系統(tǒng)主芯片介紹
ARM(Advanced RISC Machines)是一個公司名,既是一類微處理器的通稱,也是一種技術的名稱[ 3 ]。到目前為止,ARM 微處理器技術已廣泛應用于工業(yè)控制、無線通信、網絡、消費類電子產品、成像與安全產品等領域。
RISC 架構的ARM 微處理器具有以下特點:
1)體積小、低功耗、低成本、高性能;
2)支持Thumb(16 位)/ARM(32 位)雙指令集,能很好地兼容8 位/16 位器件;
3)精簡的指令集,指令執(zhí)行速度更快;
4)尋址方式靈活簡單,執(zhí)行效率高;
5)嵌入式的ICE-RT 邏輯,程序調試開發(fā)方便。32 位ARM微處理器處理能力是8 位單片機系統(tǒng)100倍以上,同時提供豐富的存儲器接口,有SRAM、SDRAM、FLASH、NAND FLASH 等,最大化實現系統(tǒng)2 GB 的存儲器容量,卡存儲量和數據存儲能力都十分巨大,系統(tǒng)響應時間也十分快捷。
由于ARM 微處理器的成本價格不斷下降,已經接近8 位微處理器的價格,所以,在小型系統(tǒng)的應用中,投入也只是稍有增加。但是,當系統(tǒng)增加到十幾個消費點以上,或者系統(tǒng)覆蓋區(qū)域較大時(超過1 000 m),因為組網的優(yōu)勢,系統(tǒng)的投入成本反而大大下降,同時,工程施工的費用也隨之大大降低[ 4 ]。
2 系統(tǒng)軟件設計
系統(tǒng)軟件主要包括主控程序、讀卡程序、通訊程序、顯示程序、鍵盤接口程序等。
2 . 1 主控軟件流程
主控軟件流程如圖2。
2 . 2 讀卡模塊
IC 卡操作作為軟件的一個模塊,是直接鑲嵌在程序主流程的刷卡操作部分,并通過返回的執(zhí)行狀態(tài)可知道執(zhí)行的結果。首先,程序查詢MF RC500 模塊的狀態(tài),有卡在感應區(qū)就開始卡操作流程,否則返回;然后,讀入必要的卡信息,并選擇要進行操作的卡(因會出現同時有幾張卡在感應區(qū)的情況);接著對卡的密碼進行驗證,只有符合本系統(tǒng)發(fā)放的密碼的卡才能操作,通過密碼驗證,就可進行卡讀、寫或其它操作。
2 . 3 通訊模塊
1) 發(fā)送數據。要發(fā)送數據,發(fā)送控制寄存器中的發(fā)送使能位必須置“1”,發(fā)送停止請求位必須清“0”。此外,MAC 控制寄存器中的立即停止位和停止請求位也必須清“0”,這些條件通常在初始化完成以后設置,然后由系統(tǒng)傳輸字節(jié)數據到發(fā)送數據緩沖區(qū)。
發(fā)送狀態(tài)機開始發(fā)送FIFO 中的數據,并保持前64個字節(jié)直到本站獲得網絡控制權。此時,發(fā)送模塊請求更多的數據并發(fā)送,直到到達發(fā)送數據包末尾,發(fā)送模塊添加經過計算的CRC 到數據包的末尾并發(fā)送出去,然后設置發(fā)送狀態(tài)寄存器,即表示成功發(fā)送。如果中斷使能,該操作同時產生一個中斷請求。
2) 接收數據。當接收模塊使能時,監(jiān)控從發(fā)送模塊傳來的數據流。接收模塊首先檢測前導字節(jié),然后在前8 個字節(jié)中尋找SFD(10101011),如果不能檢測到SFD,就將數據包當作碎片丟棄。然后,接收模塊每接收到一個字節(jié)就將其存儲到接收FIFO 中,同時發(fā)出Rx_rdy 接收等待信號。如此不斷地接收其后的數據并將其存入接收,直至數據包末尾,如果中斷使能,該操作同時產生一個中斷請求。
2.4 LED 顯示模塊
BC7281A 是8/16 位數碼管顯示專用控制芯片,通過外接LED移位寄存器(典型芯片如74HC164,74LS595等最多可以控制16 位數碼管顯示或128 只獨立的LED,BC7281A 驅動輸出極性及輸出時序均為軟件可控,可以和各種外部電路配合適用于任何尺寸的數碼管[ 5 ]。
2 . 5 鍵盤接口模塊
鍵盤接口設計采用ATMEL 公司的8 位簡易型單片機AT89C2051,主要是考慮減輕主CPU 負擔和通過PS/2 接口擴展接入其它的輸入、識別設備。
3 仿真和調試
3 . 1 軟件編制
ARM 提供集成開發(fā)工具ARM ADS(ARM DeveloperSuite),現在最新版本支持所有Windows 系列操作系統(tǒng)。ADS 由命令行開發(fā)工具、ARM 實時庫、GUI 開發(fā)環(huán)境(Code Warrior 和 AXD)、實用程序和支持軟件組成。使用戶方便地為ARM 系列的RISC 處理器編寫和調試自己的應用程序。
3 . 2 仿真與調試
使用仿真器時,首先通過主機將編譯產生的輸出文件加載到仿真器上,如圖3 所示。
在程序的調試過程中,可以采用設置或清除斷點;單步或連續(xù)跟蹤;修改控制字或程序計數器;觀察指針和寄存器的值,將數據區(qū)數據用圖形輸出;查看或修改堆棧內容等方法。只要充分利用這些強大的工具和手段,程序調試就得心應手的順利實現。
4 結語
基于ARM 微處理器無線產品在市場上十分成熟和暢銷,因而采用ARM 微處理器技術的一卡通消費系統(tǒng),必將領引一卡通消費系統(tǒng)乃至一卡通產品市場,其發(fā)展前景是其它一卡通系統(tǒng)所不能比擬的。目前國內一卡通消費系統(tǒng)使用ARM 技術的很少,在校園一卡通系統(tǒng)應用中尚無先例,所以,以上優(yōu)勢使本系統(tǒng)具有很好的市場潛力和投產價值。