基于單片機的IC卡讀寫器設(shè)計_第1頁
基于單片機的IC卡讀寫器設(shè)計_第2頁
基于單片機的IC卡讀寫器設(shè)計_第3頁
基于單片機的IC卡讀寫器設(shè)計_第4頁
基于單片機的IC卡讀寫器設(shè)計_第5頁
已閱讀5頁,還剩92頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

./XX鐵道大學(xué)四方學(xué)院畢業(yè)設(shè)計摘要IC卡是一個正蓬勃發(fā)展的邊緣產(chǎn)業(yè),一個與我們的生活正越來越密切的產(chǎn)業(yè)。在普及因特網(wǎng)和計算機的大潮涌來時,IC卡扮演著越來越重要的角色。IC卡讀寫設(shè)備大致可分為兩大類:一類為專用讀寫設(shè)備或稱脫機讀寫器。其特點是:充分利用IC卡存儲量大,可以獨立存儲和工作,不需要和主機相連就可完成數(shù)據(jù)讀寫的優(yōu)點,可與應(yīng)用設(shè)備結(jié)合或單獨工作。例如:IC卡電表,水表,ATM機,商場收款機。另一類為通用讀寫設(shè)備,或稱聯(lián)機讀寫器,是帶有單片機和存儲器的設(shè)備,通過并行或串行口與PC機或應(yīng)用系統(tǒng)網(wǎng)絡(luò)相連接。在運行不同軟件時可以讀寫不同種類的IC卡,組成不同的應(yīng)用系統(tǒng)。如果配備開發(fā)系統(tǒng)軟件,可對IC卡做初始規(guī)劃,數(shù)據(jù)加密和初始寫入,從而構(gòu)成IC卡應(yīng)用開發(fā)制作環(huán)境。在本設(shè)計中,我們討論通用開發(fā)系統(tǒng)——基于ATM89C51單片機的IC卡讀/寫器的設(shè)計。通過89C51單片機來實現(xiàn)IC卡的讀和寫,在系統(tǒng)中設(shè)計一個復(fù)位電路,接在89C51的復(fù)位管腳上。復(fù)位電路是微機應(yīng)用中重要的一環(huán),一個好的復(fù)位電路對微機抗干擾有重要作用。另外還在單片機上接了一個時鐘電路,用來設(shè)置單片機內(nèi)部震蕩的時間。RS232串行接口在本設(shè)計中用于單片機與PC機之間的連接,IC卡座用于插卡,實現(xiàn)IC卡與讀寫器的連接。本設(shè)計中所涉及的主要是接觸式邏輯加密卡SLE4442卡。另外一些外圍電路的設(shè)計使整個IC卡讀寫器顯得完美。AbstractICcardistheedgeofaboomingindustry,acloselyourlivesaremoreandmoreindustries.PopularityoftheInternetandcomputersinthecomingtideoftime,ICcardplayinganincreasinglyimportantrole.ICcardread-writedevicecanbedividedintotwocategories:oneforthespecialread-writedevice,orofflinereader.Itscharacteristicsare:fulluseofICcardstoragecapacity,storageandworkindependently,withoutthedatacanbecompletedandthehostconnectedtotheadvantagesofliteracycanbecombinedwiththeapplicationofequipmentorworkalone.Forexample:ICcardmeter,watermeter,ATMmachines,shoppingmallscashregister.Andthoseforthegeneralread-writedevice,oron-linereader,isofamicrocontrollerandmemorydevices,throughparallelorserialportandPCmachinesconnectedtothenetworkorapplicationsystem.RunningdifferentsoftwarecanreadandwritedifferenttypesofICcards,composedofdifferentapplications.Ifequippedwiththesoftwaredevelopmentsystem,ICcardcandotheinitialplanning,dataencryptionandtheinitialwrite,soastoconstituteproductionofICcardapplicationdevelopmentenvironment.Inthisdesign,wediscussthegeneraldevelopmentsystem-basedonATM89C51MicrocontrollerICcardread/writedevicedesign.Achievedthroughthe89C51microcontrollerICcardreadandwrite,inthesystemdesignofaresetcircuitconnectedtotheresetpinonthe89C51.Microprocessorresetcircuitisanimportantpartoftheapplication,agoodanti-jammingresetcircuitplaysanimportantroleonthecomputer.Alsobeingasinglechipareconnectedtotheclockcircuit,usedtosettheMCUinternalshocksofthetime.RS232serialinterfaceformicrocontrollerinthedesignandtheconnectionbetweenthePCmachine,ICcardconnectorforthecard,ICcardandthereaderrealizetheconnection.ThisdesignismainlyinvolvedincontactlesscardSLE4442logicencryptioncard.OtherperipheralcircuitsaredesignedtomaketheentireICcardreaderseemsperfect.目錄前言……………..3概述5一IC卡技術(shù)……………………5二IC卡應(yīng)用……………………8系統(tǒng)原理框圖10一系統(tǒng)原理框圖的繪制………10二原理圖………13硬件部分14一AT89C51單片機簡介………..14二RS232串行接口……………16三SLE4442簡介………………18四IC卡座……………………18五外圍電路……………………20軟件部分…….25一工作過程、流程圖……………25二用C51實現(xiàn)的讀/寫主程序27三上位PC機通信接口軟件…….34總結(jié)……………..36一總結(jié)……………36二致謝……………37三參考文獻………38前言IC卡是一個正蓬勃發(fā)展的邊緣產(chǎn)業(yè),一個與我們的生活正越來越密切的產(chǎn)業(yè)。在普及因特網(wǎng)和計算機的大潮涌來時,IC卡扮演著越來越重要的角色。IC卡讀寫設(shè)備大致可分為兩大類:一類為專用讀寫設(shè)備或稱脫機讀寫器。其特點是:充分利用IC卡存儲量大,可以獨立存儲和工作,不需要和主機相連就可完成數(shù)據(jù)讀寫的優(yōu)點,可與應(yīng)用設(shè)備結(jié)合或單獨工作。例如:IC卡電表,水表,ATM機,商場收款機。另一類為通用讀寫設(shè)備,或稱聯(lián)機讀寫器,是帶有單片機和存儲器的設(shè)備,通過并行或串行口與PC機或應(yīng)用系統(tǒng)網(wǎng)絡(luò)相連接。在運行不同軟件時可以讀寫不同種類的IC卡,組成不同的應(yīng)用系統(tǒng)。如果配備開發(fā)系統(tǒng)軟件,可對IC卡做初始規(guī)劃,數(shù)據(jù)加密和初始寫入,從而構(gòu)成IC卡應(yīng)用開發(fā)制作環(huán)境。在本設(shè)計中,我們討論通用開發(fā)系統(tǒng)——基于ATM89c51單片機的IC卡讀/寫器的設(shè)計。

IC卡讀/寫設(shè)備由IC卡卡座,單片機,數(shù)據(jù)存儲器RAM,程序存儲器EEPROM,接口電路和外圍設(shè)備等組成。

IC卡讀/寫器各部分結(jié)構(gòu)與功能簡單介紹如下:

1.IC卡卡座

IC卡卡座是連接IC卡與讀寫器的。其功能包括對IC卡供電,提供讀寫信號和傳送數(shù)據(jù)。要求提供方便的插拔方式和可靠的接觸,并帶有帶電插拔,過流保護,插卡檢測等能力。IC卡和插座的結(jié)構(gòu)尺寸必須符合國際標(biāo)準(zhǔn)化組織<ISO>7816的標(biāo)準(zhǔn)。對觸點數(shù)目、位置、信號名稱和功能都有明確規(guī)定,以保證兼容性。

2.單片機和存儲器

讀寫器中配備單片機和ROM,RAM存儲器,構(gòu)成微機系統(tǒng),單片機運行ROM中固化的軟件,執(zhí)行與IC卡和上位PC機的通信規(guī)程。控制對IC卡的讀寫,完成IC卡與主機間數(shù)據(jù)的格式轉(zhuǎn)換。為減輕單片機負(fù)擔(dān),提高讀寫速度,常配置有硬件密文轉(zhuǎn)換和單元。3.接口電路和外圍設(shè)備

通用讀寫器一般與PC機或網(wǎng)絡(luò)聯(lián)機工作,常用標(biāo)準(zhǔn)并行或串行口與上位機連接和通訊。常用的是帶有25芯或者9芯插口的RS232-C型串行接口,可直接接到PC機的COM1或COM2上。此時,可利用主機的顯示器作監(jiān)視器,主機鍵盤作控制和輸入,利用主機打印機輸出。此時主機與讀寫器組成了IC卡應(yīng)用與開發(fā)系統(tǒng),操作與一般微機相仿,但用戶界面將隨所配軟件而有很大不同。4.IC卡系統(tǒng)軟件本設(shè)計的系統(tǒng)軟件是通過C51編寫的。第一章概述一、IC卡技術(shù)IC卡概述1.什么是IC卡IC卡是英文集成電路卡的縮寫,其大小和名片相當(dāng),但比名片稍厚些。國際標(biāo)準(zhǔn)化組織ISO為它制定了國際標(biāo)準(zhǔn),對卡的長度、寬度及厚度都做了比較明確的規(guī)定。制作時,將一個專用的集成電路芯片鑲嵌于基片中,封裝成形,即為IC卡。IC卡的概念是20世紀(jì)70年代初提出來的,法國人 ROLNMO與1970年首先將IC卡芯片放于卡片中。2.IC卡的分類〔1根據(jù)卡中所鑲嵌的集成電路的不同分類存儲卡:卡中的集成電路為EEPROM。邏輯加密卡:卡中集成電路為帶加密邏輯和EEPROM。CPU卡:卡中的集成電路包括中央處理器CPU、EPROM、隨機存儲器RAM以及固化在只讀存儲器ROM中的片內(nèi)操作系統(tǒng)。嚴(yán)格的講只有CPU才是真正的只能卡?!?根據(jù)卡與外界數(shù)據(jù)傳送的形式分類IC卡可分為接觸型與非接觸型。非接觸型IC卡又稱射頻卡。當(dāng)前使用廣泛的是接觸型IC卡。在這種卡上,起IC芯片有8個觸點可與外界接觸;射頻卡的集成電路不向外引出觸點,因此,它除了包含前述三種IC卡的電路外,還帶有射頻收/發(fā)電路及其相關(guān)電路。〔3根據(jù)應(yīng)用領(lǐng)域分類IC卡分為金融卡和非金融卡。金融卡又分為信用卡和現(xiàn)金卡。信用卡由銀行發(fā)行并管理,持卡人用它作為消費時的支付工具,可使用預(yù)先設(shè)的的透支限額資金?,F(xiàn)金卡可用作電子存折和電子錢包,不允許透支.3.IC卡技術(shù)〔1IC卡讀/寫技術(shù)IC卡是一種集成電路卡,它的讀寫設(shè)備是每個IC卡應(yīng)用系統(tǒng)不可缺的周邊設(shè)備。該設(shè)備通過IC卡的8個觸點向IC卡提供電源與IC卡相互交換信息。雖然IC卡是從磁卡發(fā)展而來的,但他在機器讀/寫性能上卻遠(yuǎn)優(yōu)與磁卡,無需往復(fù)的機械動作即可完成人-機-卡之間的多次會話過程,使卡在應(yīng)用時操作簡單,給人們帶來極大的便利。〔2IC卡的安全技術(shù)信息安全的目的就是保證數(shù)據(jù)在確定的時間內(nèi),在確定的地點,在確定的條件下,只能被卻定的對象使用。而IC卡正是為了解決數(shù)據(jù)是安全問題而設(shè)計的,它采用的是半導(dǎo)體密碼存放與軟件加密技術(shù),能夠有效地阻止卡的非法復(fù)制與數(shù)據(jù)篡改,應(yīng)用設(shè)備設(shè)備在脫離網(wǎng)絡(luò)的情況下,可以對IC卡進行鑒別。IC卡的信息安全一般具有以下特征:保密性:既防止未經(jīng)授權(quán)的使用者獲取信息;完整性:防止未經(jīng)授權(quán)的信息改變〔更改、刪除、增加;可獲取性:防止未經(jīng)授權(quán)的截取信息;真實型:即通過一系列的技術(shù)措施驗證信息的真實性;持久性:即長久時間信息保存的可靠性?!?數(shù)據(jù)存儲技術(shù)在一個應(yīng)用系統(tǒng)的使用中,系統(tǒng)必須對所有持卡人建立一份身份與使用的檔案。在磁卡系統(tǒng)中,這組檔案存放在中心數(shù)據(jù)庫系統(tǒng)內(nèi),沒次持卡人使用必須通過終端,以網(wǎng)絡(luò)形式從數(shù)據(jù)庫系統(tǒng)中提出那分與自己有關(guān)的檔案,IC卡的數(shù)據(jù)存儲能路比磁卡要強得多,卡把持卡人有關(guān)的大量信息存放在卡中,因而使得IC卡使用的靈活性大大增強,交易的實時性也明顯改善。目前,IC卡的存儲容量可達近1MB。4.IC卡的技術(shù)特點芯片的制造技術(shù)與工藝目前,IC卡用芯片撲片采用較為先進的CMOS,BICMOS等集成電路制造工藝,具有較好的點性能及抗干擾能力,一采用CMOS工藝制造的IC卡芯片為例,起主要技術(shù)指標(biāo)為;寫入/刪除次數(shù)最少可大100000次。數(shù)據(jù)保存時間最少為10年。工作電壓為5V。抗靜電4000V左右。噪音容限也較高。IC卡座的技術(shù)要求IC卡卡座哈IC卡應(yīng)有良好的接觸點,應(yīng)有盡量小的摩擦。具有生產(chǎn)制造時的質(zhì)量穩(wěn)定性。具有對應(yīng)用環(huán)境〔溫度、濕度、震動及電磁干擾等的適應(yīng)性。其中正確的工作順序較為重要。按有關(guān)ISO/IEC7816標(biāo)準(zhǔn)規(guī)定,在IC卡的觸點和讀/寫設(shè)備的觸點之前,讀/寫設(shè)備不應(yīng)對磁卡施加有關(guān)點信號,以免造成不可預(yù)料的損壞。IC卡讀/寫設(shè)備作為系統(tǒng)和用戶交互的接口,必將棉隊各種各樣復(fù)雜的應(yīng)用環(huán)境,如在金融系統(tǒng)應(yīng)用中的ATM〔自動柜員機,有可能放置在露天公共場合,處于高/低溫、潮濕、電磁干擾等環(huán)境;在電車、汽車自動售票系統(tǒng)應(yīng)用中,處于振動、電磁干擾等環(huán)境。因此,在設(shè)計階段就應(yīng)注意;IC卡讀/寫設(shè)備環(huán)境適應(yīng)性問題。二.IC卡的應(yīng)用IC卡的應(yīng)用領(lǐng)域非常廣泛。它除了涵蓋傳統(tǒng)磁卡的全部功能外,還拓展到許多磁卡所不能勝任的領(lǐng)域。這在很大程度上歸功與IC卡的大容量數(shù)據(jù)存儲能力和強有力的安全特性。目前,IC卡除在金融系統(tǒng)外,在非金融系統(tǒng)也得到了廣泛的應(yīng)用。如在通信領(lǐng)域中的公用電話卡,移動電話中的SIM卡;在交通領(lǐng)域中的駕駛員執(zhí)照卡、停車收費卡、公交交通設(shè)施是自動收費卡及公共交通工具的自動收費卡等;另外在醫(yī)療保健、個人身份識別、預(yù)收費儀表、校園及消費娛樂領(lǐng)域中也得到了具體的應(yīng)用。通信領(lǐng)域數(shù)字移動電話中的用戶識別模式智能卡〔SIM卡及公用電話用IC卡。醫(yī)療衛(wèi)生和計劃生育管理衛(wèi)生部計劃發(fā)行醫(yī)療IC卡;國家計劃生育委員會準(zhǔn)備發(fā)行育齡婦女計劃生育IC卡企業(yè)保險領(lǐng)域用于醫(yī)療保險、失業(yè)保險、養(yǎng)老保險及兒童免疫接種等,目前XX、褡褳等地已發(fā)行IC保險卡?!?交通領(lǐng)域用于汽車駕駛員管理、公交路費及公交或地鐵自動售票,目前公安部已完成"機動車輛駕駛員違章處理IC卡"的標(biāo)準(zhǔn)起草工作,并已通過專家審定?!?對企、事業(yè)單位和社會團體的管理國家工商局準(zhǔn)備發(fā)行工商企業(yè)監(jiān)管IC卡,并在部分省市試點。企、事業(yè)單位內(nèi)部管理目前已包括單位職工內(nèi)部管理、場區(qū)內(nèi)部通行控制、校園師生管理、飯店IC卡門鎖及飯店內(nèi)部消費等。這類IC卡以集團、單位內(nèi)部發(fā)行為主。公共事業(yè)目前IC卡水表、電氣及煤氣表已在許多城市使用,今后會進一步推廣。稅務(wù)〔包括國稅和地稅許多省市已開始使用IC卡進行稅金的征收和稽查。加油中國石化總公司和地方石油公司都已有組織地建立IC加油卡收費系統(tǒng)。隨著時間的推移,IC卡的應(yīng)用范圍將會越來越廣泛。它給人們的工作和生活帶來很大的方便,相信在不遠(yuǎn)的將來,IC卡會真正走進我們的工作和生活。第二章原理圖一.系統(tǒng)原理框圖的繪制1.Protel99軟件的概述〔1隨著電子技術(shù)的飛速發(fā)展,新型電子器件和集成電路的永遠(yuǎn)日趨廣泛,電子電路也變得越來越復(fù)雜,這給電路的設(shè)計工作帶來了更大的難度。因此通過計算機進行電子電路的互助設(shè)計成為設(shè)計電路板的一個基本手段。Protel99包含眾多的服務(wù)器,總提上可以分為5種組件,分別為:原理圖設(shè)計組件、PCB設(shè)計組件、布線組件、可邊成邏輯器件組件和仿真組件。由于其性能優(yōu)越,Protel99已成為電路設(shè)計不可缺少的理想工具。〔2下面簡單介紹電路原理圖的設(shè)計步驟??傮w來說,設(shè)計一個電路原理圖,首先要設(shè)置圖紙的大小和外形,對電路圖進行總體規(guī)劃,然后在圖紙上放置元件,〔其中,庫里面沒有我們所需的元件需要我們自己畫進行布局布線,接著對這個版面進行編輯和調(diào)整,最后保存或打印,具體的電路原理圖的設(shè)計流程如圖1所示:圖1設(shè)計PCB板首先要啟動Protel99-PCB編輯器。啟動該編輯器的操作步驟如下:新建或打開一個設(shè)計數(shù)據(jù)庫文件〔*.ddb。進入設(shè)計文件夾Documents。選擇File/New命令,打開對話框。雙擊該對話框中的即可創(chuàng)建一個新的元件庫文件,默認(rèn)的文件名為PCB1。在工作窗口中該文件的圖標(biāo)上單擊或在設(shè)計瀏覽器中該文件名上雙擊,即可進入PCB板編輯器。然后即可在PCB編輯板上畫出所需的電路原理圖,如下頁所示:二原理圖:第三章硬件部分介紹一AT89C51單片機簡介

AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器〔FPEROM—FalshProgrammableandErasableReadOnlyMemory的低電壓,高性能CMOS8位微處理器,俗稱單片機。AT89c51是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C51是它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。1.主要特性:

·與MCS-51兼容

·4K字節(jié)可編程閃爍存儲器

壽命:1000寫/擦循環(huán)

數(shù)據(jù)保留時間:10年

·全靜態(tài)工作:0Hz-24Hz

·三級程序存儲器鎖定

·128*8位內(nèi)部RAM

·32可編程I/O線

·兩個16位定時器/計數(shù)器

·5個中斷源

·可編程串行通道

·低功耗的閑置和掉電模式

·片內(nèi)振蕩器和時鐘電路2.管腳說明:

VCC:供電電壓。

GND:接地。

P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當(dāng)FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。

P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。

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ù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址"1"時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。

P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入"1"后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流〔ILL這是由于上拉的緣故。

P3口也可作為AT89C51的一些特殊功能口,如下表所示:

口管腳備選功能

P3.0RXD〔串行輸入口

P3.1TXD〔串行輸出口

P3.2/INT0〔外部中斷0

P3.3/INT1〔外部中斷1

P3.4T0〔記時器0外部輸入

P3.5T1〔記時器1外部輸入

P3.6/WR〔外部數(shù)據(jù)存儲器寫選通

P3.7/RD〔外部數(shù)據(jù)存儲器讀選通

P3口同時為閃爍編程和編程校驗接收一些控制信號。

RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。

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禁止,置位無效。

/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。

/EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器〔0000H-FFFFH,不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源〔VPP。

XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。

XTAL2:來自反向振蕩器的輸出。3.振蕩器特性:

XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。4.芯片擦除:

整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms來完成。在芯片擦操作中,代碼陣列全被寫"1"且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。

此外,AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止。二RS232串行接口EIA-RS-232C是由美國電子工業(yè)協(xié)會EIA制訂的一種串行物理接口標(biāo)準(zhǔn)。RS-232C采用負(fù)邏輯,-5~-15V為邏輯1,+5~+15V為邏輯0。而TTL電平的"1"和"0"的特征電壓分別為2.4V和0.4V,用RS-232C總線進行串行通信需外接電路實現(xiàn)電平轉(zhuǎn)換。在發(fā)送端需用驅(qū)動電路將TTL電平轉(zhuǎn)換成RS-232C電平,在接收端用接收電路將RS-232C電路轉(zhuǎn)換為TTL電平。本設(shè)計是用的TI公司的RS-232C收發(fā)器MAX232,可用單一+5V電源供電實現(xiàn)電平轉(zhuǎn)換。RS-232C在設(shè)計中主要永遠(yuǎn)用于PC機與IC卡讀/寫器之間的通信,框圖如下RS-232C芯片的引腳結(jié)構(gòu)如圖5所示:圖5圖5中的C1、C2、C3、C4及V+、V—是電源變換電路部分。在實際應(yīng)用中,器件對電源噪音很敏感。因此,VCC必須要對地加去耦電容,其值為0.1μF。電容C1、C2、C3及C4取同樣的數(shù)值的鉭電解電容,用以提高抗干擾能力,在連接時必須盡量靠近器件。MAX232的13、14管腳為串行異步通信發(fā)送及接受引腳。三SLE4442卡簡介

SLE4442卡內(nèi)部有一個256

8bit

EEPROM,不可逆的4個寫保護字節(jié),具備密碼保護功能,可以隨時讀取主存儲器內(nèi)容;在校驗成功后,可讀保護存儲器、讀寫安全存儲器和寫主存儲器。

SLE4442有一個密碼邏輯,用以控制對存儲器的讀寫。為此,SLE4442包含一個4字節(jié)加密存儲區(qū),該存儲區(qū)有一個錯誤計數(shù)器EC〔0-2位和三個字節(jié)的參考數(shù)據(jù),這三個字節(jié)作為一個整體,稱為可編程密碼〔PSV。整個數(shù)據(jù)區(qū)除了參考數(shù)據(jù),其它的數(shù)據(jù)都能被讀取,在校驗數(shù)據(jù)與內(nèi)部參考數(shù)據(jù)比較正確后才能進行讀寫操作,連續(xù)三次比較錯誤后,錯位計數(shù)器將阻止任何比較嘗試,從而也消除了任何擦寫操作。四IC卡座IC卡座引腳如圖6所示,其中引腳SW1、SW2為微動開關(guān)在無IC卡狀態(tài)時,處與斷開狀態(tài);有卡插入時,IC卡卡座上的微動開關(guān)閉合。因此,此開關(guān)往往是用來判斷是否插IC卡的傳感器件。其引腳VCC:工作電壓;SCL〔CLK:串行時鐘;GND:接地;SDA〔I/O:串行數(shù)據(jù)〔輸入/輸出;SW1、SW2:微動開關(guān)本設(shè)計中與邏輯有關(guān)的引出端先只有2條:SCL和SDA。所有的地址、數(shù)據(jù)及讀/寫控制命令等信號均從SDA端輸入/輸出。為了區(qū)分線上的數(shù)據(jù)、地址、操作命令以及各種狀態(tài)的"開始"與"結(jié)束",卡片內(nèi)設(shè)計就多個邏輯控制單元。其中,啟動與停止邏輯單元產(chǎn)生控制讀/寫操作的"開始"與"停止"標(biāo)志信號。"開始"狀態(tài):當(dāng)SCL處于高電平時,SDA從高電平轉(zhuǎn)向低電平,即產(chǎn)生"開始"標(biāo)志信號。"停止"狀態(tài):當(dāng)SCL處于高電平時,SDA從低電平轉(zhuǎn)向高電平,即產(chǎn)生一個"停止"標(biāo)志信號,如圖6所示:圖6讀/寫的啟動與停止時序SDA和SCL通常各自通過一個電阻拉到高電平,當(dāng)SCL為高電平時,對應(yīng)的SDA上的數(shù)據(jù)有宵;而當(dāng)SCL為低電平時,允許SDA上的數(shù)據(jù)變化。數(shù)據(jù)輸入/輸出應(yīng)答邏輯單元產(chǎn)生數(shù)據(jù)輸入/輸出操作應(yīng)答信號。操作時所有的地址和數(shù)據(jù)字均一8位碼串行輸入/輸出于卡片??ㄆ瑳]收到一個8位碼長的地址或數(shù)據(jù)后都以置SDA線為低電平方式"確認(rèn)"應(yīng)答信號,其波形如圖7所示圖7五外圍電路〔1狀態(tài)燈IC卡的上電一般是可知的,即對IC卡讀/寫時,須給IC卡上電〔送電源,因此,IC卡的上電控制比較簡單。由于IC卡讀/寫電流很小,一般為幾個A,因此其實現(xiàn)可按照圖8所示。由單片機89C51的P14信號通過小功率三極管9012控制系統(tǒng)的+5V電源切入IC卡座。當(dāng)IC卡上電后,發(fā)光二極管L2被點亮,起讀/寫指示作用。每次對IC卡讀/寫完成后。即及時先電,以減少插拔時帶電的可能性,要保證IC卡能任意插拔〔有可能處于帶電狀態(tài),不致IC卡損壞,必須使IC卡拔電過程處于斷電的狀態(tài)。要做到這點,必須保證IC卡的下電迅速及時圖8〔2蜂鳴器一般所指的蜂鳴器是以壓電陶瓷為主要元件的。壓電陶瓷是一類有將壓力與電流相互轉(zhuǎn)換能力的特殊陶瓷。這種能力緣于其特殊的晶體結(jié)構(gòu)。當(dāng)壓電陶瓷在一定方向上受到一個壓力使其晶體結(jié)構(gòu)發(fā)生形變時,它就會在內(nèi)部產(chǎn)生一個電流,并且電流的變化與壓力的變化密切相關(guān)。反之亦然。所以利用這一特性,在壓電陶瓷上通過一定頻率的電流,就會引起壓電陶瓷微小形變,這一形變帶動空氣發(fā)生振動,如果頻率適當(dāng),就可以被人耳所聽見,也就是產(chǎn)生了蜂鳴聲。本設(shè)計當(dāng)中蜂鳴起的做用是IC卡與單片機是否連接。將IC卡插進卡座時,IC卡座與單片機之間的連接無誤是蜂鳴器會響。在取出IC卡,即IC卡與單片機斷開連接,蜂鳴器也要響。具體連接圖如圖9所示:圖9〔3電源電路U1=220V,U2=8V,Uc1=1.2U2=9.6V,UO=5V功率穩(wěn)壓電源由電源變壓器、整流電路、濾波電路和穩(wěn)壓電路四個部分組成,如圖10所示+電源+整流+濾波+穩(wěn)壓+u1u2u3uIU0_變壓器_電路_電路_電路_u1u2u3uIU00t0t0t0t0t圖10穩(wěn)壓電源的組成框圖及整流與穩(wěn)壓過程〔1.電源變壓器電源變壓器的作用是將來自電網(wǎng)的220V交流電壓u1變換為整流電路所需要的交流電壓u2。電源變壓器的效率為:其中:是變壓器副邊的功率,是變壓器原邊的功率?!玻玻骱蜑V波電路在穩(wěn)壓電源中一般用四個二極管組成橋式整流電路,整流電路的作用是將交流電壓u2變換成脈動的直流電壓u3。濾波電路一般由電容組成,其作用是把脈動直流電壓u3中的大部分紋波加以濾除,以得到較平滑的直流電壓UI。UI與交流電壓u2的有效值U2的關(guān)系為:在整流電路中,每只二極管所承受的最大反向電壓為:流過每只二極管的平均電流為:其中:R為整流濾波電路的負(fù)載電阻,它為電容C提供放電通路,放電時間常數(shù)RC應(yīng)滿足:其中:T=20ms是50Hz交流電壓的周期?!玻撤€(wěn)壓電路由于輸入電壓u1發(fā)生波動、負(fù)載和溫度發(fā)生變化時,濾波電路輸出的直流電壓UI會隨著變化。因此,為了維持輸出電壓UI穩(wěn)定不變,還需加一級穩(wěn)壓電路。穩(wěn)壓電路的作用是當(dāng)外界因素〔電網(wǎng)電壓、負(fù)載、環(huán)境溫度發(fā)生變化時,能使輸出直流電壓不受影響,而維持穩(wěn)定的輸出。穩(wěn)壓電路一般采用集成穩(wěn)壓器和一些外圍元件所組成。采用集成穩(wěn)壓器設(shè)計的穩(wěn)壓電源具有性能穩(wěn)定、結(jié)構(gòu)簡單等優(yōu)點。集成穩(wěn)壓器的類型很多,在小功率穩(wěn)壓電源中,普遍使用的是三端穩(wěn)壓器。按輸出電壓類型可分為固定式和可調(diào)式,此外又可分為正電壓輸出或負(fù)電壓輸出兩種類型。固定電壓輸出穩(wěn)壓器常見的有CW78〔LM78系列三端固定式正電壓輸出集成穩(wěn)壓器;CW79〔LM79系列三端固定式負(fù)電壓輸出集成穩(wěn)壓器。三端是指穩(wěn)壓電路只有輸入、輸出和接地三個接地端子。型號中最后兩位數(shù)字表示輸出電壓的穩(wěn)定值,有5V、6V、9V、15V、18V和24V。穩(wěn)壓器使用時,要求輸入電壓UI與輸出電壓UO的電壓差UI–UO≥2V。穩(wěn)壓器的靜態(tài)電流Io=8mA。當(dāng)UO=5~18V時,UI的最大值UIMAX=35V;當(dāng)UO=18~24V時,UI的最大值UIMAX=40V。第四章軟件部分一.工作過程軟件結(jié)構(gòu)設(shè)計及其分析讀/寫器軟件結(jié)構(gòu)讀/寫器的讀/寫操作由上位PC機進行控制,通過串行通信的命令字節(jié)來實現(xiàn)。集體規(guī)定我誒:如握手信號為0AAH,則讀卡;如握手信號為0BBH,則寫卡。讀/寫器的主程序框圖如圖11所示。其中,在讀/寫卡開始時,設(shè)置讀寫卡標(biāo)志;在通信開始時,設(shè)置通信標(biāo)志。避免數(shù)據(jù)不全或錯誤數(shù)據(jù)讀入或?qū)懭?。另?所以的IC卡數(shù)據(jù)是先存放在IC卡的讀緩沖區(qū)和寫緩沖區(qū)的。"有卡插入否"是用過判斷P33引腳的高低電平來實現(xiàn)的。為了保證讀卡的可靠性,必須進行軟件"去抖"處理。一旦有卡插入,則設(shè)置讀/寫卡標(biāo)志〔有卡;在通信時,設(shè)置正在通信標(biāo)志。目的是我為了避免帶電插卡。本系統(tǒng)中關(guān)鍵的軟復(fù)位是通過在外中斷INT0服務(wù)函數(shù)中設(shè)置軟復(fù)位標(biāo)志、在主函數(shù)中強制跳轉(zhuǎn)到函數(shù)首實現(xiàn)的。圖11主程序流程圖拔卡處理是通過設(shè)置成高優(yōu)先級的下降沿觸發(fā)的INT0中斷來實現(xiàn)的。其程序如圖12所示:圖12拔卡處理中斷子程序串行通信才用3線制軟握手方式〔2軟件系統(tǒng)分析為保證IC卡讀/寫過程準(zhǔn)確可靠,除要保證讀/寫函數(shù)嚴(yán)格按照IC卡的讀/寫時序外,還須采用"重讀"和"復(fù)讀"措施。即讀IC卡是,采用讀2次的方式,如2次相符,則數(shù)據(jù)有效,否則再進行第3次讀,寫IC卡時,先將數(shù)據(jù)寫入,再回讀比較,否則重寫一次,以免偶然的寫失導(dǎo)致得出IC卡失效的錯誤結(jié)論。如何使上、下位機均不死機或能簡單恢復(fù)正常工作呢?對于作為下位機的IC卡讀/寫器,利用IC卡能隨意插拔,再結(jié)合IC卡的拔卡處理是一個高級中斷的特點,將IC卡的拔卡中斷程序設(shè)計成2個分支:〔1非IC卡讀/寫且非與上位機通信狀態(tài);〔2在與上位機通信或正在對IC卡讀/寫狀態(tài)。第1種情況下,中斷子程序是簡單的鞍鼻卡BEEP告警后,直接中斷返回;第2種情況,則會引起系統(tǒng)工作時常甚至死機,在恢復(fù)中斷環(huán)境后,用強制跳轉(zhuǎn)指令強制從主程序開始執(zhí)行,達到復(fù)位的效果。程序框圖如圖12所示。為確保串行通信的可靠性,應(yīng)著重從上、下位機通信軟件的以下問題入手——合理選擇通信波特率。由于上、下位機通信的數(shù)據(jù)量很小〔最多為IC卡的容量,因此通信波特率可選低一些,如2400;但要高度重視下位機〔即IC卡讀/寫器的波特率參數(shù)整頂問題。對于51系統(tǒng)CPU,尤其要注意電源管理寄存器中SMOD位的設(shè)置。以2400波特率為例,當(dāng)SMOD=0時,波特率參數(shù)為0F9H,實際波特率為2232,此時波特率相對誤差是7%;而當(dāng)SMOD=1時,波特率參數(shù)為0F3H,實際波特率為2401,此時波特率相對誤差是0.16%,滿足正常通信所規(guī)定的波特率相對誤差小于5%的要求。二用C51實現(xiàn)的讀/寫主程序#include<reg51.h>#include<absacc.h>#defineucharunsignedchar#defineuintunsignedint/*IC卡信號輸入/輸出*/Sbitscl=P17;Sbitsda=P16;/*I/O口定義*/SbitICOUT=P32;SbitICIN=P33;SbitCOMM=P34;SbitBELL=P35;SbitPWR=P14;/*波特率選擇*/SbitBACD=P12;/*24c01~24c16讀/寫驅(qū)動程序*/Sbita0=ACC-0;Sbita1=ACC-1;Sbita2=ACC-2;Sbita3=ACC-3;Sbita4=ACC-4;Sbita5=ACC-5;Sbita6=ACC-6;Sbita7=ACC-7;/*讀/寫數(shù)據(jù)緩沖區(qū),24C01最多為128B*Ucharbuf[16];Ucharflag;/*標(biāo)志定義*/SbitIC_WR=flag-0;SbitONCOMM=flag-1;SbitRST=flag-2;Voidstart_ic<void>{Sda=1;Scl=1;Delay<2>;Sda=0;Delay<6>;}Voidstop_ic<void>{Sda=0;Scl=1;Delay<6>;Sda=1;Delay<6>;Scl=0;Sda=0;}Voidack_ic<void>{Sda=0;Delay<3>;Scl=1;Delay<3>;Scl=0;Sda=1;}/*讀字節(jié)函數(shù),無應(yīng)答信號*/Unsignedcharrd24<void>{sda=1;scl=1;a7=sda;scl=0;Scl=1;a6=sda;scl=0;Scl=1;a5=sda;scl=0;Scl=1;a4=sda;scl=0;Scl=1;a3=sda;scl=0;Scl=1;a2=sda;scl=0;Scl=1;a1=sda;scl=0;Scl=1;a0=sda;scl=0;Sda=1;scl=1;scl=o;Return<ACC>;}/*寫字節(jié)函數(shù)*/Voidwd24<unsignedchardd>{ACC=dd;Sda=a7;scl=1;scl=0;Sda=a6;scl=1;scl=0;Sda=a5;scl=1;scl=0;Sda=a4;scl=1;scl=0;Sda=a3;scl=1;scl=0;Sda=a2;scl=1;scl=0;Sda=a1;scl=1;scl=0;Sda=a0;scl=1;scl=0;Sda=1;scl=1;While<sda==1>;SCL=0;}/*隨機地址地字節(jié)函數(shù),address為預(yù)讀單元地址*/Ucharread_buter<ucharaddress>{Ucharx;Start_ic<>;Wd24<0a0>;Wd24<address>;Start_ic<>;Wd24<0a1>;X=rd24<>;Stop_ic<>;Return<x>;}/*從指定地址開始順序讀塊地址數(shù)據(jù),數(shù)據(jù)存入全局緩沖區(qū)中buf,n為數(shù)據(jù)字節(jié)數(shù)*/Ucharread_bytes<ucharaddress,ucharn>{Uchara,y;For<y=0;y<n;y++>{a=read_byter<address,y>;buf[y]=a;}}/**//*字節(jié)寫入模式寫函數(shù),其中address為單元地址,dd為數(shù)據(jù)*/Voidwrite_byte<ucharaddress,uchardd>{Start_ic<>;Wd24<0a0>;Wd24<address>;Wd24<dd>;Stop_ic<>;}/*串行通信子程序*//*波特率2400,8位數(shù)據(jù)位,1位停止位,無校驗位*//*先用握手字節(jié)y,然后發(fā)送x個數(shù)據(jù)*//*待發(fā)送數(shù)據(jù)在trdata緩沖區(qū)中*/Voidcomm.<ucharx,uchary>{Uchari,a;Uintj;While<1>{TI;while<RI==0>;RI=0;A=SBUF;If<a!=y>goto[1];For<j=0;i<x;i++>;{SBUFtrdata[i];While<TI==1>;TI=0;}For<j=0;j<12500;j++>;}}/*主程序初始化函數(shù)*/Voidinit<void>{RSR=0;PWR=1;IC_WR=0;ONCOMM=0;EX0=1;TMOD=0x20;SCON=0x50;TH1=0xf3;TL1=0xf3;If<BAUI>==0{PCON=0x08;}Else{PCON=0x00;}TR1=1;EA=1;}/*將數(shù)據(jù)緩沖區(qū)16B發(fā)往上位機*//*波特率2400,8位數(shù)據(jù)位,1位停止位,無校驗為2*//*待發(fā)送數(shù)據(jù)在buf緩沖區(qū)*/Voidtransfer<void>{Uchari;Uintj;For<i=0;i<16;i++>{SBUF=buf[i];While<TI==0>;TI=0;FCR=0;j<1000;j++>;}}/*接收16B存入緩沖區(qū)*//*波特率2400,8位數(shù)據(jù)位,1位停止位,無校驗位*//*緩沖區(qū)為buf*/Voidteceive<void>{UcharI,a;For<i=0;i<16;i++>{while<RI==0>;RI=0;A=SBUF;Buf[i]=a;}}/*將緩沖區(qū)的n字節(jié)寫入IC卡address開始的區(qū)域*/Voidwrite_ic<ucharaddress,ucharn>{Ucharx,y;For<y=0;y<n;y++>{While_byte<address[y],buf[y]>;Delay<10>;}}/*拔卡中斷程序,主要完成IC卡下電及讀/寫復(fù)位*/Voidint_0<void>interrupt0using1{While<!ICOUT>;Delay<10>;If<!ICOUT>{If<IC_WRONCOMM>{PWR=1;BELL=0;Delay<10>;BELL=1;RST==1;}}}/*延時函數(shù),延時ms數(shù)由N決定,但不同的系統(tǒng)需要調(diào)整相應(yīng)參數(shù)*/Voiddelay<ucharn>{Uchari,j,k;For<k=o;k<n;k++>For<i=0;i<100;i++>For<j=0;j<255;j++>;}Voidmain<void>{Uchara;Fuwei:init<>;While<!ICIN>;Delay<10>;While<!ICIN>;IC_WR=1;/*開始讀IC卡16B并存入緩沖區(qū)*/PWR=0;Read_bytes<0,16>;PWR=1;/*等待與上機位建立通信聯(lián)系*/ONCOMM=1;While<RI==0>;RI=0;A=SBUF;Switch<a>{case0xaa:SBUF=0xaa;While<!TI>;TI=0;Transfer<>;Break;Case0xbb:SBUF=0xbb;While<!TI>;TI=O;Receive<>;PWR=0;Write_ic<0,16>;PWR=1;Break;Default:SBUF=0xcc;While<!TI>;TI=0;}ONCOMM=0;While<!RST>;Gotofuwei;}采用fanklincC51編譯的命令如下:>C51IC.C>L51IC.OBJ三上位PC機通信接口軟件在Windows9x的串行通信實現(xiàn)一般有3種方式:利用Windows9x的API接口函數(shù)。對于RAD開發(fā)系統(tǒng)〔如VB,可利用ActiveX串行通信控件。利用DLL動態(tài)鏈接庫,直接操作串行端口。上述3種方式各有特點。這里討論采用第3種方式實現(xiàn)的串行通信接口,具有應(yīng)用靈活的特點。下面給出基于Delphi4.0的串行通信DLL程序:LibraryMycomdll;UseSysUtils;Classes;ConstCOM1:=$3f8;COM2:=$2f8;VarCOM:Word;{DLL中全局變量}ProcedureOutb<ConstPort:Word;onstDbyte:Byte>;pascal;BeginAsmMOVDX,PortMOVAL,DbyteOUTDX,ALEnd;End;FunctionInb<ConstPort:Word>:Byte;pascal;BeginAsmMOVDX,PortMOVAL,DbyteOUTDX,ALEnd;End;FunctionInb<ConstPort:Word>:Byte;pascal;BeginAsmMOVDX,PortINAL,DXMOV@Resullt,ALEnd;End;{串行口初始化,COM1,COM2可選,波特率2400,4800可選}ProcedureCommInit<ConsstPort:Byte;ConstBand:String>;Stdcall;VarBAUDL,BAUDH:Byte;BeginIfPort=1thenCOM:=COM1;ElseCOM:=COM2;IfBAUD=’2400’thenBeginBAUDL:=$30;BAUDH:=$00;End;ElseBeginBAUDL:=$18;BAUDH:=$00;End;Outb<COM+3,$80>;Outb<COM,BAUDL>;Outb<COM+1,BAUDH>;Outb<COM+3,$03>;End;{發(fā)送一字節(jié)}ProcedureSendByte<ConstDbyte:Byte>;Stdcall;VarStatus:Byte;BeginRepestStatus:=Inb<COM+5>;Until<<Statusand$20>=$20>;Outb<COM,Dbyte>;End;FunctionReceiveByte:Byte;Stdcall;VorStatus,Res:Byyte;BeginRepear:Status:=Inb<COM+5>;Until<<Statusand$01>=$01>;Res:=Inb<COM>;ReceiveByte:=Res;End;{以下用EXPORT引出輸出過程或函數(shù)}ExportCommInit;ExportSendByte;ExportReceiveByte;BeginEnd.第五章總結(jié)一.總結(jié)這次的畢業(yè)設(shè)計,我選擇的方向是單片機,在老師的耐心指導(dǎo)下,經(jīng)過堅持不懈的努力,我熟悉了單片機,并重新學(xué)了兩門課程<<單片機>>和<<portel99>>,使我更清楚的認(rèn)識了單片機。為我以后的從事單片機工作奠下了基礎(chǔ),從這次的畢業(yè)設(shè)計的情況,雖然中間我復(fù)習(xí)課程對學(xué)習(xí)單片機有了點影響,.但是使我學(xué)到了在課堂上學(xué)不到的知識和能力,畢業(yè)設(shè)計使我清楚的認(rèn)識到團結(jié).協(xié)作的重要,能很好的跟別人交流和討論某個問題,.我想這是我的最大的收獲。通過這次畢業(yè)設(shè)計,使我受到了一次用專業(yè)知識、專業(yè)技能分析和解決問題系統(tǒng)的鍛煉,使我在綜合知識的選用方面,在設(shè)計硬件的基本思想、方法方面都向前邁了一大步,為日后成為合格的應(yīng)用型人才打下了良好的基礎(chǔ)。這次在指導(dǎo)老師的幫助下,基本完成了任務(wù),在硬件及軟件的設(shè)計方面有了一定的提高,為今后走上的工作崗位打下了專業(yè)基礎(chǔ)。在這次的畢業(yè)設(shè)計中,讓我深深地體會到硬件設(shè)計不是一件簡單的事情,它需要設(shè)計者具有全面的專業(yè)知識,縝密的思維,嚴(yán)謹(jǐn)?shù)墓ぷ鲬B(tài)度以及較高分析問題、解決問題的能力,而我在這些方面都存在很大的不足。在這,我要衷心感謝劉老師中給予我的極大幫助,使我能夠完成此次的畢業(yè)設(shè)計。同時,我也要感謝我的同學(xué),為我們的良好協(xié)作,相互幫助,才得以把這次畢業(yè)設(shè)計工作完成。二.致謝大學(xué)三年眨眼而過。隨著這大學(xué)期間最后一份答卷的完成,我們短暫的大學(xué)生活也將劃上一個圓滿的句號。回想起來,點點滴滴都是那樣的刻骨銘心。首先,我非常感謝我的指導(dǎo)老師劉藝柱在我們的設(shè)計上花費了不少的時間和精力。在劉老師悉心指導(dǎo)下,我們的設(shè)計進行的非常順利。在此,我衷心的感謝劉老師。其次,在本次設(shè)計中我查閱了大量的資料,鞏固了所學(xué)的專業(yè)知識,拓寬了知識面,特別是在本設(shè)計中應(yīng)用的一些芯片,使我對芯片的結(jié)構(gòu)、原理和應(yīng)用有了更深的了解。在設(shè)計的制作和與同學(xué)的交流中使我認(rèn)識到了自己缺陷和不足,我會在以后的工作生活中努力改進。最后,由于時間和能力有限,在設(shè)計中難免會有錯誤和不足,希望老師和同學(xué)給予批評和指正。此外,我還要感謝所有對我傳授過知識的老師,沒有你們的教誨,也沒有我今天的學(xué)業(yè)成果。謝謝你們!!三.參考文獻1

王卓人,鄧晉均,劉宗祥,《IC卡的技術(shù)與應(yīng)用》,北京:電子工業(yè)出版社,19992

王愛英《智能卡技術(shù)》,北京:清華大學(xué)出版社,20003

何立民等《單片機高級教程》,北京:北京航空航天大學(xué)出版社,2000.84

陳志斌卓家靖基于單片機和CPLD的嵌入式脈沖發(fā)生器設(shè)計,北京,《微計算機信息》,2005。5沈紅偉《單片機應(yīng)用系統(tǒng)設(shè)計實例與分析》,科學(xué)出版社,2005.6邵貝貝等譯《嵌入式實時操作系統(tǒng)μC/OSII〔第2版》,電子工業(yè)出版社,2003.17萬光毅嚴(yán)義《片機實驗與實踐教程》,科學(xué)出版社,2006.78周堅《單片機輕松入門》,XX電子科技大學(xué)出版社,2002.29李剛林凌姜葦《51系列單片機系統(tǒng)設(shè)計與應(yīng)用技巧》,北京航空航天大學(xué)出版社,2003.110何立民《單片機應(yīng)用技術(shù)選編<10>》,電子工業(yè)出版社,2003.111劉啟中李榮正王力生王威《PIC單片機原理及應(yīng)用》,清華大學(xué)出版社,2005.2基于單片機的IC卡讀寫器設(shè)計TheDesignoftheICCardRead-WriteDeviceBasedonsinglechipmicrocomputer2012屆電氣工程系專業(yè)學(xué)號學(xué)生姓名指導(dǎo)教師陳東陽完成日期20XX5月15日畢業(yè)設(shè)計成績單學(xué)生姓名學(xué)號班級專業(yè)畢業(yè)設(shè)計題目基于單片機的IC卡讀寫器設(shè)計指導(dǎo)教師姓名指導(dǎo)教師職稱評定成績指導(dǎo)教師得分評閱人得分答辯小組組長得分成績:院長〔主任簽字:年月日畢業(yè)設(shè)計任務(wù)書題目基于單片機的IC卡讀寫器設(shè)計學(xué)生姓名學(xué)號班級專業(yè)自動化承擔(dān)指導(dǎo)任務(wù)單位XX鐵道大學(xué)導(dǎo)師姓名陳東陽導(dǎo)師職稱副教授主要內(nèi)容設(shè)計一款讀寫器,能通過與計算機通信,由計算機發(fā)送新數(shù)據(jù)到單片機,完成對卡的讀/寫。IC卡應(yīng)用于消費電子產(chǎn)品對IC卡的管理,如電卡,飯卡,購物卡,娛樂消費卡等其他消費費系統(tǒng)充值與管理。這里設(shè)計的讀寫器能實現(xiàn)簡單的讀寫與顯示功能。二、技術(shù)參數(shù)和要求1、使用SLE4442卡,密碼用123456。2、33-36區(qū)域放置AA5580FE四個字節(jié)作為卡片識別代碼。3、37區(qū)域放置能消費值MN〔錢包值MN<=994、38區(qū)域放置MN的備份NN,5、39區(qū)域放置工作時間TT<TT<=99>6、讀取卡信息上傳到計算機7、注冊有效卡并對其進行充值管理。8、其他要求:寫卡成功失敗都要有聲光提示;有寫卡狀態(tài)指示;電路原理圖設(shè)計,protel印刷電路圖設(shè)計。提出系統(tǒng)設(shè)計框圖,提出相應(yīng)的解決方案。論文正文不少于1.5萬字,查閱文獻資料不少于15篇,其中外文文獻2篇以上,翻譯與課題有關(guān)的外文資料不少于3000漢字。結(jié)構(gòu)框圖◆整體分三部分單片機部分,讀寫卡模塊,232模塊部分。◆接口電路部分屬于IC卡槽和上位機相連的部分,也是IC卡能與單片進行通話的部分。◆數(shù)碼顯示部分是顯示IC卡存儲器內(nèi)數(shù)值的部分?!魡纹瑱C與IC卡完成通信,對卡進行寫操作。并將數(shù)據(jù)通過232部分與計算機通信。◆232模塊部分,電平轉(zhuǎn)換,通過這部分完成計算機與單片機的通信?!艟幊烫崾荆河嬎銠C將要寫的數(shù)據(jù)先發(fā)送到單片機,單片機再完成對卡的讀寫操作三、應(yīng)收集的資料及參考文獻1、參考及查閱資料◆RS232,數(shù)碼顯示◆I2C總線◆通信協(xié)議2、通訊協(xié)議上位機通過查詢命令,讀取寫入數(shù)據(jù),協(xié)議如下:上位機〔計算機發(fā)送:AA55810081ED讀卡器返回數(shù)據(jù)串:AA5501NABC,,,,YED現(xiàn)在解釋一下這個協(xié)議的含義。先解釋AA55810081EDAA55是幀頭,81是命令碼,如果有很多命令的話,就靠這個數(shù)據(jù)區(qū)分。00是數(shù)據(jù)長度,因為沒有要下發(fā)的數(shù)據(jù),所以是0,81代表的是校驗和,是除去幀頭外的前面所有數(shù)據(jù)的累加和,進位去掉。這里只有8100,所以校驗和還是81,ED是幀尾,表示數(shù)據(jù)串結(jié)束。再解釋AA5501NABC,,,,YEDAA55還是幀頭。01是針對于81命令的返回碼,就是將命令碼加上80后舍掉進位的數(shù)據(jù)。如果命令碼是91,它的返回碼就是11,以此類推。N表示這個數(shù)據(jù)串里面要傳遞的真正有意義的數(shù)據(jù)個數(shù)。即從N與Y之間有多少個字節(jié)。ABC,,,,就是要傳遞的字節(jié)數(shù)據(jù)。Y是校驗和,就是從01開始到數(shù)據(jù)結(jié)束,所有字節(jié)累加和。ED是幀尾。例如上位機發(fā)送讀卡命令如下:AA55830083ED解釋AA55幀頭,83讀卡命令碼,000個沒有數(shù)據(jù),83是命令碼83和數(shù)據(jù)個數(shù)00的累加驗和,ED是結(jié)束碼單片機執(zhí)行命令后返回數(shù)據(jù)如下:有效卡:AA5503〔命令返回碼04〔有效數(shù)據(jù)個數(shù)MN〔錢包值NN〔一次消費值TT〔一次運行時間Y〔累加校驗和ED無效卡:AA5503〔83命令返回碼01〔有效數(shù)據(jù)個數(shù)55〔無效卡數(shù)據(jù)59〔030155累加校驗和ED上位機發(fā)送命令如下:AA558203MNNNTTYED〔82是充值命令,其他參照上面解釋單片機執(zhí)行后返回命令如下:寫卡成功:AA5502〔82返回命令碼01〔數(shù)據(jù)長度01〔成功數(shù)據(jù)04〔累加校驗和ED寫卡失?。篈A5502〔82返回命令碼01〔數(shù)據(jù)長度02〔失敗數(shù)據(jù)05〔累加校驗和ED其他命令如注冊有效卡等命令按這個規(guī)定自行編寫。上位機發(fā)送和接受命令,可以通過串口調(diào)試助手完成。STC單片機官網(wǎng)上的程序下載軟件都有這個功能,波特率用9600。串口方式選擇1個起始位,8個數(shù)據(jù)位,一個停止位。五、進度計劃第一周~第二周開題報告第三周~第四周資料收集,方案設(shè)計第五周~第七周系統(tǒng)設(shè)計第八周中期檢查第九周~第十二周系統(tǒng)調(diào)試和論文撰寫第十三~第十四周論文審核第十五周~第十六周答辯教研室主任簽字時間畢業(yè)設(shè)計開題報告題目基于單片機的IC卡讀寫器設(shè)計學(xué)生姓名學(xué)號班級專業(yè)自動化一、研究背景IC卡是集成電路卡<IntegratedCircuitCard>的簡稱,有些國家和地區(qū)稱之為微芯片卡<MicrochipCard>或微電路卡<MicrocircuitCard>。IC卡的大小和磁卡相同,它把集成電路鑲在塑料卡片上,芯片一般是數(shù)據(jù)不易丟失的存儲器<ROM,EPROM.EPROM>,保護邏輯電路,或者CPU。IC卡最初是為了解決金融交易中的安全性問題而設(shè)計的,它帶來全新的交易概念與巨大的優(yōu)勢。按照IC卡與讀寫器的數(shù)據(jù)交換方式,IC卡可分為接觸型IC卡和非接觸型IC卡。所謂接觸型IC卡就是在使用時通過有形的金屬電極觸點將卡的集成電路與外部接口電路直接接觸連接,提供集成電路工作的電源并進行數(shù)據(jù)交換的IC卡。其特點是在卡的表面有符合IS07816標(biāo)準(zhǔn)的多個金屬觸點。IC卡的出現(xiàn)已經(jīng)有了40年左右的時間,人們根據(jù)系統(tǒng)的需要,設(shè)計了各種各樣的IC卡讀寫器,IC卡讀寫器是IC卡與應(yīng)用系統(tǒng)間的橋梁,在ISO國標(biāo)標(biāo)準(zhǔn)中稱之為接口設(shè)備IFD〔InterfaceDevice.IFD內(nèi)的cpu通過一個接口電路與ic卡相連并進行通信。IC卡最早是在70年代初提出來的,由法國布爾公司于1976年首先創(chuàng)造出來,并將這項技術(shù)應(yīng)用到金融、交通、醫(yī)療、身份證、餐飲等多個行業(yè)。將IC卡作為一種先進的信息存儲介質(zhì),和其他設(shè)備組成系統(tǒng)就能提供非常豐富的服務(wù)功能,把這些功能與生產(chǎn)或流通領(lǐng)域有機地結(jié)合起來,將出現(xiàn)令人意想不到的奇跡,創(chuàng)造出巨大的經(jīng)濟和社會效益。與其相關(guān)的配套產(chǎn)品IC卡讀寫裝置,它為一些生產(chǎn)廠家所帶來的利益也是非常巨大的。IC卡越來越廣泛的應(yīng)用,一定會帶動讀寫裝置的廣泛應(yīng)用。隨著信息技術(shù)的不斷發(fā)展,IC卡芯片的制作成本將不斷降低,IC卡也會以其獨有的安全性和使用靈活性最終取代磁條卡。IC卡發(fā)展的如此迅疾自然也會導(dǎo)致其讀寫器的性能越來越好,功能也越來越強。IC卡讀寫器現(xiàn)在在銀行、消費辦公場所到處可見。今天我們用的校園一卡通,在卡務(wù)中心就是通過IC卡讀寫器將IC卡與電腦相連來進行充值的,所以本設(shè)計將對IC卡讀寫器裝置展開研究。二、國內(nèi)外研究概況IC〔IntegratedCircuit卡是1970年由法國人RolandMoreno發(fā)明的,他第一次將可編程設(shè)置的IC芯片放于卡片中,使卡片具有更多功能。法國布爾<BULL>公司于1976年首先創(chuàng)造出IC卡產(chǎn)品,并將這項技術(shù)應(yīng)用到金融、交通、醫(yī)療、身份證明等多個行業(yè),它將微電子技術(shù)和計算機技術(shù)結(jié)合在一起,提高了人們生活和工作的現(xiàn)代化程度。第一代IC卡的最初設(shè)想是由日本人提出來的。1969年12月,日本的有村國孝〔KunitakaArimura提出一種制造安全可靠的信用卡方法,并于1970年獲得專利,那時叫ID卡〔IdentificationCard。第二代IC卡在1974年,法國的羅蘭·莫雷諾〔RolandMoreno發(fā)明了帶集成電路芯片的塑料卡片,并取得了專利權(quán),這就是早期的IC卡。第三代IC卡是1976年法國布爾〔Bull公司研制出世界第一枚IC卡。第四代,1984年,法國的PTT〔Posts,TelegraphsandTelephones將IC卡用于電話卡,由于IC卡良好的安全性和可靠性,獲得了意想不到的成功。隨后,國際標(biāo)準(zhǔn)化組織〔ISO,InternationalStandardizationOrganization與國際電工委員會〔IEC,InternationalElectrotechnicalCommission的聯(lián)合技術(shù)委員會為之制訂了一系列的國際標(biāo)準(zhǔn)、規(guī)范,極大地推動了IC卡的研究和發(fā)展。在我國的一些領(lǐng)域,如電信、交通、醫(yī)療等部門,使用IC卡也已經(jīng)很普遍,很多單位也已經(jīng)使用IC卡來進行人員和財務(wù)管理。IC卡隨著半導(dǎo)體技術(shù)、大規(guī)模集成電路芯片的發(fā)展而產(chǎn)生,也必將隨著計算機技術(shù)、網(wǎng)絡(luò)技術(shù)等的高速發(fā)展而迅速發(fā)展壯大。而與其相伴而生的IC卡寫卡器的科學(xué)技術(shù)和制造工藝也再不斷進步。從最簡單的接觸式讀寫器到非接觸式讀寫器再到現(xiàn)在市場上的通用型IC卡讀寫器、專用型IC卡讀寫器。IC卡讀寫器正是伴著IC卡的騰飛而輝煌,IC卡的創(chuàng)新沒有止步,IC卡讀寫器也同樣在引進新技術(shù)如:網(wǎng)絡(luò)遠(yuǎn)程控制技術(shù)、生物識別技術(shù)。讀寫器是IC卡應(yīng)用系統(tǒng)的終端設(shè)備,只有通過讀寫設(shè)備才能和IC卡建立聯(lián)系,本次設(shè)計我要通過對SLE4442卡的應(yīng)用,實現(xiàn)一個簡單的接觸式IC卡寫卡器,可以通過對IC卡寫入數(shù)據(jù)來實現(xiàn)簡單的金額存儲,運用于飯卡、購物卡,娛樂消費卡等簡單的交易卡上。三、研究內(nèi)容和預(yù)期結(jié)果3.1研究內(nèi)容包括:〔1串口部分如何將上位機和單片聯(lián)系起來?〔2對于89C52單片如何利用才會更合理?〔3顯示部分是采用液晶顯示還是數(shù)碼管顯示,該用共陰極還是共陽極?〔4IC卡協(xié)議怎么寫?〔5是否需要鍵盤?〔6如何實現(xiàn)讀寫卡時報警提示?〔7電路原理圖設(shè)計,protel印刷電路圖設(shè)計。3.2預(yù)期達到的結(jié)果:〔1整體分三部分單片機部分,寫卡模塊,232模塊部分。另外還附帶了一個顯示模塊。〔2單片機與IC卡完成通信,對卡進行讀寫操作,實現(xiàn)信息存儲,能顯示0到99間的任一數(shù)值?!?232模塊部分,電平轉(zhuǎn)換,通過這部分完成計算機與單片機的通信。〔4計算機將要寫的數(shù)據(jù)先發(fā)送到單片機,單片機再完成對卡的讀寫操作。〔5插拔卡時有報警提示,讀寫操作時也有報警提示?!?上電時數(shù)碼管能顯示IC卡的存儲信息。指導(dǎo)教師簽字時間20XX2月25日摘要IC卡讀寫器現(xiàn)在在銀行、消費辦公場所到處可見。今天我們用的校園一卡通,在卡務(wù)中心就是通過IC卡讀寫器將IC卡與電腦相連來進行充值的,本設(shè)計將對IC卡寫卡器裝置展開研究。本設(shè)計以西門子公司的SLE4442型邏輯加密卡為基礎(chǔ),從SLE4442卡的功能和結(jié)構(gòu)入手,介紹了SLE4442卡數(shù)據(jù)存儲的控制方法和工作原理,通過Protel99繪制硬件電路圖,KeiluVision4軟件編寫軟件程序還有串口助手STC_ISP_V486的不斷調(diào)試,詳細(xì)分析了單片機控制IC卡數(shù)據(jù)讀寫的軟硬件實現(xiàn)。本設(shè)計的最終完成,實現(xiàn)了上位機對SLE4442卡的數(shù)據(jù)讀寫操作。本文設(shè)計了一個接觸式IC卡讀寫器。該讀寫器主要是為了實現(xiàn)上位機對SLE4442卡進行讀寫操作,可以實現(xiàn)讀卡、寫卡、加錢、減錢等操作,同時具有相關(guān)的報警和顯示功能。所設(shè)計的讀寫器以STC89C52為核心,配以IC卡接口電路、串行通信電路、上電檢測電路、數(shù)碼管顯示電路等部分。通過讀寫器插槽與IC卡芯片通信,由STC89C52單片機控制數(shù)據(jù)傳輸過程,實現(xiàn)對IC卡的讀、寫、加錢、減錢等操作。關(guān)鍵詞:IC卡讀寫器SLE4442卡單片機AbstractICcardread/writedeviceinthebanknow,consumptionofofficeplaceeverywhere.Todayweusethecampuscard,thecardservicecenteristhroughtheICcardreaderICcardisconnectedwiththecomputertorecharge,thedesignofICcardwritingdeviceresearch.ThisdesigntoSiemenscompanytheSLE4442logicencryptioncardbasedonSLE4442card,thefunctionandstructure,introducestheSLE4442carddatastoragecontrolmethodandtheprincipleofwork,throughtheProtel99drawingthecircuitdiagramofthehardware,KeiluVision4softwareprogramandserialportaideSTC_ISP_V486debugging,adetailedanalysisofthesinglechipmicrocomputercontrolICdatareadandwritethesoftwareandhardwarerealizationof.Thisdesignfinished,achieveahostcomputerontheSLE4442carddatareadandwriteoperation.ThispaperintroducesthedesignofacontacttypeICcardread/writedevice.ThereaderismainlyfortherealizationofPConSLE4442cardreadandwriteoperation,canrealizethecardread,writecards,plusmoney,losemoneyandotheroperations,atthesametimewithrelevantalarmanddisplayfunctions.The

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論