




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
大學(xué)2010屆本科畢業(yè)論文基于單片機和RFID技術(shù)的無源IC卡讀寫器ThepassiveICCardRead–WriteBasedonMCUandRFID 論文作者姓名: 作者學(xué)號: 所在學(xué)院: 計算機與信息工程學(xué)院 所學(xué)專業(yè): 自動化 導(dǎo)師姓名職稱: (講師) 論文完成時間: 2010年5月20日2010年5月20日目錄摘要 4ABSTRACT 5第1章緒論 11.1設(shè)計概述 11.1.1設(shè)計背景 11.1.2設(shè)計意義 21.2IC卡技術(shù)的應(yīng)用與發(fā)展 21.3系統(tǒng)設(shè)計目標(biāo)及原則 31.3.1系統(tǒng)設(shè)計目標(biāo) 31.3.2系統(tǒng)設(shè)計原則 41.4論文的組織結(jié)構(gòu) 4第2章設(shè)計方案論證和系統(tǒng)結(jié)構(gòu) 62.1方案論證 62.2系統(tǒng)結(jié)構(gòu) 7第3章系統(tǒng)硬件設(shè)計 83.1單片機概述 83.1.1AT89S51單片機結(jié)構(gòu)和原理 83.2監(jiān)控模塊 103.2.1概述 103.2.2MAX813L的結(jié)構(gòu)及特點 113.2.3監(jiān)控接口電路 123.3鍵盤輸入模塊 133.4液晶顯示模塊 133.4.11602概述 133.4.2顯示接口電路 153.5報警器驅(qū)動模塊 163.6通信模塊 163.6.1MAX232概述 163.6.2通信接口電路 173.7讀寫器接口模塊 183.7.1Mifare1型非接觸式IC卡 183.7.2讀寫器芯片MFRC500 203.7.3接收天線 223.7.4MFRC500與AT89S51的接口電路 23第4章系統(tǒng)軟件設(shè)計 244.1主程序及子程序 26結(jié)論 33參考文獻(xiàn) 34摘要隨著改革開放的深入發(fā)展和市場經(jīng)濟體制的不斷完善,傳統(tǒng)的人工收費方式已越來越不適應(yīng)現(xiàn)代化管理的需要。在電子技術(shù)和通信技術(shù)飛速發(fā)展的同時,公交系統(tǒng)與IC卡技術(shù)的融合也就成為當(dāng)今社會發(fā)展的必然趨勢。這就使得公共交通自動收費的實現(xiàn)有了現(xiàn)實和技術(shù)上的可能性。本文提出了一種采用無線射頻技術(shù),以快速、安全、穩(wěn)定為性能指標(biāo)的非接觸式公交IC卡讀寫系統(tǒng)。論述了基于AT89S51單片機和MF-RC500的系統(tǒng)組成,并詳細(xì)的論述系統(tǒng)的工作機理以及相應(yīng)的硬件設(shè)計和軟件設(shè)計方案。關(guān)鍵詞:AT89S51;非接觸式IC卡;讀寫器;MF-RC500ABSTRACTWiththedeepeningofreformandopeningupthedevelopmentandconstantimprovementofthemarketeconomysystem,thetraditionalmanualchargingmethodshavenotmettheneedsofmodernmanagement.Withtheelectronictechnologyandthecommunicationstechnologyrapidlydeveloping,thepublictransportsystemandICcardtechnologyintegrationhasbecomeaninevitabletrendofsocialdevelopmenttoday.Thismakestherealizationofpublictransportfaresautomaticallyhavearealisticandtechnicalpossibility.Thisthesisputsforwardthenon-contactpublictransportationICcardreadersystemwhichadaptsradiofrequencytechnologyandtakesthefastsafeandstableastheperformance.AtthesametimethisarticlediscussesthecompositionofthesystemwhichbasedontheAT89S51andtheMF-RC500,andexplainstheworkingprincipleofthesystemandthecorrespondinghardwareandsoftwaredesignationsindetail.Keywords:AT89S51;non-contactICcard;reader;MF-RC500
第1章緒論1.1設(shè)計概述1.1.1設(shè)計背景公共交通是城市交通建設(shè)的主體,其公交運營工作的質(zhì)量和效率會直接影響到人們的日常生活和工作。而部分城市公交公司現(xiàn)行的售票方式已滯后于公交事業(yè)的整體發(fā)展,無人售票存在運營效率低,易收殘幣、假幣、破幣,對公交的社會效益和經(jīng)濟效益,城市形象都有消極的影響。手工的傳統(tǒng)的低效率的工作方式已經(jīng)不能適應(yīng)城市公共交通事業(yè)的發(fā)展。近幾年來,城市公交系統(tǒng)逐漸開始將IC卡技術(shù)應(yīng)運于公交收費系統(tǒng),不僅實現(xiàn)自動收費,電腦結(jié)算,而且縮短運行時間;減少點鈔人員和管理環(huán)節(jié),杜絕貪污,減少假幣、假票,加速了資金周轉(zhuǎn),促進(jìn)企業(yè)信息管理系統(tǒng)的完善,帶來了管理機構(gòu)和管理方式上的巨大變化。因此,IC卡應(yīng)用的推廣,可以改變城建系統(tǒng)企業(yè)傳統(tǒng)的管理服務(wù)方式,提高企業(yè)勞動效率,使企業(yè)經(jīng)濟效益和服務(wù)水平明顯提高,并對提高城市形象起到了極大的推動作用。實踐證明,以非接觸IC卡為支付介質(zhì)的建設(shè)事業(yè)IC卡應(yīng)用系統(tǒng)建設(shè)在城市公交、軌道交通、出租車、輪渡、高速路、停車場、公園景點等小額支付領(lǐng)域所表現(xiàn)的方便、快捷的卓越性能,是傳統(tǒng)的磁卡和接觸式IC卡不可比擬的。非接觸IC卡的推廣應(yīng)用為公交支付提供了安全可靠,方便高效的支付方式和完整的業(yè)務(wù)處理系統(tǒng),為提高公交行業(yè)的服務(wù)質(zhì)量,樹立公交行業(yè)優(yōu)質(zhì)高效服務(wù)的新形象,奠定了堅實的技術(shù)基礎(chǔ)。同時,為城市居民的出行提供了極大的方銀行更進(jìn)一步地發(fā)展持卡消費,創(chuàng)造了良好的條件。因此,隨著智能公交概念的提出和智能卡的深入發(fā)展,公交系統(tǒng)與非接觸IC卡技術(shù)相結(jié)合成為發(fā)展的必然要求。公共交通實行一卡通也是大勢所趨。但任何新事物都有缺乏經(jīng)驗的一面,也會出現(xiàn)令人無法預(yù)料的新情況,諸如卡丟失后無法掛失、卡內(nèi)存儲信息不全及充值煩瑣等問題。所以如何建立整個城市范圍內(nèi)的公交車收費系統(tǒng),并利用現(xiàn)代計算機和通訊技術(shù),實現(xiàn)乘客IC卡系統(tǒng)的集中化及現(xiàn)代管理,改善公交車、售卡充值點和公交公司之間的數(shù)據(jù)通訊能力,促進(jìn)各級內(nèi)部處理手段和辦公效率的全面提高,已成為公交企業(yè)當(dāng)前急待解決的問題。1.1.2設(shè)計意義主要從經(jīng)濟效益和社會效益兩個方面來講設(shè)計的意義。(1)經(jīng)濟效益1)加快乘客上車速度,減少車輛停站時間,加速車輛周轉(zhuǎn)等于減少車輛。2)促進(jìn)管理,加強經(jīng)濟改革,最終減少公交企業(yè)虧損。3)及時掌握客流情況,科學(xué)合理調(diào)度而創(chuàng)造效益。4)可以節(jié)省無人售票點鈔工作人員的費用。5)IC卡表面的封裝廣告和冠名權(quán)為運營公司帶來直接的收益。6)采用預(yù)收費的方式,增加企業(yè)周轉(zhuǎn)資金。7)有效制止了假幣的流通。(2)社會效益1)提高公共交通的服務(wù)檔次,符合建設(shè)國際城市的目標(biāo)。2)方便市民,減少社會現(xiàn)金流通量。3)提高車輛運行效率,節(jié)省乘車時間。4)收費及統(tǒng)計全面自動化管理,有效堵塞漏洞,杜絕可能發(fā)生的管理人員貪污及假票現(xiàn)象。5)提高城市市政交通的信息化管理水平,響應(yīng)國家促進(jìn)城市信息化建設(shè)的號召,提升當(dāng)?shù)氐某鞘忻婷玻瑸槌鞘械陌l(fā)展帶來新的商機。1.2IC卡技術(shù)的應(yīng)用與發(fā)展IC卡的概念是20世紀(jì)70年代初提出的,法國布爾公司于1976年首先創(chuàng)造出IC卡產(chǎn)品,并將這項技術(shù)應(yīng)用到金融、交通、醫(yī)療、身份證明等多個行業(yè),它將微電子技術(shù)和計算機技術(shù)結(jié)合在一起,提高了人們的生活水平,滿足了工作的現(xiàn)代化需求。IC卡的英文全名是IntegratedCircuitCard,IC卡將具有存儲、加密、數(shù)據(jù)處理能力的一個或多個集成電芯片鑲嵌于塑料卡片之中的,既具有智能性,又便于攜帶的卡片。而非接觸式IC卡是世界上最近幾年發(fā)展起來的一項新技術(shù),它成功地將射頻識別技術(shù)和IC卡技術(shù)結(jié)合起來.這一新技術(shù)結(jié)束了IC卡無源可工作和卡片免接觸工作這一難題,是電子器件應(yīng)用發(fā)展過程中的一大突破。非接觸IC卡和接觸IC卡相比具有可靠性高、操作方便、防沖突、可適合于多種應(yīng)用、加密性能好等優(yōu)點。IC卡具有信息存儲量大、數(shù)據(jù)保密性好、可反復(fù)讀寫、易于管理等優(yōu)點。因而發(fā)展迅速,在金融、通信、交通等眾多領(lǐng)域這后來居上,已成為信息時代這不可缺少的重要工具之一,廣泛地應(yīng)用于社會事業(yè)的各個領(lǐng)域,出現(xiàn)在人們的日常生活中。IC卡不僅改進(jìn)了現(xiàn)有多種卡的使用方法和功能作用,它還不斷開創(chuàng)出新的應(yīng)用發(fā)展領(lǐng)域。IC卡的產(chǎn)生現(xiàn)代信息的處理和傳遞提供了一種全新的手段,它一出現(xiàn)就備受關(guān)注和重視。1987年起,國際化標(biāo)準(zhǔn)組織ISO專門為IC卡制訂了國際標(biāo)準(zhǔn)。國際標(biāo)準(zhǔn)的制訂為IC卡在全世界范圍內(nèi)的推廣和應(yīng)用,為IC卡在使用過程中的規(guī)范化創(chuàng)造了前提和條件。從技術(shù)角度看,在IC卡應(yīng)用過程中有以下幾個發(fā)展趨勢。1.從存儲器IC卡同CPU卡方向發(fā)展?,F(xiàn)在全國發(fā)行的IC卡中,90%以上是采用存儲器IC卡。隨著應(yīng)用要求提高,且CPU卡價格下降,在今后幾年內(nèi),CPU卡的應(yīng)用總量將呈大幅度上升趨勢:2.非接觸式IC卡應(yīng)用將大幅度增加。目前,非接觸式IC卡已成為世界智能卡發(fā)展的主流。非接觸式IC卡十分適用于地鐵、公交、自來水、燃?xì)獾仁召M的日常生活消費領(lǐng)域,在我國已開始使用。下一代最具有前途的IC卡是接觸式IC卡和非接觸式IC卡的復(fù)合卡,對于需要特別靈活的多用途應(yīng)用來說,它既能提供接觸式應(yīng)用,又有非接觸式應(yīng)用功能,為產(chǎn)品提供十分靈活的選擇。3.對IC卡安全性提出越來越高的要求。金融IC卡、個人身份證等應(yīng)用要求IC卡具有高安全性,要求應(yīng)用程序在一個安全環(huán)境中裝載和運行。一方面要求IC卡本身具有高安全性,具有DES加密算法和有512位或1024為公開密鑰計算能力和加密卡可滿足不同安全等級的要求;另一方面要加強IC卡安全管理,密鑰管理尤其重要。4.一卡多用是IC卡發(fā)展的大方向。為了方便人們使用,同時規(guī)范應(yīng)用市場,提高應(yīng)用水平,需要推出一卡多用或多卡通用的IC卡。1.3系統(tǒng)設(shè)計目標(biāo)及原則1.3.1系統(tǒng)設(shè)計目標(biāo)公交汽車IC卡控制系統(tǒng)采用了先進(jìn)的非接觸式IC技術(shù)和計算機技術(shù),以公交售卡充值IC卡讀寫器為設(shè)計對象的主體,以計算機系統(tǒng)為信息處理方法的現(xiàn)代化管理系統(tǒng),充分利用了非接觸式IC交易時間短,快捷,方便的特點,作為公交汽車控制系統(tǒng)的一種全新的現(xiàn)代化管理手段,提高了公交車輛的運營服務(wù)水平,使城市公交管理開放,不僅取得了較好的經(jīng)濟效益,同時還取得了良好的社會效益。公交汽車IC卡控制系統(tǒng)把公交汽車的售票方式以IC卡電子收費作為支付手段,以提高客運汽車的收費速度、簡單快捷的售卡充值方式、自動化處理客運信息、準(zhǔn)備結(jié)算、動態(tài)分析運營信息為目的,為客運企業(yè)的運營,城市交通管理,城市建設(shè)及發(fā)展提供了良好的科學(xué)依據(jù)。系統(tǒng)設(shè)計目標(biāo)如下:1.為運營公交公司提供完善的、穩(wěn)定的、可靠的管理功能。2.實現(xiàn)公交控制系統(tǒng)的規(guī)范化和數(shù)字化管理。3.收集公交運營數(shù)據(jù),建立可供管理分析的數(shù)采集系統(tǒng)。4.控制系統(tǒng)具有可靠的安全管理系統(tǒng)。5.模塊化的軟硬件設(shè)計具有開放性、可擴展性、以便進(jìn)行二次開發(fā)。6.盡可能簡單明了操作方式,以實現(xiàn)IC卡讀寫器的運作及管理。1.3.2系統(tǒng)設(shè)計原則公交汽車IC卡控制系統(tǒng)設(shè)計要求在最大限度上滿足公交公司不斷增長和變化的業(yè)務(wù)需求。同時也使公交公司能在最大限度保護(hù)其投資的前提下利用迅速發(fā)展的新技術(shù)和產(chǎn)品。系統(tǒng)設(shè)計方案遵循一下原則設(shè)計:1.實用原則:采用的技術(shù)路線和采用的產(chǎn)品是成熟,可靠,易于操作的,設(shè)計結(jié)果能滿足客戶的需求并行之有效。2.安全原則:采用有效可信的安全措施,實現(xiàn)系統(tǒng)多層次的安全管理。3.高效原則:軟硬件性能充分發(fā)揮,資源利用率高,性能好。4.可擴展原則:能夠使系統(tǒng)在規(guī)模和性能兩方面有擴展余地。1.4論文的組織結(jié)構(gòu)本文的目的就是尋求一套更加完善的公交汽車IC卡控制系統(tǒng)方案。本文重點介紹以AT89S51單片機和非接觸式IC卡讀讀寫器MFRC500為核心,設(shè)計出一套性能好、安全措施有效可信、管理平臺完善的公交非接觸式IC卡控制系統(tǒng)。本文主要工作如下:1.完成公交汽車IC卡控制系統(tǒng)整體方案設(shè)計。根據(jù)公交汽車IC卡控制系統(tǒng)所要達(dá)到的性能指標(biāo),進(jìn)行總體方案設(shè)計。2.以單片機AT89S51為核心實現(xiàn)公交汽車IC卡控制系統(tǒng)硬件設(shè)計。3.完成公交汽車IC卡控制系統(tǒng)的軟件設(shè)計。基于匯編語言的編程方式,實現(xiàn)整個系統(tǒng)軟件的設(shè)計。第2章設(shè)計方案論證和系統(tǒng)結(jié)構(gòu)2.1方案論證從提供電源的角度來看,非接觸式IC卡可分為有源和無源兩種。無源系統(tǒng)的能量由數(shù)據(jù)載頻提供,有源系統(tǒng)是在卡內(nèi)封裝一塊非常薄的電池。從成本和生產(chǎn)方面考慮,無源系統(tǒng)是主流。從工作距離來分,非接觸式IC卡有3種:近距離耦合(<2mm),鄰近藕合(<10cm),遠(yuǎn)距離耦合(>15cm)。其中近距離藕合由于優(yōu)勢不明顯而應(yīng)用較少,而藕合距離較遠(yuǎn)的射頻卡使用較普遍且最具發(fā)展?jié)摿?。從讀寫方式上,非接觸式IC卡還有主動交易式和被動交易式之分:主動交易式指卡片需要主動靠近讀卡器,用戶需要持卡在讀卡器上晃過去才會完成交易;被動交易式可以不用出示,比如揣在外衣口袋里,當(dāng)走過讀寫器的識別距離范圍內(nèi)就可完成交易。非接觸式IC卡,由于卡與讀寫器間無機械接觸,而是借助“空間媒介”電磁波進(jìn)行通訊,故在保留接觸式智能卡原有優(yōu)點的同時,又具備如下諸多長處:(1)可靠性高、壽命長卡與讀寫器間無機械接觸,故不存在接觸式讀寫器可能出現(xiàn)的各種故障,卡和讀寫器均無裸露觸點,則無須擔(dān)心觸點損壞或脫落所致之卡片失效??ê妥x寫器均為全封閉防水、防塵結(jié)構(gòu),既避免了靜電、塵污對卡的影響,操作快捷便利。這些都將大大提高卡乃至機具的可靠性和使用壽命。(2)防偽性好每張卡都有一個由制造商在產(chǎn)品出廠前固化于芯片的32位序列號,一旦寫入即不可更改,且世界惟一。(3)安全性好卡與讀寫器間采用三次相互確認(rèn)的雙向驗證機制,在讀寫器驗證卡的合法性的同時卡也對讀寫器合法性進(jìn)行檢驗。所有通訊數(shù)據(jù)均加密,以防止信號截取??▋?nèi)各扇區(qū)均有自己的操作密碼和訪問條件,并實行芯片傳輸密碼保護(hù)。(4)抗干擾能力強具備防沖突(防碰撞)機制,同一時間可“同時”處理多張卡,而不致出現(xiàn)相互間的數(shù)據(jù)干擾。(5)一卡多用用戶可根據(jù)需要,靈活定義各存儲扇區(qū)的密碼和訪問條件,以便互不影響地分別滿足不同場合、不同用途的要求。綜上述兩種IC卡的介紹,采用非接觸式IC卡來完成公交汽車IC卡控制系統(tǒng)的設(shè)計。目前,在世界智能卡市場上主要有三大品牌:Mifare,Temic,Legic它們各具特點,性能也各具千秋。但由于市場占有率和性能價格比Temic和Legic不如Mifare1型IC卡,因此通常選擇Mifare1型射頻IC卡作為公交控制系統(tǒng)的信息載體。在本系統(tǒng)采用符合IS014443標(biāo)準(zhǔn)的Mifare1型非接觸式邏輯加密卡。2.2系統(tǒng)結(jié)構(gòu)公交IC卡讀寫器的硬件結(jié)構(gòu)框圖,如圖2-1主要由單片機、監(jiān)控電路、鍵盤電路、顯示電路、IC卡的讀寫器、天線和以及與PC機通信的RS232串行通信接口電路組成。單片單片機鍵盤電路監(jiān)控電路PC機通信報警電路感應(yīng)天線IC卡讀寫器顯示電路電源電路圖2-1系統(tǒng)結(jié)構(gòu)框圖本系統(tǒng)以AT89S51單片機作為微控制器,采用MF-RC500芯片作為射頻卡讀/寫模塊,以MAX813L作為系統(tǒng)看門狗監(jiān)控器,采用大屏幕點陣LCD顯示,并以RS232接口和計算機通信,組成一套功能齊全的非接觸IC卡讀寫系統(tǒng)。第3章系統(tǒng)硬件設(shè)計3.1單片機概述AT89S51是美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機,片內(nèi)含有4kbytes的可系統(tǒng)編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳。它集Flash程序存儲器既可在線編程(ISP)也可用傳統(tǒng)方法進(jìn)行編程及通用8位微處理器于單片芯片中,ATMEL公司的AT89S51單片機功能強大,價位低,可靈活應(yīng)用于各種控制場合。3.1.1AT89S51單片機結(jié)構(gòu)和原理AT89S51的引腳排布如圖3-1所示:圖3-1圖3-1(1)VCC:電源電壓(2)GND:接地(3)RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。(4)/EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。(5)XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。(6)XTAL2:來自反向振蕩器的輸出。(7)P0口:P0口為一個8位漏極開路雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時,每個管腳可吸收8TTL門電流。當(dāng)P0口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗時,P0輸出原碼,此時P0外部必須被拉高。(8)P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能吸收或輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。(9)P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可吸收或輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。(10)P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可吸收或輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89S51的一些特殊功能口,如下表3-1所示:
口管腳備選功能P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2/INT0外部中斷0P3.3/INT1外部中斷1P3.4T0記時器0外部輸入P3.5T1記時器1外部輸入P3.6/WR外部數(shù)據(jù)存儲器寫選通P3.7/RD外部數(shù)據(jù)存儲器讀選通表3-1P3特殊功能口P3口同時為閃爍編程和編程校驗接收一些控制信號。(11) ALE//PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。(12)/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。3.2監(jiān)控模塊3.2.1概述隨著單片機技術(shù)的發(fā)展和制造工藝的日益成熟,單片機的應(yīng)用領(lǐng)域不斷拓寬,但由于單片機自身的抗干擾能力較差,尤其是在一些條件比較惡劣,噪聲大的場合,常會出現(xiàn)單片機因受外界干擾而導(dǎo)致死機的現(xiàn)象,造成系統(tǒng)不能正常工作。設(shè)置看門狗是防止單片機死機、提高單片機系統(tǒng)抗干擾性的一種重要途徑。本監(jiān)控電路采用性能可靠、使用簡單、價格低廉的MAX813L芯片,MAX813L芯片應(yīng)用在單片機產(chǎn)品中能夠很好的提高硬件的抗干擾能力。在公交汽車IC卡控制系統(tǒng)的讀寫器設(shè)計中它是個看門狗定時器。其功能是:上電和掉電時給AT89S51產(chǎn)生RESET信號,由看門狗定時器對系統(tǒng)進(jìn)行監(jiān)控,防止死機。3.2.2MAX813L的結(jié)構(gòu)及特點(1)MAX813L芯片特點
加電、掉電以及供電電壓下降情況下的復(fù)位輸出,復(fù)位脈沖寬度典型值為200ms。
獨立的看門狗輸出,如果看門狗輸入在1.6s內(nèi)未被觸發(fā),其輸出將變?yōu)楦唠娖健?/p>
1.25V門限值檢測器,用于電源故障報警、電池低電壓檢測或+5V以外的電源。
門限電壓為4.65V
低電平有效的手動復(fù)位輸入。
8引腳DIP封裝。(2)引腳及功能MAX813L引腳如圖3-3所示。圖圖3-3MAX813L引腳圖引腳功能:1)手動復(fù)位輸入端():當(dāng)該端輸入低電平保持140ms以上,MAX813L就輸出復(fù)位信號.該輸入端的最小輸入脈寬要求可以有效地消除開關(guān)的抖動。與TTL/CMOS兼容。2)工作電源端(VCC):接+5V電源。3)電源接地端(GND):接0V參考電平。4)電源故障輸入端(PFI):當(dāng)該端輸入電壓低于1.25V時,5號引腳輸出端的信號由高電平變?yōu)榈碗娖健?)電源故障輸出端():電源正常時,保持高電平,電源電壓變低或掉電時,輸出由高電平變?yōu)榈碗娖健?)看門狗信號輸入端(WDI)程序正常運行時,必須在小于1.6s的時間間隔內(nèi)向該輸入端發(fā)送一個脈沖信號,以清除芯片內(nèi)部的看門狗定時器。若超過1.6s該輸入端接收不到脈沖信號,則內(nèi)部定時器溢出,8號引腳由高電平變?yōu)榈碗娖健?)復(fù)位信號輸出端(RST):上電時,自動產(chǎn)生200ms的復(fù)位脈沖;手動復(fù)位端輸入低電平時,該端也產(chǎn)生復(fù)位信號輸出。8)看門狗信號輸出端():正常工作時輸出保持高電平,看門狗輸出時,該端輸出信號由高電平變?yōu)榈碗娖健?.2.3監(jiān)控接口電路看門狗的周期輸入信號WDI可以從微處理器的地址信號、數(shù)據(jù)信號或控制信號中獲得,不論哪種信號都必須能夠周期性的訪問MAX813L,對于MCS51系列單片機,一般使用ALE信號。圖3-4監(jiān)控接口電路MAX813L與AT89S51單片機的接口電路如圖3-4圖3-4監(jiān)控接口電路S1為手動復(fù)位按鍵。3.3鍵盤輸入模塊本系統(tǒng)采用矩陣式鍵盤,當(dāng)讀寫器不聯(lián)計算機獨立工作時,完成讀卡、寫卡、加值、減值等控制。在系統(tǒng)軟件中軟件實現(xiàn)時,可采用中斷方式,也可以采用查詢方式,本系統(tǒng)采用查詢方式。鍵盤接口電路圖如圖3-5所示:圖圖3-5鍵盤接口電路圖鍵盤接口電路共有4個鍵。其中K4為加值鍵,K3為減值鍵,K2為退出鍵,K1為清屏鍵。加值鍵:通過此鍵對用戶卡進(jìn)行加值。減值鍵:通過此鍵對用戶卡進(jìn)行減值。退出鍵:通過此鍵對用戶卡進(jìn)行顯示操作。清屏鍵:通過此鍵對用戶卡顯示進(jìn)行清屏操作。3.4液晶顯示模塊3.4.11602概述顯示模塊采用點陣式LCD液晶顯示,使用戶自定義輸入變得非常方便。液晶顯示屏輕薄短小、低耗電量、平面直角顯示影像穩(wěn)定,并且可視面積大、畫面效果好、分辨率高、抗干擾能力強,能夠滿足本系統(tǒng)顯示信息的需求。LCD自帶字符庫,不必利用控制芯片創(chuàng)建字符庫,利用LCD的字符庫進(jìn)行編程,可以實現(xiàn)各信息的顯示,既節(jié)約了資源,又省去了大量的編程任務(wù)。1602液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點,在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用。(1)引腳結(jié)構(gòu)和功能。1062引腳分布如圖3-6所示。 圖3-61602引腳圖1602引腳功能如表3-1所示。表3-1引腳功能表第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW為低電平時可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。第15~16腳:BLA(BL1)為LED背光正極。需要背光時,BLA串接一個限流電阻接VDD,BLK接地,實測該模塊的背光電流為50mA左右,一般接一個幾十歐姆的電阻,47歐、33歐等;BLK(BL2)為LED背光地端。(2)1602數(shù)據(jù)顯示原理1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點陣字符圖形,如表1所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我們就能看到字母“A”。1602還可以生產(chǎn)8組5×8點陣的字符模,相對應(yīng)的字符碼從CGROM的00H~07H范圍內(nèi)選擇。這樣1602就可以顯示用戶自定義的字符了。自定義字符最多同時只能編寫8個“元”字的字符表為:0EH,00H,1FH,0AH,0AH,0AH,13H,00H。3.4.2顯示接口電路本系統(tǒng)的讀寫器采用1602液晶顯示器顯示,利用串行輸入控制指令實現(xiàn)1602與單片機系統(tǒng)的顯示接口,以顯示IC卡中的余額。1602液晶顯示器與AT89S51的接口電路如圖3-7所示。圖圖3-7顯示接口電路3.5報警器驅(qū)動模塊圖3-8蜂鳴器驅(qū)動電路如圖3-8所示,驅(qū)動器的輸入端接AT89S51的P1.7。蜂鳴器是在每次讀卡操作不成功的時候發(fā)出報警指示音。由于MCU的I/O口驅(qū)動能力有限,一般不能直接驅(qū)動壓電式蜂鳴器,因此選用一PNP型晶體管組成晶體管驅(qū)動電路。MCUI/O口(P1.7)輸出經(jīng)驅(qū)動電路放大后即可驅(qū)動蜂鳴器。本設(shè)計中當(dāng)P1.7輸出高電平“1”時,晶體管導(dǎo)通,蜂鳴器獲得5V電壓而發(fā)出警報;P1.7輸出低“0圖3-8蜂鳴器驅(qū)動電路 3.6通信模塊3.6.1MAX232概述由于RS232采用負(fù)邏輯,并且其電壓規(guī)定也與常用的TTL電平不符合,所以,在用RS232進(jìn)行串行通信時必須進(jìn)行電平轉(zhuǎn)換。本系統(tǒng)設(shè)計中采用的電平轉(zhuǎn)換芯片是MAX232。(1)MAX232的引腳結(jié)構(gòu)和功能圖3-9MAX232引腳圖圖3-9MAX232引腳圖2)引腳功能
Vcc:電源
GND:電源地
電源轉(zhuǎn)換部分:V+、V-、電容C1、C2、C3、C4
接收部分:T1IN、T2IN、R1IN、R2IN
發(fā)送部分:T1OUT、T2OUT、R1OUT、R2OUT (2)MAX232的特點MAX232芯片包含兩路驅(qū)動器和接收器的RS232電平轉(zhuǎn)換芯片,適用于噪聲嚴(yán)重環(huán)境下的公交IC卡控制系統(tǒng)中的RS232通信。每個發(fā)送器輸出和接收器輸入勿需封閉均可抗擊±15V靜電放電沖擊。能保證最高達(dá)120Kbps的數(shù)據(jù)傳輸速率。MAX202芯片內(nèi)部有一個電源電壓變換器,可以把輸入+5V電源電壓變換成為RS232輸出電平所需的±10V電壓,所以采用此芯片接口的串行通信系統(tǒng)只需單一的+5V電源即可。在實際應(yīng)運中,T1IN、T2IN可以直接連接TTL/CMOS的AT89S51單片機的串行發(fā)送端TXD引腳。R1OUT、R2OUT可以直接連接TTL/CMOS的AT89S51單片機的串行接收端TXD引腳。T1OUT、T2OUT可以直接連接PC機的RS232串口的接收端RD。R1IN、R2IN可以直接連接PC機的RS232串口的發(fā)送端TD。3.6.2通信接口電路系統(tǒng)設(shè)計中采用串行接口芯片MAX232實現(xiàn)AT89S51單片機和PC機的RS232接口通信電路如圖3-10所示。圖圖3-10通信電路從MAX232芯片中的兩路發(fā)送接受中選擇T1IN、R1OUT、R1IN、T1OUT作為接口。V+、V-是電源變換部分,使用單一的+5V電源供電,電容C1、C2、C3、C4采用0.1uF的電容,以提高抗干擾能力。因為器件對電源噪聲很敏感,所以芯片的Vcc必須要對地加0.1uF去耦電容。且要注意其發(fā)送與接收引腳對應(yīng),否則可能對器件或計算機串口造成永久性損壞。3.7讀寫器接口模塊3.7.1Mifare1型非接觸式IC卡(1)工作原理非接觸式IC卡的數(shù)據(jù)通信采用的是射頻識別技術(shù)。射頻識別技術(shù),即指應(yīng)用射頻識別信號對目標(biāo)物進(jìn)行識別,是非接觸式自動識別技術(shù)的一種,它通過射頻信號自動識別目標(biāo)對象并獲取相關(guān)數(shù)據(jù)。射頻識別系統(tǒng)一般由應(yīng)答器和閱讀器兩個部分組成,應(yīng)用中,應(yīng)答器附著在待識別的物品上,閱讀器用于當(dāng)附著應(yīng)答器的待識別物品通過其讀出范圍時,自動以無接觸的方式將應(yīng)答器中的約定識別信息取出,從而實現(xiàn)自動識別物品或自動收集物品標(biāo)識信息的功能。應(yīng)答器與閱讀器之間通過耦合元件實現(xiàn)射頻信號的空間(無接觸)耦合、在藕合通道內(nèi),根據(jù)時序關(guān)系,實現(xiàn)能量的傳遞、數(shù)據(jù)的交換。Mifare1型非接觸式IC卡是一種可以用于電子錢包和公共交通收費系統(tǒng)等方面的多功能卡。非接觸性IC卡與讀卡器之間通過無線電波來完成讀寫操作。二者在13.56MHz工作頻率下,以半雙工方式進(jìn)行讀寫器與IC卡之間的雙向數(shù)據(jù)傳輸。非接觸式IC卡讀寫器將要發(fā)送的信息編碼后加載到一固定頻率的載波上,卡片內(nèi)有一個LC串聯(lián)諧振電路,其載波頻率與讀寫器發(fā)射的頻率相同,在電磁波的激勵下,LC諧振電路產(chǎn)生共振,從而使電容內(nèi)有了電荷,在這個電容的另一端,接有一個單向?qū)ǖ碾娮颖?,將電容?nèi)的電荷送到另一個電容內(nèi)儲存,當(dāng)所積累的電荷達(dá)到2V時,此電容可做為電源為其它電路提供工作電壓、復(fù)位信號、系統(tǒng)時鐘,讀寫器發(fā)送的數(shù)據(jù)信息經(jīng)過卡內(nèi)射頻接口模塊解碼,由控制單元來判斷這些信息的要求和合理性,然后進(jìn)行處理,最終決定是否對EEPROM內(nèi)的數(shù)據(jù)進(jìn)行改寫或者輸出。讀寫器和IC卡之間通過無線方式通信,因此它們都有無線收發(fā)模塊及天線(或感應(yīng)線圈)。射頻卡中有存儲器,內(nèi)存容量為幾十字節(jié)到幾K字節(jié),可以用來存儲用戶數(shù)據(jù)和系統(tǒng)數(shù)據(jù)等。射頻卡可根據(jù)閱讀器發(fā)出的指令對這些數(shù)據(jù)進(jìn)行相應(yīng)的實時讀寫操作??刂颇K完成接受、譯碼及執(zhí)行閱讀器命令,控制讀寫數(shù)據(jù),負(fù)責(zé)數(shù)據(jù)安全等功能。射頻卡的幾個模塊集成到一塊芯片中,芯片外圍只需連接天線,對有源卡還必須有電源。閱讀器中控制模塊往往有很強的處理功能,除了完成控制射頻卡工作的任務(wù)外,還需要實現(xiàn)相互認(rèn)證、數(shù)據(jù)加密解密、數(shù)據(jù)校驗、出錯報警及與計算機的通信等功能。 (2)性能指標(biāo)1)容量為8K位EEPROM;2)分為16個扇區(qū),每個扇區(qū)為4塊,每塊16個字節(jié),以塊為存取單位;3)三次相互認(rèn)證(ISOIIECDIS9798-2),每個扇區(qū)有獨立的一組密碼及訪問控制;4)每張卡有唯一序列號,為32位;5)具有防沖突機制,支持多卡操作,一時間可處理多張卡;6)無電源,自帶天線,內(nèi)含加密控制邏輯和通訊邏輯電路;7)數(shù)據(jù)保存期為10年,改寫10萬次,讀無限次;8)工作頻率:13.56MHz;9)通信速率:106Kbps;10)動態(tài)讀寫距離:在l00MM內(nèi),能方便、快速地傳遞數(shù)據(jù),每塊有16位CRC糾錯,每字節(jié)有奇偶校驗位。(2)接口功能Mifare1型卡含有1024X8bitEEPROM,分為16個區(qū),每個分區(qū)都具有獨特存取條件,如寫保護(hù)、讀保護(hù)、獨立的密鑰等。接口分為射頻接口模塊和數(shù)字接口模塊。1)射頻接口模塊主要完成的功能
卡本身無電源,需通過該模塊中的電源產(chǎn)生電路并經(jīng)整流、濾波、穩(wěn)壓后,為芯片提供直流工作電壓。
由時鐘發(fā)生器提供芯片工作所需的系統(tǒng)時鐘口
由上電復(fù)位電路提供芯片工作所需的初始化復(fù)位脈沖。
完成通訊過程中的調(diào)制、解調(diào)、編碼、解碼。
由電荷泵提供擦寫EEPROM時所需的高壓。2)芯片電路的數(shù)字部分中各塊的功能
復(fù)位響應(yīng)電路Mifare1型射頻卡的通訊協(xié)議和通訊波特率是定義好的,當(dāng)有卡片進(jìn)入讀寫器的操作范圍時,讀寫器對IC卡進(jìn)行上電復(fù)位,自動將卡的有關(guān)信息傳遞給讀寫器,從而確定該卡是否為Mifare1型射頻卡,以便使讀寫器正確識別卡類型并對其進(jìn)行相應(yīng)操作。即復(fù)位響應(yīng)電路主要完成驗證卡片卡型的工作。
防沖突電路當(dāng)有多張卡進(jìn)入讀寫器工作范圍時,防沖突機制會從中選擇一張作為處理對象,并通過防沖突電路使未選中的卡置于空閑模式以等待下一次被選擇,該過程會返回被選中卡的序列號。
應(yīng)用選擇電路由于Mifare1型卡可“一卡多用”,它負(fù)責(zé)從存儲區(qū)中選擇所需的應(yīng)用。
認(rèn)證與存取控制電路驗證密碼和訪問權(quán)限以控制對EEPROM的訪問。
控制與算術(shù)單元對卡片系統(tǒng)進(jìn)行配置、控制和對卡內(nèi)數(shù)據(jù)進(jìn)行加減運算。
加密單元對通訊數(shù)據(jù)進(jìn)行加密解密等。
EEPROM接口電路對EEPROM進(jìn)行譯碼和讀寫擦除等操作。
EEPROM存儲數(shù)據(jù)。3.7.2讀寫器芯片MFRC500MF-RC500是Philips公司生產(chǎn)的應(yīng)用于13.56MHz非接觸通信中高度集成讀寫器芯片。該讀卡器IC系列利用先進(jìn)的調(diào)制和解調(diào)概念,完全集成了在13.56MHz下所有類型的被動非接觸式通信方式和協(xié)議。內(nèi)部的發(fā)送器部分不需要增加有源電路就能直接驅(qū)動近距離工作的天線(可達(dá)100mm),接收器部分提供一個堅固有效的調(diào)制和解碼電路,用于ISO/IEC14443兼容的應(yīng)答器信號;數(shù)字部分處理ISO/IEC14443-2-2001幀和錯誤檢測(奇偶校驗和CRC)。此外,還支持快速CRYPTO1加密算法用于驗證MIFARE系列產(chǎn)品。方便的并行接口可直接連接到任何8位處理器,給讀寫器的設(shè)計提供了極大地靈活性。MFRC500的功能框圖如圖3-11所示。圖圖3-11MFRC500功能框圖由圖可知,MFRC500內(nèi)部包括并行微控制器接口、雙向FIFO緩沖區(qū)、中斷、數(shù)據(jù)處理單元、狀態(tài)和控制單元、安全和密碼控制單元、模擬電路接口及天線接口。MFRC500的外部接口包括數(shù)據(jù)總線、地址總線、控制總線和電源等。(1)MFRC500的引腳功能MFRC500引腳如圖3-12所示,MFRC500為32腳SO32封裝。圖圖3-12MFRC500引腳圖 (2)MFRC500的特征1)高集成度模擬電路以用于電子標(biāo)簽應(yīng)答的解調(diào)和解碼;2)緩沖輸出驅(qū)動器使用最少數(shù)目的外部元件以連接到天線;3)近距離操作(可達(dá)100mm);4)用于連接13.56MHz石英晶體的快速內(nèi)部振蕩器緩沖區(qū);5)帶低功耗的硬件復(fù)位功能;6)時鐘頻率監(jiān)視;7)軟件實現(xiàn)掉電模式;8)并行微處理器帶有內(nèi)部地址鎖存和IRQ線,可以很方便地與MCU接口;9)有易用的發(fā)送和接收FIFO緩沖區(qū);10)支持Mifare卡有關(guān)協(xié)議;11)支持MifareClasic;12)適合高安全性的終端;13)數(shù)字、模擬、發(fā)送電路都有各自獨立的供電電源。3.7.3接收天線MFRC500通過TX1和TX2提供13.56MHz的能量載波,驅(qū)動天線。根據(jù)寄存器的設(shè)定對發(fā)送數(shù)據(jù)進(jìn)行調(diào)制來得到發(fā)送的信號,在其射頻范圍內(nèi)的非接觸卡采用RF場的負(fù)載調(diào)制進(jìn)行響應(yīng)。天線接收到卡片的響應(yīng)信號經(jīng)過天線匹配電路送到MF-RC500的接收引腳RX,MF-RC500的內(nèi)部接收器對信號進(jìn)行檢測和解調(diào)并根據(jù)寄存器的設(shè)定進(jìn)行處理,最后將數(shù)據(jù)發(fā)送到并行接口由微控制器讀取。(1)高頻濾波電路為了防止信號線上的干擾,使用了EMC高頻濾波電路。MF-RC500的天線引腳TX1、TX2、RX以及參考電壓VMID先經(jīng)過EMC濾波電路,然后再與天線匹配電路連接。如圖3-19所示EMC濾波電路。(2)天線及匹配電路 為了給射頻卡提供足夠的能量,天線和卡片間必須實現(xiàn)緊密耦合,耦合系數(shù)最少為0.3,因此天線線圈采用直徑為1mm的導(dǎo)線,設(shè)計為3圈65mm×54mm方形天線,此時,天線線圈產(chǎn)生的電感,有下列公式計算:L=2×I×[ln(I/D)-K]×其中:L-天線電感;I-環(huán)形導(dǎo)體的長度(即1圈導(dǎo)體的周長),單位為cm;D-導(dǎo)體的寬度,即導(dǎo)體的直徑,單位為mm;K-天線形狀因數(shù)(對環(huán)形天線K=1.07,對矩形天線K=1.47);N-線圈的圈數(shù)。由公式可計算出天線線圈的電感值約為1uH。為了使天線線圈接收的來自芯片天線引腳的射頻信號盡可能減少損失與輻射,采用了如圖3-14所示的天線匹配電路對其進(jìn)行阻抗轉(zhuǎn)換。天線匹配電路的電容參數(shù)由天線的電感決定。由于不同的天線電路板實際的天線線圈電感值總是會稍有差異,因此在天線匹配電路上使用了一個可調(diào)電容,通過調(diào)整電容將每塊天線板的讀寫距離調(diào)整到最佳。
圖圖3-13射頻天線原理圖圖3-14MF-RC500與AT89S51圖3-14MF-RC500與AT89S51的連接圖第4章系統(tǒng)軟件設(shè)計根據(jù)設(shè)計任務(wù)的要求確定系統(tǒng)程序的完整結(jié)構(gòu),盡可能采用模塊化程序設(shè)計方法,將任務(wù)劃分為相對獨立的功能模塊,明確各模塊的功能、時間順序和相互關(guān)系,系統(tǒng)的軟件設(shè)計可以分為幾個部分,首先是各個模塊的底層驅(qū)動程序編寫,而后是系統(tǒng)聯(lián)機調(diào)試,編寫上層系統(tǒng)程序。本系統(tǒng)軟件程序主要包括:主程序、讀寫IC卡子程序、鍵盤掃描子程序、顯示程序。程序流程圖如下:圖4-1主程序流程圖,描述本讀寫器系統(tǒng)的基本工作流。圖4-2液晶顯示設(shè)置子程序,描述1602初始化工作流。圖4-3LCD第一行顯示子程序流程圖,描述第一行顯示自定義字符工作流。圖4-4LCD第二行顯示子程序流程圖,描述第二行顯示IC卡余額工作流圖4-5鍵盤掃描子程序流程圖,描述鍵盤掃描查詢工作流,實現(xiàn)對IC卡的操作。圖4-2圖4-2液晶顯示設(shè)置子程序圖4-1主程序流程圖圖4-3LCD圖4-3LCD第一行顯示子程序流程圖圖4-4LCD第二行顯示子程序流程圖圖圖4-5鍵盤掃描子程序流程圖4.1系統(tǒng)主程序及子程序 ;主程序XEQU2FH;LCD地址變量 RSEQUP1.2 RWEQUP1.1 EEQUP1.0MAIN: ACALLSET_LCD;LCD初始化設(shè)置子程序 ACALLPRD RET ;讀IC卡子程序 PRD: MOVDPTR,#4006H ;#4006H存儲卡上余額 PRD0: MOVXA,@DPTR MOVB,A LCALLKEYBOARD ;調(diào)用KEYBOARD,鍵盤查詢程序 RET;鍵盤掃描子程序 KEYBOARD: MOVA,P3 ANLA,#33H CJNEA,#33H,DELAY LCALLPRD0 DELAY: LCALLDELAY0 ;延時10ms程序 CJNEA,#33H,KB1 KB1: JNBP3.5,WORK1 ;加值程序 JNBP3.4,WORK2 ;減值程序 JNBP3.1,WORK3 ;余額不操作程序 JNBP3.0,CLR_LCD ;清屏程序 RET;余額加值程序 WORK1: MOVA,B MOVB,#N ;N為增加的數(shù)值 ADDA,B MOVX@DPTR,A LCALLCHANGE ;CHANGE為數(shù)據(jù)轉(zhuǎn)換程序 RET ;余額減值程序 WORK2: MOVA,B MOVB,#W ;W為減去的數(shù)值 SUBBA,B JCSOUND ;SOUND為報警子程序 MOVX@DPTR,A LCALLCHANGE ;CHANGE為數(shù)據(jù)轉(zhuǎn)換程序 RET;余額不變程序 WORK3: MOVA,B LCALLCHANGE ;CHANGE為數(shù)據(jù)轉(zhuǎn)換程序 LJMPPRD RET;;數(shù)據(jù)轉(zhuǎn)換程序 CHANGE: MOVX,#0 MOVB,#100 DIVAB ADDA,#30H PUSHB MOVB,X ACALLLCDP2 ;LCDP2為LCD第二行余額顯示程序 POPB MOVA,#0AH XCHA,B DIVAB ADDA,#30H INCX PUSHB ACALLLCDP2 POPB INCX MOVA,B ADDA,#30H ACALLLCDP2 ;LCDP2為LCD第二行余額顯示程序 ACALLLCD_Y ;顯示“元”子程序 RET;LCD初始化設(shè)置程序 SET_LCD: CLRE CALLINIT_LCD ;INIT_LCD為初始化程序 CALLSTORE_DATA ;STORE_DATA為自定義字符程序 RET;LCD初始化 INIT_LCD: MOVA,#38H CALLWR_COMM ;WR_COMM為寫指令程序 CALLDELAY1 ;DELAY1為延時5ms程序 MOVA,#0CH CALLWE_COMM CALLDELAY1 MOVA,#01H CALLWR_COMM CALLDELAY1 RET;自定義字符程序 STORE_DATA: MOVA,#40H ACALLWR_COMM MOVR2,#24 MOVDPTR,#D_DATA MOVR3,#00H S_DATA: MOVA,R3 MOVCA,@A+DPTR ACALLWR_DATA ;WR_DATA為寫數(shù)據(jù)程序 INCR3 DJNZR2,S_DATA RET D_DATA: DB04H,07H,04H,1FH,04H,06H,05H,04H;卡代碼為00H DB02H,19H,0EH,04H,1FH,0EH,15H,0CH;余代碼為01H DB0EH,00H,1FH,0AH,0AH,0AH,13H,00H;元代碼為02H;LCD第一行顯示程序 LCDP1: ACALLSET_LED MOVA,#80H ;第一行顯示DDRAM地址 ACALLWR_COMM MOVR2,#10 ;第一行顯示10個字符 MOVR1,#00H MOVDPTR,#TABDIS ;要顯示的數(shù)據(jù)首地址 LOOP1: MOVA,R1 MOVCA,@A+DPTR ;取字符代碼 MOVP0,A ACALLWR_DATA I
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國鍍硅鋼卷行業(yè)運行狀況及發(fā)展前景分析報告
- 2025-2030年中國鋰電池鋁塑膜行業(yè)運營狀況及發(fā)展前景分析報告
- 2025-2030年中國鈾資源產(chǎn)業(yè)運行動態(tài)及發(fā)展趨勢分析報告
- 2025-2030年中國輕鋼結(jié)構(gòu)行業(yè)十三五規(guī)劃及發(fā)展策略分析報告
- 2025-2030年中國航空保險行業(yè)市場深度調(diào)查及投資前景預(yù)測報告
- 2025-2030年中國羊毛衫市場十三五規(guī)劃及發(fā)展趨勢分析報告
- 2025-2030年中國稀釋劑市場運行狀況及前景趨勢分析報告
- 2025山西省安全員《C證》考試題庫
- 河北石油職業(yè)技術(shù)大學(xué)《舞弊審計》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年重慶市建筑安全員考試題庫
- 魯科版小學(xué)四年級下冊綜合實踐活動教案(適合山東科學(xué)技術(shù)版教材)
- 新漢語水平考試(HSK6級)真題
- TSDLPA 0001-2024 研究型病房建設(shè)和配置標(biāo)準(zhǔn)
- 2025年安徽省合肥市中考數(shù)學(xué)模擬試卷(附答案解析)
- 數(shù)字孿生與光伏儲能集成
- 2025屆高考語文復(fù)習(xí):補寫語句+課件
- Siemens WinCC:WinCC趨勢圖與歷史數(shù)據(jù)技術(shù)教程.Tex.header
- 保護(hù)和傳承中國傳統(tǒng)文化遺產(chǎn)閱讀題答案
- 人教版生物八年級下冊全冊教學(xué)課件
- 四川省高職單招汽車類《汽車文化》復(fù)習(xí)備考試題庫(濃縮500題)
- 養(yǎng)牛購料購銷合同范本
評論
0/150
提交評論