版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
./XX鐵道大學四方學院畢業(yè)設計摘要IC卡是一個正蓬勃發(fā)展的邊緣產業(yè),一個與我們的生活正越來越密切的產業(yè)。在普及因特網和計算機的大潮涌來時,IC卡扮演著越來越重要的角色。IC卡讀寫設備大致可分為兩大類:一類為專用讀寫設備或稱脫機讀寫器。其特點是:充分利用IC卡存儲量大,可以獨立存儲和工作,不需要和主機相連就可完成數據讀寫的優(yōu)點,可與應用設備結合或單獨工作。例如:IC卡電表,水表,ATM機,商場收款機。另一類為通用讀寫設備,或稱聯(lián)機讀寫器,是帶有單片機和存儲器的設備,通過并行或串行口與PC機或應用系統(tǒng)網絡相連接。在運行不同軟件時可以讀寫不同種類的IC卡,組成不同的應用系統(tǒng)。如果配備開發(fā)系統(tǒng)軟件,可對IC卡做初始規(guī)劃,數據加密和初始寫入,從而構成IC卡應用開發(fā)制作環(huán)境。在本設計中,我們討論通用開發(fā)系統(tǒng)——基于ATM89C51單片機的IC卡讀/寫器的設計。通過89C51單片機來實現IC卡的讀和寫,在系統(tǒng)中設計一個復位電路,接在89C51的復位管腳上。復位電路是微機應用中重要的一環(huán),一個好的復位電路對微機抗干擾有重要作用。另外還在單片機上接了一個時鐘電路,用來設置單片機內部震蕩的時間。RS232串行接口在本設計中用于單片機與PC機之間的連接,IC卡座用于插卡,實現IC卡與讀寫器的連接。本設計中所涉及的主要是接觸式邏輯加密卡SLE4442卡。另外一些外圍電路的設計使整個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卡技術……………………5二IC卡應用……………………8系統(tǒng)原理框圖10一系統(tǒng)原理框圖的繪制………10二原理圖………13硬件部分14一AT89C51單片機簡介………..14二RS232串行接口……………16三SLE4442簡介………………18四IC卡座……………………18五外圍電路……………………20軟件部分…….25一工作過程、流程圖……………25二用C51實現的讀/寫主程序27三上位PC機通信接口軟件…….34總結……………..36一總結……………36二致謝……………37三參考文獻………38前言IC卡是一個正蓬勃發(fā)展的邊緣產業(yè),一個與我們的生活正越來越密切的產業(yè)。在普及因特網和計算機的大潮涌來時,IC卡扮演著越來越重要的角色。IC卡讀寫設備大致可分為兩大類:一類為專用讀寫設備或稱脫機讀寫器。其特點是:充分利用IC卡存儲量大,可以獨立存儲和工作,不需要和主機相連就可完成數據讀寫的優(yōu)點,可與應用設備結合或單獨工作。例如:IC卡電表,水表,ATM機,商場收款機。另一類為通用讀寫設備,或稱聯(lián)機讀寫器,是帶有單片機和存儲器的設備,通過并行或串行口與PC機或應用系統(tǒng)網絡相連接。在運行不同軟件時可以讀寫不同種類的IC卡,組成不同的應用系統(tǒng)。如果配備開發(fā)系統(tǒng)軟件,可對IC卡做初始規(guī)劃,數據加密和初始寫入,從而構成IC卡應用開發(fā)制作環(huán)境。在本設計中,我們討論通用開發(fā)系統(tǒng)——基于ATM89c51單片機的IC卡讀/寫器的設計。
IC卡讀/寫設備由IC卡卡座,單片機,數據存儲器RAM,程序存儲器EEPROM,接口電路和外圍設備等組成。
IC卡讀/寫器各部分結構與功能簡單介紹如下:
1.IC卡卡座
IC卡卡座是連接IC卡與讀寫器的。其功能包括對IC卡供電,提供讀寫信號和傳送數據。要求提供方便的插拔方式和可靠的接觸,并帶有帶電插拔,過流保護,插卡檢測等能力。IC卡和插座的結構尺寸必須符合國際標準化組織<ISO>7816的標準。對觸點數目、位置、信號名稱和功能都有明確規(guī)定,以保證兼容性。
2.單片機和存儲器
讀寫器中配備單片機和ROM,RAM存儲器,構成微機系統(tǒng),單片機運行ROM中固化的軟件,執(zhí)行與IC卡和上位PC機的通信規(guī)程??刂茖C卡的讀寫,完成IC卡與主機間數據的格式轉換。為減輕單片機負擔,提高讀寫速度,常配置有硬件密文轉換和單元。3.接口電路和外圍設備
通用讀寫器一般與PC機或網絡聯(lián)機工作,常用標準并行或串行口與上位機連接和通訊。常用的是帶有25芯或者9芯插口的RS232-C型串行接口,可直接接到PC機的COM1或COM2上。此時,可利用主機的顯示器作監(jiān)視器,主機鍵盤作控制和輸入,利用主機打印機輸出。此時主機與讀寫器組成了IC卡應用與開發(fā)系統(tǒng),操作與一般微機相仿,但用戶界面將隨所配軟件而有很大不同。4.IC卡系統(tǒng)軟件本設計的系統(tǒng)軟件是通過C51編寫的。第一章概述一、IC卡技術IC卡概述1.什么是IC卡IC卡是英文集成電路卡的縮寫,其大小和名片相當,但比名片稍厚些。國際標準化組織ISO為它制定了國際標準,對卡的長度、寬度及厚度都做了比較明確的規(guī)定。制作時,將一個專用的集成電路芯片鑲嵌于基片中,封裝成形,即為IC卡。IC卡的概念是20世紀70年代初提出來的,法國人 ROLNMO與1970年首先將IC卡芯片放于卡片中。2.IC卡的分類〔1根據卡中所鑲嵌的集成電路的不同分類存儲卡:卡中的集成電路為EEPROM。邏輯加密卡:卡中集成電路為帶加密邏輯和EEPROM。CPU卡:卡中的集成電路包括中央處理器CPU、EPROM、隨機存儲器RAM以及固化在只讀存儲器ROM中的片內操作系統(tǒng)。嚴格的講只有CPU才是真正的只能卡?!?根據卡與外界數據傳送的形式分類IC卡可分為接觸型與非接觸型。非接觸型IC卡又稱射頻卡。當前使用廣泛的是接觸型IC卡。在這種卡上,起IC芯片有8個觸點可與外界接觸;射頻卡的集成電路不向外引出觸點,因此,它除了包含前述三種IC卡的電路外,還帶有射頻收/發(fā)電路及其相關電路?!?根據應用領域分類IC卡分為金融卡和非金融卡。金融卡又分為信用卡和現金卡。信用卡由銀行發(fā)行并管理,持卡人用它作為消費時的支付工具,可使用預先設的的透支限額資金。現金卡可用作電子存折和電子錢包,不允許透支.3.IC卡技術〔1IC卡讀/寫技術IC卡是一種集成電路卡,它的讀寫設備是每個IC卡應用系統(tǒng)不可缺的周邊設備。該設備通過IC卡的8個觸點向IC卡提供電源與IC卡相互交換信息。雖然IC卡是從磁卡發(fā)展而來的,但他在機器讀/寫性能上卻遠優(yōu)與磁卡,無需往復的機械動作即可完成人-機-卡之間的多次會話過程,使卡在應用時操作簡單,給人們帶來極大的便利?!?IC卡的安全技術信息安全的目的就是保證數據在確定的時間內,在確定的地點,在確定的條件下,只能被卻定的對象使用。而IC卡正是為了解決數據是安全問題而設計的,它采用的是半導體密碼存放與軟件加密技術,能夠有效地阻止卡的非法復制與數據篡改,應用設備設備在脫離網絡的情況下,可以對IC卡進行鑒別。IC卡的信息安全一般具有以下特征:保密性:既防止未經授權的使用者獲取信息;完整性:防止未經授權的信息改變〔更改、刪除、增加;可獲取性:防止未經授權的截取信息;真實型:即通過一系列的技術措施驗證信息的真實性;持久性:即長久時間信息保存的可靠性。〔3數據存儲技術在一個應用系統(tǒng)的使用中,系統(tǒng)必須對所有持卡人建立一份身份與使用的檔案。在磁卡系統(tǒng)中,這組檔案存放在中心數據庫系統(tǒng)內,沒次持卡人使用必須通過終端,以網絡形式從數據庫系統(tǒng)中提出那分與自己有關的檔案,IC卡的數據存儲能路比磁卡要強得多,卡把持卡人有關的大量信息存放在卡中,因而使得IC卡使用的靈活性大大增強,交易的實時性也明顯改善。目前,IC卡的存儲容量可達近1MB。4.IC卡的技術特點芯片的制造技術與工藝目前,IC卡用芯片撲片采用較為先進的CMOS,BICMOS等集成電路制造工藝,具有較好的點性能及抗干擾能力,一采用CMOS工藝制造的IC卡芯片為例,起主要技術指標為;寫入/刪除次數最少可大100000次。數據保存時間最少為10年。工作電壓為5V。抗靜電4000V左右。噪音容限也較高。IC卡座的技術要求IC卡卡座哈IC卡應有良好的接觸點,應有盡量小的摩擦。具有生產制造時的質量穩(wěn)定性。具有對應用環(huán)境〔溫度、濕度、震動及電磁干擾等的適應性。其中正確的工作順序較為重要。按有關ISO/IEC7816標準規(guī)定,在IC卡的觸點和讀/寫設備的觸點之前,讀/寫設備不應對磁卡施加有關點信號,以免造成不可預料的損壞。IC卡讀/寫設備作為系統(tǒng)和用戶交互的接口,必將棉隊各種各樣復雜的應用環(huán)境,如在金融系統(tǒng)應用中的ATM〔自動柜員機,有可能放置在露天公共場合,處于高/低溫、潮濕、電磁干擾等環(huán)境;在電車、汽車自動售票系統(tǒng)應用中,處于振動、電磁干擾等環(huán)境。因此,在設計階段就應注意;IC卡讀/寫設備環(huán)境適應性問題。二.IC卡的應用IC卡的應用領域非常廣泛。它除了涵蓋傳統(tǒng)磁卡的全部功能外,還拓展到許多磁卡所不能勝任的領域。這在很大程度上歸功與IC卡的大容量數據存儲能力和強有力的安全特性。目前,IC卡除在金融系統(tǒng)外,在非金融系統(tǒng)也得到了廣泛的應用。如在通信領域中的公用電話卡,移動電話中的SIM卡;在交通領域中的駕駛員執(zhí)照卡、停車收費卡、公交交通設施是自動收費卡及公共交通工具的自動收費卡等;另外在醫(yī)療保健、個人身份識別、預收費儀表、校園及消費娛樂領域中也得到了具體的應用。通信領域數字移動電話中的用戶識別模式智能卡〔SIM卡及公用電話用IC卡。醫(yī)療衛(wèi)生和計劃生育管理衛(wèi)生部計劃發(fā)行醫(yī)療IC卡;國家計劃生育委員會準備發(fā)行育齡婦女計劃生育IC卡企業(yè)保險領域用于醫(yī)療保險、失業(yè)保險、養(yǎng)老保險及兒童免疫接種等,目前XX、褡褳等地已發(fā)行IC保險卡。〔4交通領域用于汽車駕駛員管理、公交路費及公交或地鐵自動售票,目前公安部已完成"機動車輛駕駛員違章處理IC卡"的標準起草工作,并已通過專家審定。〔5對企、事業(yè)單位和社會團體的管理國家工商局準備發(fā)行工商企業(yè)監(jiān)管IC卡,并在部分省市試點。企、事業(yè)單位內部管理目前已包括單位職工內部管理、場區(qū)內部通行控制、校園師生管理、飯店IC卡門鎖及飯店內部消費等。這類IC卡以集團、單位內部發(fā)行為主。公共事業(yè)目前IC卡水表、電氣及煤氣表已在許多城市使用,今后會進一步推廣。稅務〔包括國稅和地稅許多省市已開始使用IC卡進行稅金的征收和稽查。加油中國石化總公司和地方石油公司都已有組織地建立IC加油卡收費系統(tǒng)。隨著時間的推移,IC卡的應用范圍將會越來越廣泛。它給人們的工作和生活帶來很大的方便,相信在不遠的將來,IC卡會真正走進我們的工作和生活。第二章原理圖一.系統(tǒng)原理框圖的繪制1.Protel99軟件的概述〔1隨著電子技術的飛速發(fā)展,新型電子器件和集成電路的永遠日趨廣泛,電子電路也變得越來越復雜,這給電路的設計工作帶來了更大的難度。因此通過計算機進行電子電路的互助設計成為設計電路板的一個基本手段。Protel99包含眾多的服務器,總提上可以分為5種組件,分別為:原理圖設計組件、PCB設計組件、布線組件、可邊成邏輯器件組件和仿真組件。由于其性能優(yōu)越,Protel99已成為電路設計不可缺少的理想工具?!?下面簡單介紹電路原理圖的設計步驟??傮w來說,設計一個電路原理圖,首先要設置圖紙的大小和外形,對電路圖進行總體規(guī)劃,然后在圖紙上放置元件,〔其中,庫里面沒有我們所需的元件需要我們自己畫進行布局布線,接著對這個版面進行編輯和調整,最后保存或打印,具體的電路原理圖的設計流程如圖1所示:圖1設計PCB板首先要啟動Protel99-PCB編輯器。啟動該編輯器的操作步驟如下:新建或打開一個設計數據庫文件〔*.ddb。進入設計文件夾Documents。選擇File/New命令,打開對話框。雙擊該對話框中的即可創(chuàng)建一個新的元件庫文件,默認的文件名為PCB1。在工作窗口中該文件的圖標上單擊或在設計瀏覽器中該文件名上雙擊,即可進入PCB板編輯器。然后即可在PCB編輯板上畫出所需的電路原理圖,如下頁所示:二原理圖:第三章硬件部分介紹一AT89C51單片機簡介
AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器〔FPEROM—FalshProgrammableandErasableReadOnlyMemory的低電壓,高性能CMOS8位微處理器,俗稱單片機。AT89c51是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C51是它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。1.主要特性:
·與MCS-51兼容
·4K字節(jié)可編程閃爍存儲器
壽命:1000寫/擦循環(huán)
數據保留時間:10年
·全靜態(tài)工作:0Hz-24Hz
·三級程序存儲器鎖定
·128*8位內部RAM
·32可編程I/O線
·兩個16位定時器/計數器
·5個中斷源
·可編程串行通道
·低功耗的閑置和掉電模式
·片內振蕩器和時鐘電路2.管腳說明:
VCC:供電電壓。
GND:接地。
P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數據存儲器,它可以被定義為數據/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。
P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。
P2口:P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫"1"時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址"1"時,它利用內部上拉優(yōu)勢,當對外部八位地址數據存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。
P3口:P3口管腳是8個帶內部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入"1"后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,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〔外部數據存儲器寫選通
P3.7/RD〔外部數據存儲器讀選通
P3口同時為閃爍編程和編程校驗接收一些控制信號。
RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。
ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數據存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。
/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數據存儲器時,這兩次有效的/PSEN信號將不出現。
/EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器〔0000H-FFFFH,不管是否有內部程序存儲器。注意加密方式1時,/EA將內部鎖定為RESET;當/EA端保持高電平時,此間內部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源〔VPP。
XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。
XTAL2:來自反向振蕩器的輸出。3.振蕩器特性:
XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。4.芯片擦除:
整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms來完成。在芯片擦操作中,代碼陣列全被寫"1"且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。
此外,AT89C51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計數器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內容并且凍結振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。二RS232串行接口EIA-RS-232C是由美國電子工業(yè)協(xié)會EIA制訂的一種串行物理接口標準。RS-232C采用負邏輯,-5~-15V為邏輯1,+5~+15V為邏輯0。而TTL電平的"1"和"0"的特征電壓分別為2.4V和0.4V,用RS-232C總線進行串行通信需外接電路實現電平轉換。在發(fā)送端需用驅動電路將TTL電平轉換成RS-232C電平,在接收端用接收電路將RS-232C電路轉換為TTL電平。本設計是用的TI公司的RS-232C收發(fā)器MAX232,可用單一+5V電源供電實現電平轉換。RS-232C在設計中主要永遠用于PC機與IC卡讀/寫器之間的通信,框圖如下RS-232C芯片的引腳結構如圖5所示:圖5圖5中的C1、C2、C3、C4及V+、V—是電源變換電路部分。在實際應用中,器件對電源噪音很敏感。因此,VCC必須要對地加去耦電容,其值為0.1μF。電容C1、C2、C3及C4取同樣的數值的鉭電解電容,用以提高抗干擾能力,在連接時必須盡量靠近器件。MAX232的13、14管腳為串行異步通信發(fā)送及接受引腳。三SLE4442卡簡介
SLE4442卡內部有一個256
8bit
EEPROM,不可逆的4個寫保護字節(jié),具備密碼保護功能,可以隨時讀取主存儲器內容;在校驗成功后,可讀保護存儲器、讀寫安全存儲器和寫主存儲器。
SLE4442有一個密碼邏輯,用以控制對存儲器的讀寫。為此,SLE4442包含一個4字節(jié)加密存儲區(qū),該存儲區(qū)有一個錯誤計數器EC〔0-2位和三個字節(jié)的參考數據,這三個字節(jié)作為一個整體,稱為可編程密碼〔PSV。整個數據區(qū)除了參考數據,其它的數據都能被讀取,在校驗數據與內部參考數據比較正確后才能進行讀寫操作,連續(xù)三次比較錯誤后,錯位計數器將阻止任何比較嘗試,從而也消除了任何擦寫操作。四IC卡座IC卡座引腳如圖6所示,其中引腳SW1、SW2為微動開關在無IC卡狀態(tài)時,處與斷開狀態(tài);有卡插入時,IC卡卡座上的微動開關閉合。因此,此開關往往是用來判斷是否插IC卡的傳感器件。其引腳VCC:工作電壓;SCL〔CLK:串行時鐘;GND:接地;SDA〔I/O:串行數據〔輸入/輸出;SW1、SW2:微動開關本設計中與邏輯有關的引出端先只有2條:SCL和SDA。所有的地址、數據及讀/寫控制命令等信號均從SDA端輸入/輸出。為了區(qū)分線上的數據、地址、操作命令以及各種狀態(tài)的"開始"與"結束",卡片內設計就多個邏輯控制單元。其中,啟動與停止邏輯單元產生控制讀/寫操作的"開始"與"停止"標志信號。"開始"狀態(tài):當SCL處于高電平時,SDA從高電平轉向低電平,即產生"開始"標志信號。"停止"狀態(tài):當SCL處于高電平時,SDA從低電平轉向高電平,即產生一個"停止"標志信號,如圖6所示:圖6讀/寫的啟動與停止時序SDA和SCL通常各自通過一個電阻拉到高電平,當SCL為高電平時,對應的SDA上的數據有宵;而當SCL為低電平時,允許SDA上的數據變化。數據輸入/輸出應答邏輯單元產生數據輸入/輸出操作應答信號。操作時所有的地址和數據字均一8位碼串行輸入/輸出于卡片。卡片沒收到一個8位碼長的地址或數據后都以置SDA線為低電平方式"確認"應答信號,其波形如圖7所示圖7五外圍電路〔1狀態(tài)燈IC卡的上電一般是可知的,即對IC卡讀/寫時,須給IC卡上電〔送電源,因此,IC卡的上電控制比較簡單。由于IC卡讀/寫電流很小,一般為幾個A,因此其實現可按照圖8所示。由單片機89C51的P14信號通過小功率三極管9012控制系統(tǒng)的+5V電源切入IC卡座。當IC卡上電后,發(fā)光二極管L2被點亮,起讀/寫指示作用。每次對IC卡讀/寫完成后。即及時先電,以減少插拔時帶電的可能性,要保證IC卡能任意插拔〔有可能處于帶電狀態(tài),不致IC卡損壞,必須使IC卡拔電過程處于斷電的狀態(tài)。要做到這點,必須保證IC卡的下電迅速及時圖8〔2蜂鳴器一般所指的蜂鳴器是以壓電陶瓷為主要元件的。壓電陶瓷是一類有將壓力與電流相互轉換能力的特殊陶瓷。這種能力緣于其特殊的晶體結構。當壓電陶瓷在一定方向上受到一個壓力使其晶體結構發(fā)生形變時,它就會在內部產生一個電流,并且電流的變化與壓力的變化密切相關。反之亦然。所以利用這一特性,在壓電陶瓷上通過一定頻率的電流,就會引起壓電陶瓷微小形變,這一形變帶動空氣發(fā)生振動,如果頻率適當,就可以被人耳所聽見,也就是產生了蜂鳴聲。本設計當中蜂鳴起的做用是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.電源變壓器電源變壓器的作用是將來自電網的220V交流電壓u1變換為整流電路所需要的交流電壓u2。電源變壓器的效率為:其中:是變壓器副邊的功率,是變壓器原邊的功率。〔2.整流和濾波電路在穩(wěn)壓電源中一般用四個二極管組成橋式整流電路,整流電路的作用是將交流電壓u2變換成脈動的直流電壓u3。濾波電路一般由電容組成,其作用是把脈動直流電壓u3中的大部分紋波加以濾除,以得到較平滑的直流電壓UI。UI與交流電壓u2的有效值U2的關系為:在整流電路中,每只二極管所承受的最大反向電壓為:流過每只二極管的平均電流為:其中:R為整流濾波電路的負載電阻,它為電容C提供放電通路,放電時間常數RC應滿足:其中:T=20ms是50Hz交流電壓的周期。〔3穩(wěn)壓電路由于輸入電壓u1發(fā)生波動、負載和溫度發(fā)生變化時,濾波電路輸出的直流電壓UI會隨著變化。因此,為了維持輸出電壓UI穩(wěn)定不變,還需加一級穩(wěn)壓電路。穩(wěn)壓電路的作用是當外界因素〔電網電壓、負載、環(huán)境溫度發(fā)生變化時,能使輸出直流電壓不受影響,而維持穩(wěn)定的輸出。穩(wěn)壓電路一般采用集成穩(wěn)壓器和一些外圍元件所組成。采用集成穩(wěn)壓器設計的穩(wěn)壓電源具有性能穩(wěn)定、結構簡單等優(yōu)點。集成穩(wěn)壓器的類型很多,在小功率穩(wěn)壓電源中,普遍使用的是三端穩(wěn)壓器。按輸出電壓類型可分為固定式和可調式,此外又可分為正電壓輸出或負電壓輸出兩種類型。固定電壓輸出穩(wěn)壓器常見的有CW78〔LM78系列三端固定式正電壓輸出集成穩(wěn)壓器;CW79〔LM79系列三端固定式負電壓輸出集成穩(wěn)壓器。三端是指穩(wěn)壓電路只有輸入、輸出和接地三個接地端子。型號中最后兩位數字表示輸出電壓的穩(wěn)定值,有5V、6V、9V、15V、18V和24V。穩(wěn)壓器使用時,要求輸入電壓UI與輸出電壓UO的電壓差UI–UO≥2V。穩(wěn)壓器的靜態(tài)電流Io=8mA。當UO=5~18V時,UI的最大值UIMAX=35V;當UO=18~24V時,UI的最大值UIMAX=40V。第四章軟件部分一.工作過程軟件結構設計及其分析讀/寫器軟件結構讀/寫器的讀/寫操作由上位PC機進行控制,通過串行通信的命令字節(jié)來實現。集體規(guī)定我誒:如握手信號為0AAH,則讀卡;如握手信號為0BBH,則寫卡。讀/寫器的主程序框圖如圖11所示。其中,在讀/寫卡開始時,設置讀寫卡標志;在通信開始時,設置通信標志。避免數據不全或錯誤數據讀入或寫入。另外,所以的IC卡數據是先存放在IC卡的讀緩沖區(qū)和寫緩沖區(qū)的。"有卡插入否"是用過判斷P33引腳的高低電平來實現的。為了保證讀卡的可靠性,必須進行軟件"去抖"處理。一旦有卡插入,則設置讀/寫卡標志〔有卡;在通信時,設置正在通信標志。目的是我為了避免帶電插卡。本系統(tǒng)中關鍵的軟復位是通過在外中斷INT0服務函數中設置軟復位標志、在主函數中強制跳轉到函數首實現的。圖11主程序流程圖拔卡處理是通過設置成高優(yōu)先級的下降沿觸發(fā)的INT0中斷來實現的。其程序如圖12所示:圖12拔卡處理中斷子程序串行通信才用3線制軟握手方式〔2軟件系統(tǒng)分析為保證IC卡讀/寫過程準確可靠,除要保證讀/寫函數嚴格按照IC卡的讀/寫時序外,還須采用"重讀"和"復讀"措施。即讀IC卡是,采用讀2次的方式,如2次相符,則數據有效,否則再進行第3次讀,寫IC卡時,先將數據寫入,再回讀比較,否則重寫一次,以免偶然的寫失導致得出IC卡失效的錯誤結論。如何使上、下位機均不死機或能簡單恢復正常工作呢?對于作為下位機的IC卡讀/寫器,利用IC卡能隨意插拔,再結合IC卡的拔卡處理是一個高級中斷的特點,將IC卡的拔卡中斷程序設計成2個分支:〔1非IC卡讀/寫且非與上位機通信狀態(tài);〔2在與上位機通信或正在對IC卡讀/寫狀態(tài)。第1種情況下,中斷子程序是簡單的鞍鼻卡BEEP告警后,直接中斷返回;第2種情況,則會引起系統(tǒng)工作時常甚至死機,在恢復中斷環(huán)境后,用強制跳轉指令強制從主程序開始執(zhí)行,達到復位的效果。程序框圖如圖12所示。為確保串行通信的可靠性,應著重從上、下位機通信軟件的以下問題入手——合理選擇通信波特率。由于上、下位機通信的數據量很小〔最多為IC卡的容量,因此通信波特率可選低一些,如2400;但要高度重視下位機〔即IC卡讀/寫器的波特率參數整頂問題。對于51系統(tǒng)CPU,尤其要注意電源管理寄存器中SMOD位的設置。以2400波特率為例,當SMOD=0時,波特率參數為0F9H,實際波特率為2232,此時波特率相對誤差是7%;而當SMOD=1時,波特率參數為0F3H,實際波特率為2401,此時波特率相對誤差是0.16%,滿足正常通信所規(guī)定的波特率相對誤差小于5%的要求。二用C51實現的讀/寫主程序#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讀/寫驅動程序*/Sbita0=ACC-0;Sbita1=ACC-1;Sbita2=ACC-2;Sbita3=ACC-3;Sbita4=ACC-4;Sbita5=ACC-5;Sbita6=ACC-6;Sbita7=ACC-7;/*讀/寫數據緩沖區(qū),24C01最多為128B*Ucharbuf[16];Ucharflag;/*標志定義*/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é)函數,無應答信號*/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é)函數*/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é)函數,address為預讀單元地址*/Ucharread_buter<ucharaddress>{Ucharx;Start_ic<>;Wd24<0a0>;Wd24<address>;Start_ic<>;Wd24<0a1>;X=rd24<>;Stop_ic<>;Return<x>;}/*從指定地址開始順序讀塊地址數據,數據存入全局緩沖區(qū)中buf,n為數據字節(jié)數*/Ucharread_bytes<ucharaddress,ucharn>{Uchara,y;For<y=0;y<n;y++>{a=read_byter<address,y>;buf[y]=a;}}/**//*字節(jié)寫入模式寫函數,其中address為單元地址,dd為數據*/Voidwrite_byte<ucharaddress,uchardd>{Start_ic<>;Wd24<0a0>;Wd24<address>;Wd24<dd>;Stop_ic<>;}/*串行通信子程序*//*波特率2400,8位數據位,1位停止位,無校驗位*//*先用握手字節(jié)y,然后發(fā)送x個數據*//*待發(fā)送數據在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++>;}}/*主程序初始化函數*/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;}/*將數據緩沖區(qū)16B發(fā)往上位機*//*波特率2400,8位數據位,1位停止位,無校驗為2*//*待發(fā)送數據在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位數據位,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卡下電及讀/寫復位*/Voidint_0<void>interrupt0using1{While<!ICOUT>;Delay<10>;If<!ICOUT>{If<IC_WRONCOMM>{PWR=1;BELL=0;Delay<10>;BELL=1;RST==1;}}}/*延時函數,延時ms數由N決定,但不同的系統(tǒng)需要調整相應參數*/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的串行通信實現一般有3種方式:利用Windows9x的API接口函數。對于RAD開發(fā)系統(tǒng)〔如VB,可利用ActiveX串行通信控件。利用DLL動態(tài)鏈接庫,直接操作串行端口。上述3種方式各有特點。這里討論采用第3種方式實現的串行通信接口,具有應用靈活的特點。下面給出基于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引出輸出過程或函數}ExportCommInit;ExportSendByte;ExportReceiveByte;BeginEnd.第五章總結一.總結這次的畢業(yè)設計,我選擇的方向是單片機,在老師的耐心指導下,經過堅持不懈的努力,我熟悉了單片機,并重新學了兩門課程<<單片機>>和<<portel99>>,使我更清楚的認識了單片機。為我以后的從事單片機工作奠下了基礎,從這次的畢業(yè)設計的情況,雖然中間我復習課程對學習單片機有了點影響,.但是使我學到了在課堂上學不到的知識和能力,畢業(yè)設計使我清楚的認識到團結.協(xié)作的重要,能很好的跟別人交流和討論某個問題,.我想這是我的最大的收獲。通過這次畢業(yè)設計,使我受到了一次用專業(yè)知識、專業(yè)技能分析和解決問題系統(tǒng)的鍛煉,使我在綜合知識的選用方面,在設計硬件的基本思想、方法方面都向前邁了一大步,為日后成為合格的應用型人才打下了良好的基礎。這次在指導老師的幫助下,基本完成了任務,在硬件及軟件的設計方面有了一定的提高,為今后走上的工作崗位打下了專業(yè)基礎。在這次的畢業(yè)設計中,讓我深深地體會到硬件設計不是一件簡單的事情,它需要設計者具有全面的專業(yè)知識,縝密的思維,嚴謹的工作態(tài)度以及較高分析問題、解決問題的能力,而我在這些方面都存在很大的不足。在這,我要衷心感謝劉老師中給予我的極大幫助,使我能夠完成此次的畢業(yè)設計。同時,我也要感謝我的同學,為我們的良好協(xié)作,相互幫助,才得以把這次畢業(yè)設計工作完成。二.致謝大學三年眨眼而過。隨著這大學期間最后一份答卷的完成,我們短暫的大學生活也將劃上一個圓滿的句號?;叵肫饋?點點滴滴都是那樣的刻骨銘心。首先,我非常感謝我的指導老師劉藝柱在我們的設計上花費了不少的時間和精力。在劉老師悉心指導下,我們的設計進行的非常順利。在此,我衷心的感謝劉老師。其次,在本次設計中我查閱了大量的資料,鞏固了所學的專業(yè)知識,拓寬了知識面,特別是在本設計中應用的一些芯片,使我對芯片的結構、原理和應用有了更深的了解。在設計的制作和與同學的交流中使我認識到了自己缺陷和不足,我會在以后的工作生活中努力改進。最后,由于時間和能力有限,在設計中難免會有錯誤和不足,希望老師和同學給予批評和指正。此外,我還要感謝所有對我傳授過知識的老師,沒有你們的教誨,也沒有我今天的學業(yè)成果。謝謝你們!!三.參考文獻1
王卓人,鄧晉均,劉宗祥,《IC卡的技術與應用》,北京:電子工業(yè)出版社,19992
王愛英《智能卡技術》,北京:清華大學出版社,20003
何立民等《單片機高級教程》,北京:北京航空航天大學出版社,2000.84
陳志斌卓家靖基于單片機和CPLD的嵌入式脈沖發(fā)生器設計,北京,《微計算機信息》,2005。5沈紅偉《單片機應用系統(tǒng)設計實例與分析》,科學出版社,2005.6邵貝貝等譯《嵌入式實時操作系統(tǒng)μC/OSII〔第2版》,電子工業(yè)出版社,2003.17萬光毅嚴義《片機實驗與實踐教程》,科學出版社,2006.78周堅《單片機輕松入門》,XX電子科技大學出版社,2002.29李剛林凌姜葦《51系列單片機系統(tǒng)設計與應用技巧》,北京航空航天大學出版社,2003.110何立民《單片機應用技術選編<10>》,電子工業(yè)出版社,2003.111劉啟中李榮正王力生王威《PIC單片機原理及應用》,清華大學出版社,2005.2基于單片機的IC卡讀寫器設計TheDesignoftheICCardRead-WriteDeviceBasedonsinglechipmicrocomputer2012屆電氣工程系專業(yè)學號學生姓名指導教師陳東陽完成日期20XX5月15日畢業(yè)設計成績單學生姓名學號班級專業(yè)畢業(yè)設計題目基于單片機的IC卡讀寫器設計指導教師姓名指導教師職稱評定成績指導教師得分評閱人得分答辯小組組長得分成績:院長〔主任簽字:年月日畢業(yè)設計任務書題目基于單片機的IC卡讀寫器設計學生姓名學號班級專業(yè)自動化承擔指導任務單位XX鐵道大學導師姓名陳東陽導師職稱副教授主要內容設計一款讀寫器,能通過與計算機通信,由計算機發(fā)送新數據到單片機,完成對卡的讀/寫。IC卡應用于消費電子產品對IC卡的管理,如電卡,飯卡,購物卡,娛樂消費卡等其他消費費系統(tǒng)充值與管理。這里設計的讀寫器能實現簡單的讀寫與顯示功能。二、技術參數和要求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)指示;電路原理圖設計,protel印刷電路圖設計。提出系統(tǒng)設計框圖,提出相應的解決方案。論文正文不少于1.5萬字,查閱文獻資料不少于15篇,其中外文文獻2篇以上,翻譯與課題有關的外文資料不少于3000漢字。結構框圖◆整體分三部分單片機部分,讀寫卡模塊,232模塊部分。◆接口電路部分屬于IC卡槽和上位機相連的部分,也是IC卡能與單片進行通話的部分。◆數碼顯示部分是顯示IC卡存儲器內數值的部分?!魡纹瑱C與IC卡完成通信,對卡進行寫操作。并將數據通過232部分與計算機通信?!?32模塊部分,電平轉換,通過這部分完成計算機與單片機的通信?!艟幊烫崾荆河嬎銠C將要寫的數據先發(fā)送到單片機,單片機再完成對卡的讀寫操作三、應收集的資料及參考文獻1、參考及查閱資料◆RS232,數碼顯示◆I2C總線◆通信協(xié)議2、通訊協(xié)議上位機通過查詢命令,讀取寫入數據,協(xié)議如下:上位機〔計算機發(fā)送:AA55810081ED讀卡器返回數據串:AA5501NABC,,,,YED現在解釋一下這個協(xié)議的含義。先解釋AA55810081EDAA55是幀頭,81是命令碼,如果有很多命令的話,就靠這個數據區(qū)分。00是數據長度,因為沒有要下發(fā)的數據,所以是0,81代表的是校驗和,是除去幀頭外的前面所有數據的累加和,進位去掉。這里只有8100,所以校驗和還是81,ED是幀尾,表示數據串結束。再解釋AA5501NABC,,,,YEDAA55還是幀頭。01是針對于81命令的返回碼,就是將命令碼加上80后舍掉進位的數據。如果命令碼是91,它的返回碼就是11,以此類推。N表示這個數據串里面要傳遞的真正有意義的數據個數。即從N與Y之間有多少個字節(jié)。ABC,,,,就是要傳遞的字節(jié)數據。Y是校驗和,就是從01開始到數據結束,所有字節(jié)累加和。ED是幀尾。例如上位機發(fā)送讀卡命令如下:AA55830083ED解釋AA55幀頭,83讀卡命令碼,000個沒有數據,83是命令碼83和數據個數00的累加驗和,ED是結束碼單片機執(zhí)行命令后返回數據如下:有效卡:AA5503〔命令返回碼04〔有效數據個數MN〔錢包值NN〔一次消費值TT〔一次運行時間Y〔累加校驗和ED無效卡:AA5503〔83命令返回碼01〔有效數據個數55〔無效卡數據59〔030155累加校驗和ED上位機發(fā)送命令如下:AA558203MNNNTTYED〔82是充值命令,其他參照上面解釋單片機執(zhí)行后返回命令如下:寫卡成功:AA5502〔82返回命令碼01〔數據長度01〔成功數據04〔累加校驗和ED寫卡失?。篈A5502〔82返回命令碼01〔數據長度02〔失敗數據05〔累加校驗和ED其他命令如注冊有效卡等命令按這個規(guī)定自行編寫。上位機發(fā)送和接受命令,可以通過串口調試助手完成。STC單片機官網上的程序下載軟件都有這個功能,波特率用9600。串口方式選擇1個起始位,8個數據位,一個停止位。五、進度計劃第一周~第二周開題報告第三周~第四周資料收集,方案設計第五周~第七周系統(tǒng)設計第八周中期檢查第九周~第十二周系統(tǒng)調試和論文撰寫第十三~第十四周論文審核第十五周~第十六周答辯教研室主任簽字時間畢業(yè)設計開題報告題目基于單片機的IC卡讀寫器設計學生姓名學號班級專業(yè)自動化一、研究背景IC卡是集成電路卡<IntegratedCircuitCard>的簡稱,有些國家和地區(qū)稱之為微芯片卡<MicrochipCard>或微電路卡<MicrocircuitCard>。IC卡的大小和磁卡相同,它把集成電路鑲在塑料卡片上,芯片一般是數據不易丟失的存儲器<ROM,EPROM.EPROM>,保護邏輯電路,或者CPU。IC卡最初是為了解決金融交易中的安全性問題而設計的,它帶來全新的交易概念與巨大的優(yōu)勢。按照IC卡與讀寫器的數據交換方式,IC卡可分為接觸型IC卡和非接觸型IC卡。所謂接觸型IC卡就是在使用時通過有形的金屬電極觸點將卡的集成電路與外部接口電路直接接觸連接,提供集成電路工作的電源并進行數據交換的IC卡。其特點是在卡的表面有符合IS07816標準的多個金屬觸點。IC卡的出現已經有了40年左右的時間,人們根據系統(tǒng)的需要,設計了各種各樣的IC卡讀寫器,IC卡讀寫器是IC卡與應用系統(tǒng)間的橋梁,在ISO國標標準中稱之為接口設備IFD〔InterfaceDevice.IFD內的cpu通過一個接口電路與ic卡相連并進行通信。IC卡最早是在70年代初提出來的,由法國布爾公司于1976年首先創(chuàng)造出來,并將這項技術應用到金融、交通、醫(yī)療、身份證、餐飲等多個行業(yè)。將IC卡作為一種先進的信息存儲介質,和其他設備組成系統(tǒng)就能提供非常豐富的服務功能,把這些功能與生產或流通領域有機地結合起來,將出現令人意想不到的奇跡,創(chuàng)造出巨大的經濟和社會效益。與其相關的配套產品IC卡讀寫裝置,它為一些生產廠家所帶來的利益也是非常巨大的。IC卡越來越廣泛的應用,一定會帶動讀寫裝置的廣泛應用。隨著信息技術的不斷發(fā)展,IC卡芯片的制作成本將不斷降低,IC卡也會以其獨有的安全性和使用靈活性最終取代磁條卡。IC卡發(fā)展的如此迅疾自然也會導致其讀寫器的性能越來越好,功能也越來越強。IC卡讀寫器現在在銀行、消費辦公場所到處可見。今天我們用的校園一卡通,在卡務中心就是通過IC卡讀寫器將IC卡與電腦相連來進行充值的,所以本設計將對IC卡讀寫器裝置展開研究。二、國內外研究概況IC〔IntegratedCircuit卡是1970年由法國人RolandMoreno發(fā)明的,他第一次將可編程設置的IC芯片放于卡片中,使卡片具有更多功能。法國布爾<BULL>公司于1976年首先創(chuàng)造出IC卡產品,并將這項技術應用到金融、交通、醫(yī)療、身份證明等多個行業(yè),它將微電子技術和計算機技術結合在一起,提高了人們生活和工作的現代化程度。第一代IC卡的最初設想是由日本人提出來的。1969年12月,日本的有村國孝〔KunitakaArimura提出一種制造安全可靠的信用卡方法,并于1970年獲得專利,那時叫ID卡〔IdentificationCard。第二代IC卡在1974年,法國的羅蘭·莫雷諾〔RolandMoreno發(fā)明了帶集成電路芯片的塑料卡片,并取得了專利權,這就是早期的IC卡。第三代IC卡是1976年法國布爾〔Bull公司研制出世界第一枚IC卡。第四代,1984年,法國的PTT〔Posts,TelegraphsandTelephones將IC卡用于電話卡,由于IC卡良好的安全性和可靠性,獲得了意想不到的成功。隨后,國際標準化組織〔ISO,InternationalStandardizationOrganization與國際電工委員會〔IEC,InternationalElectrotechnicalCommission的聯(lián)合技術委員會為之制訂了一系列的國際標準、規(guī)范,極大地推動了IC卡的研究和發(fā)展。在我國的一些領域,如電信、交通、醫(yī)療等部門,使用IC卡也已經很普遍,很多單位也已經使用IC卡來進行人員和財務管理。IC卡隨著半導體技術、大規(guī)模集成電路芯片的發(fā)展而產生,也必將隨著計算機技術、網絡技術等的高速發(fā)展而迅速發(fā)展壯大。而與其相伴而生的IC卡寫卡器的科學技術和制造工藝也再不斷進步。從最簡單的接觸式讀寫器到非接觸式讀寫器再到現在市場上的通用型IC卡讀寫器、專用型IC卡讀寫器。IC卡讀寫器正是伴著IC卡的騰飛而輝煌,IC卡的創(chuàng)新沒有止步,IC卡讀寫器也同樣在引進新技術如:網絡遠程控制技術、生物識別技術。讀寫器是IC卡應用系統(tǒng)的終端設備,只有通過讀寫設備才能和IC卡建立聯(lián)系,本次設計我要通過對SLE4442卡的應用,實現一個簡單的接觸式IC卡寫卡器,可以通過對IC卡寫入數據來實現簡單的金額存儲,運用于飯卡、購物卡,娛樂消費卡等簡單的交易卡上。三、研究內容和預期結果3.1研究內容包括:〔1串口部分如何將上位機和單片聯(lián)系起來?〔2對于89C52單片如何利用才會更合理?〔3顯示部分是采用液晶顯示還是數碼管顯示,該用共陰極還是共陽極?〔4IC卡協(xié)議怎么寫?〔5是否需要鍵盤?〔6如何實現讀寫卡時報警提示?〔7電路原理圖設計,protel印刷電路圖設計。3.2預期達到的結果:〔1整體分三部分單片機部分,寫卡模塊,232模塊部分。另外還附帶了一個顯示模塊?!?單片機與IC卡完成通信,對卡進行讀寫操作,實現信息存儲,能顯示0到99間的任一數值?!?232模塊部分,電平轉換,通過這部分完成計算機與單片機的通信?!?計算機將要寫的數據先發(fā)送到單片機,單片機再完成對卡的讀寫操作。〔5插拔卡時有報警提示,讀寫操作時也有報警提示。〔6上電時數碼管能顯示IC卡的存儲信息。指導教師簽字時間20XX2月25日摘要IC卡讀寫器現在在銀行、消費辦公場所到處可見。今天我們用的校園一卡通,在卡務中心就是通過IC卡讀寫器將IC卡與電腦相連來進行充值的,本設計將對IC卡寫卡器裝置展開研究。本設計以西門子公司的SLE4442型邏輯加密卡為基礎,從SLE4442卡的功能和結構入手,介紹了SLE4442卡數據存儲的控制方法和工作原理,通過Protel99繪制硬件電路圖,KeiluVision4軟件編寫軟件程序還有串口助手STC_ISP_V486的不斷調試,詳細分析了單片機控制IC卡數據讀寫的軟硬件實現。本設計的最終完成,實現了上位機對SLE4442卡的數據讀寫操作。本文設計了一個接觸式IC卡讀寫器。該讀寫器主要是為了實現上位機對SLE4442卡進行讀寫操作,可以實現讀卡、寫卡、加錢、減錢等操作,同時具有相關的報警和顯示功能。所設計的讀寫器以STC89C52為核心,配以IC卡接口電路、串行通信電路、上電檢測電路、數碼管顯示電路等部分。通過讀寫器插槽與IC卡芯片通信,由STC89C52單片機控制數據傳輸過程,實現對IC卡的讀、寫、加錢、減錢等操作。關鍵詞: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)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年設備供應協(xié)議法律文本范例版
- 2024年網絡安全設備及服務租賃合同
- 2024年鋼材交易合同范本3篇
- 2024年零售行業(yè)數據挖掘與分析服務契約3篇
- 2024年項目復工補充協(xié)議3篇
- 2025年度特殊造型門窗定制與安裝合同范本3篇
- 通信工程割接監(jiān)理細則
- 五金供應商評價語
- 2024液化天然氣國內公路物流服務協(xié)議版B版
- 2025年度財務總監(jiān)崗位聘用合同樣本3篇
- 大型集團公司內部控制固定資產折舊制度
- 工地食堂經營方案及計劃書
- 正畸計劃書模板
- 空中交通管制基礎
- 電梯銷售入門知識培訓課件
- 安徽省馬鞍山市2023-2024學年高一上學期期末考試物理試題(含答案解析)
- 胃鏡室護士崗前培訓
- JBT 14857-2023 氧化鋁焙燒煙氣脫硝裝置 (正式版)
- 閩教版2023版3-6年級全8冊英語單詞表
- 醫(yī)院耗材述職報告
- 膽管結石的健康宣教課件
評論
0/150
提交評論