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