非接觸式射頻卡讀寫器設(shè)計(jì)_第1頁(yè)
非接觸式射頻卡讀寫器設(shè)計(jì)_第2頁(yè)
非接觸式射頻卡讀寫器設(shè)計(jì)_第3頁(yè)
非接觸式射頻卡讀寫器設(shè)計(jì)_第4頁(yè)
非接觸式射頻卡讀寫器設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

摘 要摘 要本文介紹了以AT89S52單片機(jī)作為微控制器,以射頻技術(shù)為核心,基于PHILIPS公司MF-RC500模塊的非接觸式IC射頻卡讀寫器,闡述了該系統(tǒng)的組成、工作原理以及相應(yīng)的軟硬件設(shè)計(jì)。本文闡述了非接觸式IC射頻卡技術(shù)的基本原理,并對(duì)其讀卡器在工程上的設(shè)計(jì)和開發(fā)作了研究。論文描述了IC射頻卡系統(tǒng)的發(fā)展和現(xiàn)狀,通過對(duì)射頻識(shí)別技術(shù)原理的研究,揭示了射頻IC卡系統(tǒng)的工作原理。介紹了Type A 型常用的卡片MF1 IC S50和對(duì)應(yīng)讀卡器的設(shè)計(jì)方法和電路 (使用專用射頻讀卡集成芯片RC500),并詳細(xì)闡述了系統(tǒng)各個(gè)模塊的組成和原理,給出了天線的設(shè)計(jì)規(guī)范。然后根據(jù)課題要求詳細(xì)介紹了自主設(shè)計(jì)的一款Type A 型讀卡器的核心部件射頻模塊的實(shí)現(xiàn)方案和具體電路。最后介紹了系統(tǒng)設(shè)計(jì)的軟件部分,重點(diǎn)介紹了RC500的主要特性、基本指令集以及與Mifare1非接觸IC射頻卡數(shù)據(jù)通信的一些重要模塊的編程思路和編程方法,給出了兩個(gè)編程實(shí)例。實(shí)際測(cè)試證明該讀寫器完成了基本功能,運(yùn)行穩(wěn)定。關(guān)鍵詞:微控制器;非接觸式射頻卡;讀寫器;MF-RC500;射頻識(shí)別IAbstractAbstractWith micro-computer AT89S52 as controller, the radio frequency technology as core, this paper describes the systems composition、work principle and design of hardware and software of contactless IC card read-write device base on MF-RC500 of PHILIPS Company .This paper introduces the basic principle of the contactless IC card technology and the application of IC card reader. First the paper describes the development and the status quo of the IC cards system. Then the work principle of the radio frequency IC card system is discovered through studying the principium of the radio frequency technology. Whereafter, the paper introduces the card MF1 IC S50 what is usually used in the cards of Type A, the design method and the circuit of the card reader device (the device use the radio frequence chip reader module RC500), and in detail analyzes the principle of every module, simply Points to the design rules of the antenna circuit. Then, the paper in detail introduces the implement project about circuit and program of the kemel components of a Type A IC cards reader, the RF module, what is completely made by do-it-yourself. In the end, the paper introduces the software of the system, and the main property and basic intruction set of a contactless IC card reader RC500 based on PhilipsMIFARE1 are introduced. And some ideals and methods of programme about the basilic module with data communication between the cards and RC500 are presented. Finally the two examples of programme are given. The Read-Write Device is stabilized through test.Keywords: MCU; Contactless IC Card; Read-Write Device; MF-RC500; Radio Frequency IdentificationII目 錄目 錄摘 要IAbstractII第一章 緒 論11.1 課題研究的背景和意義11.2 目前國(guó)內(nèi)外研究現(xiàn)狀21.3 本課題設(shè)計(jì)的主要工作和任務(wù)3第二章 讀卡器系統(tǒng)方案設(shè)計(jì)與實(shí)現(xiàn)52.1 IC射頻卡介紹52.2 讀卡器基本原理52.3 總體方案論證62.3.1 各模塊方案選擇與論證62.3.2 總體方案確定8第三章 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)93.1 電源模塊93.2 人機(jī)接口模塊93.3 系統(tǒng)時(shí)鐘模塊103.4 存儲(chǔ)模塊113.5 MF-RC500讀寫模塊123.5.1 MF-RC500介紹123.5.2 天線模塊的設(shè)計(jì)143.6 通信模塊19第四章 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)214.1 軟件設(shè)計(jì)環(huán)境214.2 主程序的設(shè)計(jì)214.3 讀/寫卡程序設(shè)計(jì)224.3.1 MF-RC500指令說明224.3.2 讀/寫卡程序流程圖244.4 讀卡器外圍基本電路程序的設(shè)計(jì)25III4.4.1 顯示程序設(shè)計(jì)254.4.2 鍵盤程序設(shè)計(jì)274.4.3 EEPROM程序的編寫294.5 通信部分程序設(shè)計(jì)31結(jié) 論32參 考 文 獻(xiàn)33致 謝34附錄A 總電路圖35附錄B 讀/寫卡源程序36IV第一章 緒 論第一章 緒 論1.1 課題研究的背景和意義IC卡是一種射頻卡,又稱“集成電路卡”、 智能卡,英文名稱“Integrated Circuit Card”或“Smart card”,其集成電路為標(biāo)準(zhǔn)串行EEPROM.。是法國(guó)人Roland Moreno于1974年發(fā)明的,將具有存儲(chǔ),加密及數(shù)據(jù)處理能力的集成電路芯片封裝于和信用卡尺寸一樣大小的塑料片基中,便構(gòu)成IC卡。 IC卡分加密存儲(chǔ)器卡和非加密存儲(chǔ)器卡 非加密存儲(chǔ)器卡:卡中集成電路為標(biāo)準(zhǔn)的串行EEPROM 加密碼儲(chǔ)存器卡:卡中集成電路為帶有加密邏輯的串行EEPROMEEPROM:是一種可用電學(xué)方法將其內(nèi)容一次全部擦除,也可按字節(jié)擦除,然后再重新寫入的儲(chǔ)存電路。 IC卡和其它卡的比較有下列特點(diǎn):(1)容量大:其內(nèi)部有多種存儲(chǔ)器,可為實(shí)際需要提供充足的空間容量,充分滿足各種各樣的需求; 體積小,重量輕,個(gè)性性強(qiáng),便于攜帶,使用方便;可靠性好:IC卡可以從多種渠道保證卡片新的安全,其自身的密碼可以有效的防止本卡片被盜取后的隨意使用,而且自身又可以掛失,可以防止不速之客對(duì)卡片信息的肆意改變,防止持卡者的各種信息被篡改,從而保證持卡人的利益不受損失 ;感應(yīng)性強(qiáng):目前我國(guó)的網(wǎng)絡(luò)仍處于快速發(fā)展的時(shí)期,相對(duì)于發(fā)達(dá)國(guó)家的網(wǎng)絡(luò)信號(hào)仍顯不強(qiáng),但I(xiàn)C卡能敏感的對(duì)以上網(wǎng)絡(luò)做出反應(yīng),在讀卡器的工作范圍內(nèi),計(jì)時(shí)卡片所處的網(wǎng)絡(luò)環(huán)境很差,其也能迅速地作出正確無(wú)誤的反應(yīng),達(dá)到讀卡的要求。IC卡讀寫器有人也稱讀卡器。提起讀卡器,很多人都立即會(huì)想到這種產(chǎn)品是配合數(shù)碼相機(jī)而產(chǎn)生的,不過目前已經(jīng)不再局限于數(shù)碼相機(jī)使用了,而是擴(kuò)展到了更多的領(lǐng)域。讀卡器的主要作用就是讀取各種卡片的信息,但其作用不只是讀取卡片的信息,還能對(duì)讀入的信息進(jìn)行改寫,其最大的特點(diǎn)應(yīng)該是讀取方便,質(zhì)量輕,體積小,有很高的保密性。大家都知道現(xiàn)在讀取外部的信息都是通過USB接口與電腦相連,但那時(shí)USB技術(shù)不成熟,沒有廣泛推廣開來(lái),因此就需要有一種使用方便的技術(shù)來(lái)解決這個(gè)問題,讀卡器就是這樣產(chǎn)生的。讀寫器分為接觸式讀寫器,非接觸式讀寫器,單界面讀寫器和雙界面讀寫器以及多卡座接觸式讀寫器。非接觸式IC卡是一種射頻卡,是近幾年發(fā)展起來(lái)的一種新技術(shù),是通過無(wú)線電波進(jìn)行傳輸,與讀卡器見沒有接觸,避免了摩擦及各種故障。他的迅猛發(fā)展有取代各種詞卡和接觸式IC卡的趨勢(shì)。非接觸式IC卡將在多領(lǐng)域獨(dú)領(lǐng)風(fēng)騷。1.2 目前國(guó)內(nèi)外研究現(xiàn)狀智能IC卡源于七十年代的歐洲和日本,后來(lái)由法國(guó)人提出的將處理器置入IC卡卡片中的思想得到了廣泛接受,由于其具有完善的密碼功能從而有效的解決了智能卡的舞弊行為。隨后智能卡在1977-1998年間得到了迅速發(fā)展。九十年代初期,智能卡開始應(yīng)用于GSM數(shù)字移動(dòng)通訊、有線電視的收費(fèi)等領(lǐng)域。在美國(guó),智能卡發(fā)展相對(duì)遲緩,但隨著智能卡在歐洲的成功使用,其在美國(guó)產(chǎn)生巨大影響,呈現(xiàn)出百家爭(zhēng)鳴的景象。另外,值得一提的是,法國(guó)在世界IC卡份額中占絕大多數(shù)。法國(guó)的IC產(chǎn)業(yè)非常發(fā)達(dá),他的IC卡和IC卡讀卡器的數(shù)量都占據(jù)世界第一,并且都在70%以上,并且他們有專門做這方面研究和生產(chǎn)的公司,形成的集團(tuán)生產(chǎn),規(guī)模產(chǎn)出。命中使用IC卡的熱情也都非常高,給本國(guó)的經(jīng)濟(jì)發(fā)展提供了很大的促進(jìn)作用,節(jié)省了很多不必要的勞動(dòng),起高了勞動(dòng)生產(chǎn)率。我國(guó)的IC卡發(fā)展起步很晚,大概在20世紀(jì)90年代中期,由于當(dāng)時(shí)我國(guó)正處于改革開放的關(guān)鍵時(shí)期,有很多新興的技術(shù)和管理方式需要學(xué)習(xí)國(guó)外先進(jìn)的經(jīng)驗(yàn),要同發(fā)達(dá)國(guó)家接軌,我國(guó)推行走出去的戰(zhàn)略,各行各業(yè)開始蓬勃的發(fā)展,電子行業(yè)顯示出強(qiáng)勁的發(fā)展勢(shì)頭,帶動(dòng)了我國(guó)銀行業(yè)的積極平穩(wěn)快速的發(fā)展。在銀行的帶動(dòng)下,各種有合作的企業(yè),比如交通、醫(yī)療等方面迅速成長(zhǎng)。如今在全國(guó)幾乎各個(gè)部門都有IC卡的身影1。我國(guó)的IC卡行業(yè)的發(fā)展可謂是迅速,從以前的無(wú),發(fā)展到如今的各種各樣,各個(gè)部門,期間,我們經(jīng)歷了太多的困難,不過我們都一一克服。我們是取得了相當(dāng)大的成就,不過不得不說,我們?nèi)杂泻芏喙ぷ饕?。比如我們?duì)當(dāng)前IC卡的發(fā)展走向不大明朗,其實(shí)我們正處于IC卡技術(shù)的轉(zhuǎn)型時(shí)期,新型的IC卡技術(shù)是我們這個(gè)行業(yè)的永遠(yuǎn)的追求;我國(guó)對(duì)此行業(yè)管理略顯混亂,造成了IC行業(yè)魚目混珠,為此我國(guó)相關(guān)部門應(yīng)加大監(jiān)管力度,防止非法生產(chǎn)及惡性競(jìng)爭(zhēng)的發(fā)生。我國(guó)在高端IC卡方面技術(shù)很不成熟,應(yīng)抓緊時(shí)間向此方面突破,因此,設(shè)計(jì)一種通用的成熟的IC卡讀寫器很有必要2。1.3 本課題設(shè)計(jì)的主要工作和任務(wù)IC卡主要就是非接觸式IC卡,非接觸式IC卡應(yīng)用更加廣泛,IC卡讀卡器是非接觸式IC卡系統(tǒng)中的關(guān)鍵設(shè)備。根據(jù)課題設(shè)計(jì)要求,這次課題中,將開發(fā)一種基于飛利浦公司MF-RC500讀卡芯片的非接觸式IC卡讀卡器。它有以下的特點(diǎn):能識(shí)別TYPEA卡片,讀卡號(hào),有防沖突能力;能對(duì)TYPEA 型的卡片進(jìn)行深層操作;使用RS232通信接口輸出與上位機(jī)進(jìn)行通信;可根據(jù)實(shí)際需求將其作為門禁系統(tǒng)中的讀卡器,或者其他系統(tǒng)的讀卡器。本設(shè)計(jì)需要達(dá)到下邊指標(biāo):(1) 操作性高:能對(duì)系統(tǒng)設(shè)置和卡上數(shù)據(jù)的操作;(2) 機(jī)器讀卡速度:0.5秒可完成一次打卡過程,讀卡距離為1至5厘米;(3) 顯示系統(tǒng):LCD屏顯示,顯示系統(tǒng)時(shí)鐘及卡片信息;(4) 保密性:能辨認(rèn)卡的密碼,非授權(quán)范圍內(nèi)的卡作報(bào)警處理;(5) 存儲(chǔ)容量:每臺(tái)讀寫器最多可存儲(chǔ)2000條記錄;(6) 串行口通信,設(shè)計(jì)動(dòng)態(tài)庫(kù)便于用戶二次開發(fā)。需克服的重要技術(shù):(1) 射頻識(shí)別技術(shù);(2) 軟件的安全機(jī)制;(3) 由于射頻的特殊性給系統(tǒng)調(diào)試帶來(lái)的困難。該讀寫器完成以后,既可獨(dú)立使用,完成基本功能,外擴(kuò)簡(jiǎn)單接口后,就能構(gòu)成IC卡考勤、門禁,在公交、校園、娛樂場(chǎng)所等方面有廣泛的應(yīng)用前景。-4-第二章 讀卡器系統(tǒng)方案設(shè)計(jì)與實(shí)現(xiàn)第二章 讀卡器系統(tǒng)方案設(shè)計(jì)與實(shí)現(xiàn)2.1 IC射頻卡介紹IC卡主要有兩種:非接觸式和接觸式的IC卡。接觸式的IC卡通過機(jī)械觸點(diǎn)從讀寫器獲取能量和交換數(shù)據(jù);非接觸式IC卡通過線圈射頻感應(yīng)從讀寫器獲取能量和交換數(shù)據(jù),所以又稱射頻卡。接觸式IC卡具有存儲(chǔ)量大,能一卡多用等功能。但是,接觸式IC卡的讀寫速度比較慢,操作也不方便,操作時(shí)必須把卡插入到讀卡器中才能完成數(shù)據(jù)的交換,這在讀寫卡片頻繁的場(chǎng)合就很不方便,而且讀寫器的觸點(diǎn)和卡片上IC卡的觸腳暴露在外,容易破損從而接觸不良。由于非接觸式IC卡與讀寫器之間不是通過實(shí)體接觸進(jìn)行數(shù)據(jù)信息的交換,而是通過天線發(fā)射無(wú)線信號(hào)來(lái)完成信息交換,從而達(dá)到對(duì)卡片讀寫的目的。但是非接觸式IC卡本身不會(huì)發(fā)送無(wú)線信號(hào),只能接收信號(hào),因?yàn)槠鋬?nèi)部沒有發(fā)射源,因此在設(shè)計(jì)過程中,必須把天線設(shè)置在讀寫器的內(nèi)部,通過讀寫器內(nèi)部的電磁振蕩產(chǎn)生動(dòng)力,與非接觸式IC卡產(chǎn)生數(shù)據(jù)的交換與識(shí)別,這就是讀寫系統(tǒng)。此過程相對(duì)于接觸式IC卡系統(tǒng)的實(shí)體接觸讀寫更為方便、快捷,因此,應(yīng)用范圍十分廣泛。系統(tǒng)在調(diào)試時(shí)使用的是PHILIPS公司的MFI IC S50,其屬于TYPEA型卡。Mifare1 IC 卡的核心是PHILIPS公司MF1 IC S50系列微模塊,符合IEC/ISO 14443A空氣接口協(xié)議。其具有先進(jìn)的數(shù)據(jù)加密及雙向密碼驗(yàn)證系統(tǒng),具有16個(gè)完全獨(dú)立的扇區(qū),有著極高的穩(wěn)定性和廣泛的應(yīng)用范圍。2.2 讀卡器基本原理非接觸式IC卡讀卡器以射頻識(shí)別技術(shù)為核心,結(jié)合以的單片機(jī)的中心信息交換作用下,輔以外圍的各種電路,包括時(shí)鐘模塊電路,EEPROM存儲(chǔ)模塊電路,看門狗及復(fù)位電路,鍵盤及接口電路,顯示電路,報(bào)警電路,接口電路等綜合運(yùn)轉(zhuǎn),達(dá)到讀寫卡片的目的。在信息通過天線發(fā)射后,經(jīng)過諧振回路的濾波和接口電路的轉(zhuǎn)換,把其轉(zhuǎn)換成實(shí)體信號(hào),接著送入讀卡器解碼解調(diào),最后送入計(jì)算機(jī),做出正確的判斷。讀卡器的工作過程如下:(1) 讀卡器通過天線發(fā)送信號(hào);(2) 諧振回路接收讀卡器發(fā)射的載波信號(hào),射頻接口將其轉(zhuǎn)成電壓、復(fù)位信號(hào),激活卡片;(3) 存取控制模塊經(jīng)過天線把存儲(chǔ)信號(hào)送給讀卡器;(4) 讀卡器對(duì)信號(hào)解調(diào)、解碼后送至計(jì)算機(jī);(5) 計(jì)算機(jī)根據(jù)卡號(hào)的合法性,針對(duì)不同信息做出合適的控制。2.3 總體方案論證2.3.1 各模塊方案選擇與論證(1)控制器的選擇方案一:采用ATMEL公司的AT89S52作為系統(tǒng)的控制器。AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用ATMEL公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。其有很好的性能,并且功能強(qiáng)大,易于操作,適合大多數(shù)的設(shè)計(jì)要求,應(yīng)用比較廣泛。方案二:采用FPGA即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。其運(yùn)算速度快,集成度高,引腳眾多,但價(jià)格高昂。但是AT89S52價(jià)格合適,并且能實(shí)現(xiàn)系統(tǒng)的各個(gè)指標(biāo)要求,因此選用方案一。(2)RFID讀卡芯片的選擇1) TI公司的TRF7960芯片。TRF7960是一個(gè)整合的13.56MHz RFID讀卡器系統(tǒng)的模擬前端和數(shù)據(jù)幀系統(tǒng),可以用于較寬范圍的近耦合RFID系統(tǒng)。它的特點(diǎn)是完全整合協(xié)議處理,內(nèi)部獨(dú)立的模擬與數(shù)字電源,AM和PM雙信號(hào)輸入接收解調(diào),可以最大程度的減少損耗3。2) PHILIPS公司的MF-RC500的射頻技術(shù)非常成熟的以13.56MHz的應(yīng)用范疇,它屬于一種IC射頻卡,支持多種通信協(xié)議,支持面非常的廣,有廣闊的應(yīng)用和開發(fā)空間。即使采用成本非常低的器件也能滿足高速非接觸式通信的要求。由于MF-RC500應(yīng)用廣泛,易于操作,于是選擇MF-RC500作為設(shè)計(jì)的射頻接口芯片。(3)顯示模塊的選擇方案一:使用LED顯示。數(shù)碼管顯示,對(duì)外界環(huán)境要求低,操作簡(jiǎn)單,但是需要由于單個(gè)發(fā)光面比較窄,通常大規(guī)模集成在線路板上,形成一個(gè)比較大的發(fā)光源,與此會(huì)造成大量熱量堆積,不滿足此次設(shè)計(jì)。方案二:使用LCD顯示。液晶顯示,優(yōu)點(diǎn)是體積較小,耗能低,顯示清晰,平面顯示,質(zhì)量輕,無(wú)輻射,的工作電壓低等。而且LCD自帶的顯示模塊可以很好的和本次設(shè)計(jì)主題相結(jié)合,綜合上述,顯示模塊用LCD液晶顯示。(4)鍵盤模塊的選擇方案一:采用獨(dú)立式按鍵。獨(dú)立式鍵盤的按鍵都不會(huì)影響鍵盤上其他按鍵的正常工作,簡(jiǎn)單方便。每個(gè)鍵接一根I/O口線,一根I/O口線上的按鍵工作狀態(tài)不會(huì)影響其他口線的工作狀態(tài),所以其資源浪費(fèi)嚴(yán)重,因此本方法主要用于按鍵較少或?qū)Σ僮魉俣纫筝^高的場(chǎng)合。方案二:采用矩陣式按鍵。矩陣式按鍵的應(yīng)用是鍵盤數(shù)目較多的場(chǎng)合,為了減少I/O口的占用(即資源的浪費(fèi)),通常將案件排列成矩陣形式,這樣按鍵數(shù)就大大增加。本系統(tǒng)中有對(duì)I/O口的讀寫,各種單元電路的設(shè)定,用到的案件比較多,故采用方案二。(5)系統(tǒng)時(shí)鐘和存儲(chǔ)芯片的選擇由于要記錄刷卡的時(shí)間,并且保證時(shí)鐘在掉電時(shí)也能正常工作,考慮到簡(jiǎn)單方便的時(shí)鐘芯片DS1302。它是美國(guó)Dallas公司的產(chǎn)品,高性能,低功耗它的體積小,操作方便,采用SPI3線接口串行方式與CPU進(jìn)行同步通信4。 采用AT24C64作數(shù)據(jù)存儲(chǔ)器。DIP封裝,存儲(chǔ)器容量64kbit,存儲(chǔ)器配置8k*8bit,時(shí)鐘頻率1MHZ,用兩根線與CPU構(gòu)成串行同步接口。由于本設(shè)計(jì)采用的AT89S52單片機(jī)不具備I2C總線接口,因此采用軟件法加以解決。2.3.2 總體方案確定綜合上述分析,系統(tǒng)設(shè)計(jì)方案如下:本IC卡讀寫器AT89S52單片機(jī)作為微控制器,采用MF-RC500作為射頻卡讀/寫模塊,采用DS1302作為系統(tǒng)時(shí)鐘,以AT24C64作為不掉電存儲(chǔ)器,采用LCD顯示,并以RS232接口和計(jì)算機(jī)通信,組成一套功能齊全的非接觸IC卡讀寫系統(tǒng)。當(dāng)IC卡在天線區(qū)域經(jīng)過時(shí),單片機(jī)自動(dòng)需求對(duì)IC卡進(jìn)行讀寫,再把讀/寫卡的時(shí)間一起存到存儲(chǔ)器中,計(jì)算機(jī)可以通過串口把相關(guān)讀/寫卡信息讀到計(jì)算機(jī)上,再進(jìn)行統(tǒng)計(jì)、報(bào)表和打印輸出等。系統(tǒng)框圖如圖2-1所示。AT89S52射頻模塊MF-RC500時(shí)鐘模塊存儲(chǔ)模塊鍵盤及其接口電路LCD顯示電路報(bào)警電路看門狗和復(fù)位電路RS232接口電路電源模塊圖2-1 系統(tǒng)結(jié)構(gòu)框圖-49-第三章 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)第三章 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)3.1 電源模塊電源按常規(guī)設(shè)計(jì),其輸入為220V、50Hz交流電,輸出電壓等級(jí)為5V,電路原理圖如圖3.1所示。采用78系列的穩(wěn)壓器,結(jié)構(gòu)簡(jiǎn)單,性能穩(wěn)定。當(dāng)所需電流較大時(shí),可以用功率管擴(kuò)大電流。交流電220V經(jīng)變壓器降為交流6V,再經(jīng)全橋整流輸出直流電流,再經(jīng)過1000F的電解電容濾波,去除了交流成分,送至各三端穩(wěn)壓器,輸出適合電壓。經(jīng)過各三端穩(wěn)壓器穩(wěn)壓后,在LM7805輸出端輸出+5V直流電壓,LM7905輸出端輸出-5V直流電壓5。圖3-1 5V直流穩(wěn)壓電源3.2 人機(jī)接口模塊人機(jī)接口采用LCD顯示、32矩陣式鍵盤,實(shí)現(xiàn)對(duì)系統(tǒng)的設(shè)置及操作等。LCD型號(hào)為ACM1602A,該字符型液晶顯示模塊由字符型液晶顯示屏,具有字符發(fā)生器ROM可顯示192種字符,有64個(gè)字節(jié)的自定義字符RAM,可自定義8個(gè)58點(diǎn)陣字符或四個(gè)511點(diǎn)陣字符。 在此系統(tǒng)中采用LCD分屏顯示,每一屏第一行的首地址是80H,第二行的首地址是0C0H;每行寫入16個(gè)字節(jié),每屏寫入二行(第一行為系統(tǒng)的時(shí)間,第二行為卡片的信息)。ACM1602A集成度高,其內(nèi)有驅(qū)動(dòng)電路,所以不必為其設(shè)計(jì)驅(qū)動(dòng)電路,由于1602是一個(gè)并口器件所以占用單片機(jī)的接口資源較多,為節(jié)省單片機(jī)接口資源使用了一個(gè)74HC595進(jìn)行串口轉(zhuǎn)并口,使1602與單片機(jī)進(jìn)行間接連接,LCD與單片機(jī)的連結(jié)圖如圖3-2所示。圖3-2 LCD顯示電路3.3 系統(tǒng)時(shí)鐘模塊刷卡時(shí)要記錄刷卡的時(shí)間,用外接硬件實(shí)時(shí)時(shí)鐘芯片的辦法,為系統(tǒng)提供一個(gè)準(zhǔn)確可靠的時(shí)鐘,用3V備用電池保證在系統(tǒng)掉電時(shí)也能正常走時(shí),在此選用體積小、接口簡(jiǎn)單的實(shí)時(shí)時(shí)鐘芯片DS1302。 (1)時(shí)鐘芯片介紹DS1302 是美國(guó)DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路,在本設(shè)計(jì)中使用的DS1302為8腳DIP封裝形式,1和8為電源電壓引腳,單電源供電接8腳,雙電源供電時(shí),主工作電源接1腳,備用電源接8腳。2和3為晶振引腳,晶振頻率為32.768KHz ;RST為復(fù)位端,置低電平則工作終止,高電平,系統(tǒng)復(fù)位;6為輸人/輸出端;7為SCLK為串行時(shí)鐘輸入端,所有地址/命令字節(jié)和數(shù)據(jù)字節(jié)都是在時(shí)鐘的同步控制下從I/O腳串行輸入輸出的。DS1302通過SCLK、I/O、RST三根線與外部進(jìn)行同步串行通信。(2)DS1302與單片機(jī)的連接在本設(shè)計(jì)中采用單片機(jī)的P1.0-P1.2與DS1302進(jìn)行數(shù)據(jù)通信,以提供系統(tǒng)所需的時(shí)鐘,其連接方法如圖3-3所示。圖3-3 DS1302與單片機(jī)接口電路3.4 存儲(chǔ)模塊在本設(shè)計(jì)中采用串行EEPROM芯片AT24C64作數(shù)據(jù)存儲(chǔ)器。AT24C64采用DIP封裝,存儲(chǔ)容量64Kbit,時(shí)鐘頻率1Mhz,電壓范圍1.8V-3.6V,8個(gè)針腳,支持EEPROM類型。管腳功能如下:SCL,串行時(shí)鐘,這是一個(gè)輸入管腳,用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時(shí)鐘;SDA,串行數(shù)據(jù)/地址,這是一個(gè)雙向傳輸端,用于傳送地址和所有數(shù)據(jù)的發(fā)送或接收;A0、A1、A2,器件地址輸入端,這些輸入端用于多個(gè)器件并聯(lián)時(shí)設(shè)置器件地址6。在系統(tǒng)中采用單片機(jī)的P3.3、P3.4口與AT24C64進(jìn)行連接,其與單片機(jī)的接口接法電路如圖3-4所示,由于本系統(tǒng)中采用到的AT89S52單片機(jī)不具備I2C總線接口,因此采用軟件法加以解決。圖3-4 AT24C64與單片機(jī)接口電路3.5 MF-RC500讀寫模塊3.5.1 MF-RC500介紹PHILIPS公司的MF-RC500頻率13.56MHz,支持IS014443A所有的層; MF RC500可方便的用于各種基于ISO/IEC 14443A標(biāo)準(zhǔn),它的應(yīng)用十分廣泛,特別是在中小型器件的設(shè)計(jì)上更是占有重要地位,在射頻領(lǐng)域的應(yīng)用十分成熟。其功能框圖如圖3-5所示。圖3-5 MF-RC500的功能框圖MF-RC500管腳如圖3-6所示。圖3-6 MF-RC500管腳圖表3-1 天線連接管腳名稱類型功能TX1,TX2輸出緩沖天線驅(qū)動(dòng)器VMID模擬參考電壓RX輸入模擬天線輸入信號(hào) MF-RC500通過TX1和TX2提供13.56MHz的能量載波。經(jīng)過調(diào)整為相應(yīng)的信號(hào)進(jìn)行通信的開始,天線接收信號(hào)送到RX引腳,MF-RC500之后經(jīng)過一系列的檢測(cè)、處理,然后將數(shù)據(jù)傳送到中央控制器做最后決定。表3-2 MF-RC500并行口控制管腳名稱類型功能D0.D7I/O口數(shù)據(jù)總線(雙向)A0.A2I/O口地址線NCSI/O口片選ALEI/O口地址鎖存使用LRQ輸出中斷請(qǐng)求3.5.2 天線模塊的設(shè)計(jì)讀卡器內(nèi)部必須有天線接受信號(hào)同非接觸式IC卡通信。磁通量可以產(chǎn)生信息,而天線則用來(lái)產(chǎn)生足夠的磁通量。所以,對(duì)天線的設(shè)計(jì)要滿足一下要求:*磁通量要足夠,因此電流要足夠大;* 系統(tǒng)損耗要合適,這就要求功率合適;* 帶寬足夠,以不失真的傳輸和接受信號(hào)7。(1)天線尺寸和讀寫距離考慮到系統(tǒng)的損耗,卡和天線之間的耦合系數(shù)一般不低于0.3,這樣才能滿足要求。天線定為三圈,設(shè)計(jì)為方形。直徑介于0.5-1.5mm。表3-3 是確定的數(shù)值表(其中耦合系數(shù)0.3)。表3-3 各種天線形式和距離關(guān)系表大小(mmmm)讀寫距離(mm)50507655410855412綜上,天線的參數(shù)如下:*天線形狀:方形天線*天線圈數(shù):三圈*天線大小:65mm54mm*天線導(dǎo)體直徑:1mm(2)天線電感的計(jì)算感抗在900nH與4.2H之間。計(jì)算公式為: (3-1)參數(shù): L感抗,H; I長(zhǎng)度,cm; D寬度,cm; N圈數(shù); P天線線圈特質(zhì)而定的N的指數(shù)因子。上述公式只供首次估算用,實(shí)際的天線線圈應(yīng)該通過儀器測(cè)量而定,但偏差不會(huì)很大。根據(jù)以上公式以及本設(shè)計(jì)中的參數(shù),P值取1.6,計(jì)算出的天線的電感L得1895H。(3)EMC電路及接收電路EMC和接收電路:AT89S52已經(jīng)內(nèi)置RC振蕩線路,不過這些震蕩頻率無(wú)法滿足要求,因?yàn)楝F(xiàn)實(shí)的電路往往對(duì)波特率要求比較精密,不能有絲毫的差錯(cuò),電路運(yùn)行中電路內(nèi)部還會(huì)產(chǎn)生干擾對(duì)自身造成影響,同時(shí)外部干擾也是不可忽略的,因此要使用一個(gè)低通濾波器消除外部和內(nèi)部干擾8。濾波器與接收電路的電路原理圖如圖3-7所示。圖3-7 EMC及接收電路(4)天線電路圖天線電路圖如圖3-8所示。圖3-8 天線電路圖中電容C2A_a、C2A_b、C2A_a、C2A_b、(通稱C2)的值是由天線的電感值決定的,并且與天線的形狀有很大關(guān)系,需要合適的調(diào)整。C2的大小將極大地影響天線接收和發(fā)送的性能,因此,要多次反復(fù)實(shí)驗(yàn)才可以確定其大小,必須嚴(yán)格確定天線的性能良好。RC500有一個(gè)內(nèi)部信號(hào)驅(qū)動(dòng)管腳AUX,C2值的確定可以通過試驗(yàn)方法得到,接受裝置和本體之間的距離不同,將得到不同的C2值,最后可以根據(jù)不同的實(shí)驗(yàn)結(jié)果進(jìn)行篩選,從而得到最好的值9。設(shè)計(jì)中,根據(jù)天線的參數(shù)進(jìn)行試驗(yàn),得到的最終C2值如表3-4所示。表3-4 C2電容值表電容值(pF)C2A_a80C2A_b80C2A_a80C2A_b80(5)天線的品質(zhì)因數(shù)和匹配電阻用于電感耦合式射頻識(shí)別系統(tǒng)的天線,其特征值是諧振頻率f0和品質(zhì)因數(shù)Q。品質(zhì)因數(shù)Q電學(xué)和磁學(xué)的量。表征一個(gè)儲(chǔ)能器件(如電感線圈、電容等)、諧振電路中所儲(chǔ)能量同每周期損耗能量之比的一種質(zhì)量指標(biāo);電抗元件的Q值等于它的電抗與其等效串聯(lián)電阻的比值;元件的Q值愈大,用該元件組成的電路或網(wǎng)絡(luò)的選擇性愈佳。其公式如下: (3-2)其中fR=13.56MHz,天線的感抗LANT和阻抗RANT,也可以用儀器測(cè)出來(lái)。Q值一般在10到50之間,作為數(shù)據(jù)傳輸過程這個(gè)值還會(huì)減小,數(shù)據(jù)從讀卡器到射頻卡使用米勒編碼,脈沖寬度為T=3s,帶寬B定義如下: (3-3)所以Q值: (3-4)Q值還受其他因素的影響,比如溫度,濕度等??紤]到上述因素,所以把Q值定在35比較合適。又因?yàn)樵诠浪阒袦p小了Q值,所以應(yīng)想法增大天線的品質(zhì)因數(shù),用外加電阻法,外加一個(gè)電阻REXT,可以用下面的公式來(lái)計(jì)算REXT: (3-5)3.5.3 MF-RC500與AT89S52的連接圖MF-RC500與AT89S52連接圖如圖3-9所示,圖中單片機(jī)AT89S52作為控制核心,主要完成數(shù)據(jù)采集、處理、存儲(chǔ)及控制電路工作;MF-RC500是主要實(shí)施的對(duì)象,系統(tǒng)主要是圍繞其進(jìn)行設(shè)計(jì)與實(shí)驗(yàn)。在本設(shè)計(jì)中,該讀寫器采用地址數(shù)據(jù)總線復(fù)用方式與微控制器相連。在對(duì)MF-RC500進(jìn)行讀寫操作時(shí),若要使用NWR和NRD與微控制器相連,則這兩個(gè)引腳應(yīng)該連接到微控制器的讀寫管腳上。圖中使AT89S52的WR和RD管腳分別與MF-RC500的NWR管腳和NRD管腳相連來(lái)控制讀寫使能;MF-RC500工作頻率由石英晶體而產(chǎn)生,同時(shí)與OSCIN管腳相連可作為外部時(shí)鐘。圖3-9 MF-RC500與AT89S52連接圖3.6 通信模塊本智能卡讀寫器采用RS232標(biāo)準(zhǔn)來(lái)實(shí)現(xiàn)讀卡器和上位機(jī)之間的通信,選用美信(MAXIM)公司生產(chǎn)的.芯片進(jìn)行通信轉(zhuǎn)換。其具有以下特點(diǎn):1、符合所有的RS-232C技術(shù)標(biāo)準(zhǔn);2、只需要單一 +5V電源供電;3、片載電荷泵具有升壓、電壓極性反轉(zhuǎn)能力,能夠產(chǎn)生+10V和-10V電壓V+、V-;4、功耗低,典型供電電流5mA;5、內(nèi)部集成2個(gè)RS-232C驅(qū)動(dòng)器;6、高集成度,片外最低只需4個(gè)電容即可工作。MAX232其引腳功能如表3-5所示。表3-5 MAX232引腳說明引腳名引腳說明引腳名引腳說明T2outRS232輸出R1inRS232輸入R2inRS232輸入T1outRS232輸出R2outTTL/CMOS輸出GND地T2inTTL/CMOS輸入VCC電源T1inTTL/CMOS輸入R1outTTL/CMOS輸出在硬件電路連接上采用三線制(RXD、TXD、GND)軟握手的零MODEM方式,鐘分頻模塊主要用于數(shù)據(jù)收/發(fā)模塊產(chǎn)生同步時(shí)鐘信號(hào)。系統(tǒng)接口對(duì)各種邏輯進(jìn)行控制,進(jìn)行三線同步串行通信,多模塊進(jìn)行數(shù)據(jù)的交換,其中的操作及控制MAX232與AT89S52的電路連接如圖3-10所示。圖3-10 MAX232與AT89S52的連接圖第四章 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)第四章 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)在進(jìn)行數(shù)據(jù)通信的軟件設(shè)計(jì)時(shí)必須解決好兩個(gè)方面的問題,一是可靠性,二是速度,而這兩方面的問題可靠性是第一位的,速度只能是在可靠的基礎(chǔ)上的,速度可靠快速轉(zhuǎn)輸?shù)膶?shí)現(xiàn)需要上、下位機(jī)軟件以及通信協(xié)議等各個(gè)環(huán)節(jié)的可靠和其間的相互配合。4.1 軟件設(shè)計(jì)環(huán)境本系統(tǒng)程序的設(shè)計(jì)以模塊化和結(jié)構(gòu)化的設(shè)計(jì)思想為指導(dǎo)。單片機(jī)開發(fā)所使用的語(yǔ)言一般為匯編語(yǔ)言。匯編語(yǔ)言不能通用,因此應(yīng)用面較窄。編寫的代碼非常難懂,不好維護(hù);很容易產(chǎn)生bug,難于調(diào)試;只能針對(duì)特定的處理器進(jìn)行優(yōu)化;開發(fā)效率很低,時(shí)間長(zhǎng)且單調(diào)。 C是高級(jí)語(yǔ)言。而且計(jì)算功能、邏輯判斷功能也比較強(qiáng)大,可以實(shí)現(xiàn)決策目的的游戲。C語(yǔ)言適用范圍大。適合于多種操作系統(tǒng),如Windows、DOS、UNIX等等;也適用于多種機(jī)型。C語(yǔ)言對(duì)編寫需要硬件進(jìn)行操作的場(chǎng)合,明顯優(yōu)于其它高級(jí)語(yǔ)言,有一些大型應(yīng)用軟件也是用C語(yǔ)言編寫的。本次分塊程序的設(shè)計(jì)多數(shù)采用C語(yǔ)言設(shè)計(jì),極少部分采用匯編語(yǔ)言設(shè)計(jì)。4.2 主程序的設(shè)計(jì)讀卡器工作需要進(jìn)行很多次操作,并且要調(diào)用相應(yīng)的函數(shù)。包括掃描鍵盤、液晶顯示、EEPROM讀寫、讀/寫卡和與上位機(jī)通信等。這幾步一定要按特定的順序狀態(tài)進(jìn)行。讀卡器的主程序主要由下位機(jī)來(lái)完成,單片機(jī)中的程序主要包括:IC卡讀寫程序,與RC500信息通訊及終段處理程序,鍵盤信息識(shí)別及中斷處理程序,與PC機(jī)信息處理中斷處理程序,程序顯示及存儲(chǔ)器的讀寫程序等等10。讀卡器的主程序流程圖如圖4-1所示。圖4-1 讀卡器主程序流程圖4.3 讀/寫卡程序設(shè)計(jì)4.3.1 MF-RC500指令說明MCU對(duì)MIFARE非接觸式智能卡的控制是通過MF-RC500來(lái)實(shí)現(xiàn)的,MF-RC500是MCU和MIFARE非接觸式智能卡之間的通信載體。MCU對(duì)MF-RC500的控制是以MCU發(fā)出MF-RC500的指令來(lái)達(dá)到的,MF-RC500收到指令之后執(zhí)行這些指令11。MCU對(duì)MF-RC500的某一指令操作必須有一個(gè)程序的序列來(lái)完成,其中有對(duì)MF-RC500硬件內(nèi)核寄存器的讀/寫以及根據(jù)讀出的硬件內(nèi)核寄存器的內(nèi)容進(jìn)行語(yǔ)言軟件上的判斷和設(shè)置。從而決定以什么指令來(lái)對(duì)上一步的操作做出正確的回應(yīng)。MF-RC500的主要的指令:(1)“Answer to Request”(應(yīng)答復(fù)位)表4-1 復(fù)位應(yīng)答指令指令指令代碼(hex)相關(guān)的出錯(cuò)標(biāo)志接收數(shù)據(jù)Request std26TE,BETag typeRequest all52Request將 MF-RC500在工作的區(qū)域內(nèi)尋找 WARE片,MIFARE卡片存在,對(duì) MIFARE進(jìn)行數(shù)據(jù)的交換,讀取WARE卡片編號(hào),由MF-RC500送入微處理器,從而進(jìn)行計(jì)算。Request指令分為Request std和Request all兩個(gè)指令12。Request all指令是不連續(xù)性的讀卡的指令,只讀一次。當(dāng)有卡片進(jìn)入讀卡范圍內(nèi)時(shí),該指令發(fā)揮作用。Request std指令是連續(xù)性的讀卡指令。(2)“Select Tag”(選擇卡片操作)表4-2 選擇卡片指令指令指令代碼(hex)是否會(huì)出錯(cuò)接收的數(shù)據(jù)Select Tag(選擇片)93TE,BE,PE,CESize如果要與已知編列號(hào)的卡片進(jìn)行通信,一定要用SELECT指令,這樣才能選中想要與之進(jìn)行通信的卡片,為之后的工作做準(zhǔn)備。 (3)“Authentication”(認(rèn)證操作) 表4-3 認(rèn)證指令指令指令代碼(hex)是否會(huì)出錯(cuò)接收的數(shù)據(jù)AuthenticationTE,BE,PE,CE/Auth_la60Auth_lb61如果密碼正確,則進(jìn)行下一步的工作??ㄆ系拇鎯?chǔ)器的每一個(gè)塊都分別地指定了該塊的存取條件。這些存取條件是根據(jù)密碼而定。用戶必須在KEYSTACON寄存器中指定一套密碼,即設(shè)置KSO,KS1。KEYADDR寄存器中的AB位用于選擇KEYA和KEYB。KEYADDR寄存器中的AB設(shè)置必須匹配“Authentication”命令。 (4)“Read”(讀)表4-4 讀指令指令指令代碼(hex)相關(guān)的出錯(cuò)標(biāo)志接收卡片上數(shù)據(jù)Read(讀)30TE,BE,PE,CEDataRead(讀)允許MCU經(jīng)MF RC500讀卡上完整的Bytes(十六個(gè))的數(shù)據(jù)塊(Data blocks)。 (5)“Write”(寫)表4-5 寫指令指令指令代碼(hex)相關(guān)的出錯(cuò)標(biāo)志接收卡片上數(shù)據(jù)Write (寫)A0TE,BE/“Write” 寫允許用戶寫數(shù)據(jù)到卡片(完整的16個(gè)Byte的數(shù)據(jù)塊)。 4.3.2 讀/寫卡程序流程圖讀/寫卡過程主要由以下幾步組成:(1) 復(fù)位應(yīng)答:當(dāng)一張卡片接近讀寫范圍時(shí),電路發(fā)出警報(bào),為接下來(lái)的讀寫做初步的準(zhǔn)備,當(dāng)進(jìn)入讀寫區(qū)域時(shí),發(fā)出信號(hào),指示燈亮,系統(tǒng)復(fù)位,開始讀寫,這時(shí),系統(tǒng)只讀取當(dāng)前卡片,不會(huì)在讀取另外的卡片;(2) 防重疊操作:由于每張卡片都有自己的編列號(hào),所以當(dāng)多張卡片進(jìn)入工作范圍內(nèi),系統(tǒng)經(jīng)過嚴(yán)格的帥選,只讀取第一張進(jìn)入讀卡范圍內(nèi)的卡片,而對(duì)于其他卡片將不予理睬,這防止了系統(tǒng)的錯(cuò)亂;(3) 選擇卡片操作:選擇被選中卡的系列號(hào),并同時(shí)返回卡的容量代碼;(4) 認(rèn)證操作:經(jīng)過上述3個(gè)步驟, 確定選了一個(gè)卡片之后,系統(tǒng)對(duì)密碼進(jìn)行確認(rèn),如不正確,則不預(yù)讀取,如若正確,則進(jìn)入下一步工作;(5) 讀寫操作:完成了之前的準(zhǔn)備工作,開始進(jìn)行實(shí)質(zhì)性的讀寫工作。讀/寫卡程序流程圖如下圖4-2所示。圖4-2 讀/寫卡程序流程圖4.4 讀卡器外圍基本電路程序的設(shè)計(jì)4.4.1 顯示程序設(shè)計(jì)本次設(shè)計(jì)的顯示模塊有系統(tǒng)時(shí)鐘模塊和LCD顯示模塊組成,刷卡時(shí)要記錄刷卡的時(shí)間,用外接硬件實(shí)時(shí)時(shí)鐘芯片的辦法,為系統(tǒng)提供一個(gè)準(zhǔn)確可靠的時(shí)鐘,使用LCD顯示。液晶顯示,優(yōu)點(diǎn)是體積較小,耗能低,顯示清晰,平面顯示,質(zhì)量輕,無(wú)輻射,的工作電壓低等13。其流程圖如圖4-3所示。圖4-3 顯示部分程序流程圖顯示模塊的部分程序如下:MAIN: MOV SP,#60HMAIN1: LCALL START ;調(diào)用初始化 MOV A, #80H ;第一行顯示第一個(gè)字符的位置 ACALL ENABLE ;調(diào)用寫指令 MOV DPTR, #TABLE1 ;第一行表頭位置 CALL WRITE1 ;調(diào)用第一行寫子程序 MOV A, #0C0H ;第二行位置 CALL ENABLE ;調(diào)用寫指令 MOV DPTR, #TABLE2 ;第二行表頭位置 CALL WRITE LCALL DELAY1 JMP MAIN1ENABLE: ;寫命令時(shí)序 MOV SS, A CLR RS CLR RW CLR E ACALL DELAY SETB E RETWRITE1: ;寫字符串 MOV R1, #00HA1: MOV A, R1 MOVC A, A+DRTR ;取將顯示的數(shù)據(jù) CALL WRITE2 ;調(diào)用寫程序?qū)懭雴蝹€(gè)字節(jié) INC R1 CJNE R1,#10H,AL RETWRITE2: ;寫單個(gè)字符 MOV SS A SETB RS CLR RW CLR E CALL DELAY SETB E RET4.4.2 鍵盤程序設(shè)計(jì)鍵盤程序包括按鍵識(shí)別及識(shí)別按鍵后系統(tǒng)的相應(yīng)動(dòng)作。由于所要用到的按鍵比較多,所以采用交叉列陣式,有按鍵被按下時(shí),則接收信息,并判斷下一步的動(dòng)作及可能的操作。具體的工作步驟如下: (1) 斷鍵盤上有無(wú)鍵按下。P1口低3位輸出全0,讀P1口狀態(tài),若P1.3、P1.4為全1,則基本上可以確定是按鍵工作狀態(tài);假如不是這個(gè)結(jié)果,那就確定他們不是工作在這個(gè)狀態(tài);(2) 消除鍵盤按鍵抖動(dòng)。具體做法,如果鍵盤顯示為工作狀態(tài),則通過對(duì)系統(tǒng)軟件各方面的設(shè)置,使鍵盤延時(shí)10ms,之后,如果鍵盤在工作狀態(tài),則可以確定這個(gè)結(jié)果正確;如果為別的結(jié)果,這就需要重新調(diào)試,重新對(duì)鍵盤進(jìn)行合理并且正確的設(shè)定;(3) 按鍵位置。按上兩步的掃描法,進(jìn)行逐位置0掃描,這樣就達(dá)到了想要表達(dá)的結(jié)果; 編程掃描程序流程圖如圖4-4所示。開始有鍵閉合?延時(shí)10ms確定按鍵位置閉合鍵釋放?按鍵處理程序返回否否否按鍵閉合?圖4-4 掃描程序流程圖4.4.3 EEPROM程序的編寫AT24C64存儲(chǔ)器可以解決單片機(jī)片內(nèi)EEPROM不足的問題,用以保存諸如用戶設(shè)置參數(shù)、卡片信息等資料。它是以電子信號(hào)來(lái)修改其內(nèi)容的,洗掉才能寫入,。EEPROM在寫入數(shù)據(jù)時(shí),仍要利用一定的編程電壓,此時(shí)所以,它屬于雙電壓芯片。借助于EEPROM芯片的雙電壓特性,可以使BIOS具有良好的防毒功能,在升級(jí)時(shí),把跳線開關(guān)打至“off”的位置,即給芯片加上相應(yīng)的編程電壓,就可以方便地升級(jí);平時(shí)使用時(shí),則把跳線開關(guān)打至“ON”的位置,防止CIH類的病毒對(duì)BIOS芯片的非法修改14。EEPROM主要讀寫程序如下:void 12c_Send_Byte (unsigned char Send_Data) /*寫一個(gè)字節(jié)到EEPROM中*/ unsigned char i;for(i=8;i!=0;i-) SCL_DIR=0;if(Send_Data&0x80)SDA_DIR=1; /接收到數(shù)據(jù)elseSDA_DIR=0;delay_s(2);SCL_DIR=1;Send_Data = (Send_Data1); / 數(shù)據(jù)左移一位do /接收應(yīng)答信號(hào),防止死循環(huán)SCL_DIR=0;SDA_DIR=1;delay_s(2);SCL_DIR=1;while(SDA!=0); /停止位SCL_DIR=0;SDA_DIR=0;4.5 通信部分程序設(shè)計(jì)(1)通信協(xié)議概述串口通信的概念非常簡(jiǎn)單,串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用另一根線接收數(shù)據(jù)。RS-232設(shè)計(jì)之初是用來(lái)連接調(diào)制解調(diào)器做傳輸之用,也因此它的腳位意義通常也和調(diào)制解調(diào)器傳輸有關(guān)。但是這么說并不是總是嚴(yán)格正確的,用配線分接器測(cè)試連接,或者用試誤法來(lái)判斷電纜是否工作,常常需要參考相關(guān)的文件說明。因此雙方都能發(fā)送和接收15。 (2)MCU串口通信程序流程圖MCU串口通信要遵循上述提到的RS-232協(xié)議,做到最簡(jiǎn)單方便,一目了然。MCU串口通信程序流程圖如圖4-5所示。 圖4-5 MCU串口通信程序流程圖結(jié) 論結(jié) 論本論文從整體的角度,對(duì)非接觸式智能卡系統(tǒng)進(jìn)行分析和研究,同時(shí)做到重點(diǎn)的突出。論文從智能卡整體系統(tǒng)入手,著重介紹了基于Philips公司MIFARE技術(shù)的非接觸式智能卡讀卡器的設(shè)計(jì)開發(fā)。該讀卡器能夠讀寫距離在0-100mm范圍內(nèi)的符

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論