IC卡自動加油機的設計
我們以方式0擴展89051的串行口,用8位串人并出移位寄存器74LS164和共陽極八段LED數(shù)碼管組成顯示器,共8位,用于顯示IC卡信息、加油信息和相關的工作狀態(tài)等。8個寄存器以串行方式連接,在同步時鐘TXD的作用下,顯示段碼從RXD快速移人寄存器,然后由LED數(shù)碼管顯示,采用這種靜態(tài)顯示方式不僅CPU控制簡單,而且可獲得較高的亮度。
“看門狗 ”電路是為了提高單片機系統(tǒng)的運行可靠性而設計的。系統(tǒng)受擾后可能出現(xiàn)程序跑飛現(xiàn)象,以至“死機”,影響到系統(tǒng)的正常工作,甚至涉及到設備及人身安全。但由MAX705組成了一“看門狗”后,使得在程序跑飛后89051自動復位,進而使CPU恢復運行。另外,也可對CPU進行手動復位。
3 軟件設計
加油機軟件用MCS一51匯編語言編制,采用結構化、模塊化程序設計方法,由鍵盤掃描及相關功能的實現(xiàn)、顯示處理、油量的計量,IC卡讀寫、油泵與電磁閥控制、20ms定時中斷服務、外部中斷0服務模塊等所組成,其主程序流程圖如圖4所示。
圖 4 加油機主程序流程圖
IC卡的可靠讀寫是本機系統(tǒng)軟件設計中的一個關鍵問題。經分析AT24COIA的讀寫時序,發(fā)現(xiàn)串行1/0數(shù)據線SDA上的狀態(tài)變化一定要發(fā)生在時鐘輸人SCL的低有效期間,在時鐘的上升沿將數(shù)據送人至EEPROM中;而在讀取卡上數(shù)據時,在時鐘的下降沿EEPROM輸出數(shù)據,同樣,SDA數(shù)據變化也發(fā)生在SCL的低有效期間,因而要在SCL高有效期內才能讀取卡的數(shù)據。下面以寫IC卡為例介紹編程實現(xiàn):
;開始位
4 結語
以890C51單片機為核心設計成的IC卡自動加油機,數(shù)據存儲可靠性高,軟件保密性好。近一年的實際應用表明:操作簡單、讀寫穩(wěn)定、效果良好,使加油中心的服務效率大為提高,對中心的現(xiàn)代化管理起到了極其重要的作用。此外,隨著經濟信息化進程的加快,該加油機在商業(yè)性加油站有廣闊的應用前景。(文/(上海交通大學自動化研究所 李志虎 邵惠鶴)
參考文獻
1、王愛英.智能卡技術〔M].北京:清華大學出版社,1996
2、何立民.單片機應用系統(tǒng)設計〔M].北京:北京航空航天大學出版社,1993
評論