基于-單片機(jī)IC卡讀卡器設(shè)計(jì)_第1頁
基于-單片機(jī)IC卡讀卡器設(shè)計(jì)_第2頁
基于-單片機(jī)IC卡讀卡器設(shè)計(jì)_第3頁
基于-單片機(jī)IC卡讀卡器設(shè)計(jì)_第4頁
基于-單片機(jī)IC卡讀卡器設(shè)計(jì)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、-. z基于單片機(jī)的IC卡讀卡器設(shè)計(jì)第1章 緒論本章介紹了IC卡的開展歷史和應(yīng)用情況,說明了現(xiàn)代IC卡技術(shù)的根底知識(shí),最后分析了目前常見的IC卡讀寫器終端,并提出了本課題中IC卡讀寫器的設(shè)計(jì)目標(biāo)。1.1 IC卡的開展和使用應(yīng)用情況卡片是作為個(gè)人身份識(shí)別的手段而引進(jìn)的,而作為交易憑證的卡片則早在19世紀(jì)80年代就萌芽于英國了,1950年,美國商人設(shè)計(jì)了第一現(xiàn)代的塑料信用卡,1951年美國富蘭克林銀行作為金融機(jī)構(gòu)率先發(fā)行了信用卡,到60年代中期,人們?cè)谒芰辖鹑诮灰卓ǖ姆疵尜N上磁條,開展成為能夠自動(dòng)讀取信息進(jìn)展在線處理的磁卡,磁卡因?yàn)闃?gòu)造簡(jiǎn)單,價(jià)格低廉,得到迅速推廣。 IC卡是近年從歐洲開場(chǎng)出現(xiàn)的,

2、IC卡具有突出的3S特點(diǎn),即Standard(國際標(biāo)準(zhǔn)化)、Smart(靈巧智能化)、和Security(平安性)。因而開展迅速,在金融、通訊、交通等眾多領(lǐng)域中后來居上,即使那些磁卡已經(jīng)普及應(yīng)用的圍也將被取而代之。IC卡不僅改變了現(xiàn)有多種卡的使用方法和功能作用,還不斷開創(chuàng)出新的應(yīng)用領(lǐng)域。將IC卡和其他設(shè)備組成系統(tǒng)就能提供非常豐富的效勞功能,把這些功能與生產(chǎn)或流通領(lǐng)域有機(jī)地結(jié)合起來,將出現(xiàn)令人意想不到的奇跡,創(chuàng)造出巨大的經(jīng)濟(jì)和社會(huì)效益。隨著信息技術(shù)的開展,IC卡作為一種先進(jìn)的信息存儲(chǔ)介質(zhì),它的應(yīng)用己經(jīng)滲透到各國的經(jīng)濟(jì)、社會(huì)生活、軍事等各個(gè)方面,將來更有著廣闊的開展空間。1.2 IC卡應(yīng)用技術(shù)IC

3、卡比磁卡存儲(chǔ)容量大,可靠性和平安性高,在應(yīng)用上除了覆蓋磁卡的全部應(yīng)用圍以外,還提供了許多磁卡所不具備的應(yīng)用特性。正是這些特性,使IC卡在脫機(jī)業(yè)務(wù)處理和聯(lián)網(wǎng)數(shù)據(jù)一致性等方面表現(xiàn)出前所未有的優(yōu)勢(shì)。IC 卡雖然有很強(qiáng)的功能,但僅當(dāng)IC卡參加到應(yīng)用系統(tǒng)中,構(gòu)成發(fā)行商、應(yīng)用系統(tǒng)和持卡人之間的數(shù)據(jù)傳輸媒介時(shí),才能有效地發(fā)揮其優(yōu)勢(shì)。一個(gè)好的IC卡應(yīng)用系統(tǒng),應(yīng)具備良好的應(yīng)用特性和性能價(jià)格比,還要有好的平安特性。IC卡最初是為了解決金融交易中的平安性問題而設(shè)計(jì)的,它帶來全新的交易概念與巨大的優(yōu)勢(shì)。IC卡在應(yīng)用中的技術(shù)優(yōu)勢(shì)在于良好的機(jī)器讀寫能力、共同認(rèn)可的平安防技術(shù)和相對(duì)較大的數(shù)據(jù)存儲(chǔ)能力。1良好的機(jī)器讀寫性能便

4、于人機(jī)卡之間的會(huì)話IC卡是一種電路卡,它在機(jī)器讀寫性能上遠(yuǎn)優(yōu)于磁卡和光卡,無需往復(fù)的機(jī)械動(dòng)作即可完成人機(jī)卡之間的屢次會(huì)話過程,使卡在應(yīng)用時(shí)更容易進(jìn)展操作與相互驗(yàn)證,給卡的應(yīng)用開發(fā)者和使用者都帶來了極大的便利。2 良好的平安防技術(shù)是卡能夠脫離網(wǎng)絡(luò)使用IC卡采用了為國際上各種開發(fā)者與使用者所共同認(rèn)可的半導(dǎo)體密碼存放于軟件加密技術(shù),它可以有效地阻止卡的非法復(fù)制與數(shù)據(jù)的篡改。應(yīng)用設(shè)備可以在脫離網(wǎng)絡(luò)的情況下,不需要人工干預(yù),即可對(duì)IC卡進(jìn)展鑒別,以確定該卡是否是本系統(tǒng)所許可的,是否可在該應(yīng)用場(chǎng)合中使用等。通過持卡人輸入PIN,與卡一組密碼比擬,可以確認(rèn)持卡人的身份。這些特點(diǎn)使IC卡能成為傳導(dǎo)媒體,再加上

5、認(rèn)證和數(shù)據(jù)加密等功能,使卡能夠脫離網(wǎng)絡(luò)使用。3 大容量的數(shù)據(jù)存儲(chǔ)能力使IC卡成為數(shù)據(jù)媒體在一個(gè)應(yīng)用系統(tǒng)使用中,系統(tǒng)必須對(duì)所有持卡人建立一份身份與使用的檔案。在磁卡系統(tǒng)中,這組檔案存放在中心數(shù)據(jù)庫系統(tǒng),持卡人每次使用都需通過終端,以網(wǎng)絡(luò)形式從數(shù)據(jù)庫系統(tǒng)中提出那份與自己相關(guān)的檔案?,F(xiàn)在IC卡的存儲(chǔ)能力增加了,這份相關(guān)信息可以存放在IC卡中,終端設(shè)備交易的實(shí)時(shí)性明顯改善,使用的靈活性也大大增加。IC卡三大特點(diǎn)的結(jié)合,構(gòu)成了IC卡應(yīng)用的強(qiáng)大優(yōu)勢(shì),它一方面降低了對(duì)網(wǎng)絡(luò)的依賴程度,提高了相應(yīng)速度;另一方面對(duì)發(fā)行商、應(yīng)用商和持卡者三方面的利益提供了有效的保護(hù)手段,為IC卡的廣泛應(yīng)用鋪平了道路。IC卡應(yīng)用圍相

6、當(dāng)廣泛,這里僅根據(jù)現(xiàn)有的應(yīng)用提供局部應(yīng)用領(lǐng)域。應(yīng)用于金融領(lǐng)域,可以作為信用卡、現(xiàn)金卡、證券卡或電子資金轉(zhuǎn)賬卡等??梢宰鳛槊骺ㄊ褂?,如、駕駛執(zhí)照、會(huì)員卡等。在醫(yī)療、保健等領(lǐng)域,IC卡可以用于安康卡、少兒疫苗卡、就診卡等。在商業(yè)及效勞領(lǐng)域,可以用IC卡作為優(yōu)惠卡、結(jié)算卡、效勞卡等。在交通領(lǐng)域,可以用IC卡取代公交或地鐵月票,可以改變?cè)袑?duì)月票的當(dāng)月有效限制為有效次數(shù)限制。還可用于公路付費(fèi)和停車付費(fèi)等場(chǎng)合。IC卡卡,這是至目前為止IC卡用量最大的一種應(yīng)用.用IC卡公用替代磁卡與投幣即可杜絕欺詐行為,又可省去攜帶零錢所帶來的麻煩。IC卡在門禁系統(tǒng)、設(shè)備使用等情形中,以鑰匙卡的形式出現(xiàn),使鎖有了新的一個(gè)

7、層次定義。IC卡還可集各種效勞功能于一身,如企業(yè)的員工卡、校園一卡通等即屬此類,持卡人可以用卡進(jìn)展考勤、開門、就餐、借閱圖書等。1.3 課題的建立以及本文完成的主要工作本文主要包括以下容:1總體方案的構(gòu)思2. 畫出各模塊電路圖3. 元器件的選取與購置4. 正確焊接接硬件電路5軟件設(shè)計(jì)中完成寫主存儲(chǔ)器、寫保護(hù)存儲(chǔ)器、寫密碼和校驗(yàn)密碼操作6. 完成SLE4442 復(fù)位應(yīng)答調(diào)試第2章 方案論證方案一選用飛思卡爾單片機(jī)MC9S12D64做為主控芯片,該芯片是一款性能優(yōu)良的單片機(jī), 包含一個(gè)16 位中央處理單元、64 KB Flash、4 KB RAM、1 KBEPROM、一個(gè)IC接口、一個(gè)同步串行接口

8、和兩個(gè)異步串行通信接口等豐富資源, 能夠滿足系統(tǒng)設(shè)計(jì)的需求。具體方案如圖2-1所示。圖2-1 MC9S12D64的總體設(shè)計(jì)方案方案二選用STC89C55RD+做為主控芯片,STC89C55是一種帶16K字節(jié)閃爍可編程可檫除只讀存儲(chǔ)器FPEROM-Flash Programable and Erasable Read Only Memory 的低電壓,高性能OS8的微處理器,俗稱單片機(jī)。該器件采用ATMEL搞密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容,具體方案如圖2-2所示。圖2-2 STC89C55的總體設(shè)計(jì)方案因?yàn)檫@個(gè)設(shè)計(jì)需要用到的單片機(jī)引腳不多,對(duì)單片機(jī)配

9、置也要求不高;飛思卡爾單片機(jī)MC9S12D64功能太強(qiáng)大價(jià)格也比擬昂貴,綜合考慮選擇比擬熟悉的STC89C系列單片機(jī)是比擬合理的。硬件設(shè)計(jì)所設(shè)計(jì)的讀寫器以STC89C55RD+單片機(jī)為核心,配以IC卡接口電路、串行通信電路、存儲(chǔ)電路、鍵盤輸入電路和液晶顯示電路等局部。通過讀寫器插槽與IC卡芯片通信,由STC89C55RD+單片機(jī)控制數(shù)據(jù)傳輸過程,實(shí)現(xiàn)讀卡和寫卡操作。系統(tǒng)的總體電路圖如圖3-1所示。圖3-1系統(tǒng)總體電路圖系統(tǒng)總體設(shè)計(jì)框圖如圖3-2所示。 圖3-2系統(tǒng)總體框圖3.1 IC卡芯片選擇IC卡集成電路卡(IntegratedC ircuit Card)的簡(jiǎn)稱,有些國家和地區(qū)稱之為微芯片卡

10、(Microchip card)或微電路卡(Microcircuit Card)。IC卡的大小和磁卡一樣,它把集成電路鑲在塑料卡片上,芯片一般是不易揮發(fā)性存儲(chǔ)器(ROM, EPROM. EPROM),保護(hù)邏輯電路,甚至于CPU。本節(jié)介紹IC卡的一些根本知識(shí),使讀者對(duì)IC卡有一個(gè)大概的了解。由于本設(shè)計(jì)所采用的IC卡為接觸型邏輯加密卡SLE4442,所以本節(jié)的容重點(diǎn)介紹此卡。SLE4442是由德國西門子公司設(shè)計(jì)的邏輯加密存儲(chǔ)卡。它具有2K位的存儲(chǔ)容量和完全獨(dú)立的可編程加密代碼存儲(chǔ)器。部電壓提升電路保證了芯片能夠以單5V電壓供電,較大的存儲(chǔ)器容量能夠滿足應(yīng)用領(lǐng)域的各種要求。是目前國應(yīng)用較多的一種IC

11、卡芯片。 芯片特點(diǎn)面向字節(jié)尋址;采用多存儲(chǔ)器構(gòu)造:主存儲(chǔ)器、保護(hù)型存儲(chǔ)器、加密存儲(chǔ)器;線連接協(xié)議,觸點(diǎn)和串行接口滿足ISO7816同步傳送協(xié)議;芯片采用NMOS工藝技術(shù),每字節(jié)的擦除/寫入編程時(shí)間為2.5ms;復(fù)位響應(yīng)ATR符合ISO/IEC7816-3協(xié)議;存儲(chǔ)器采用至少10 000次的擦除/寫入周期,數(shù)據(jù)保持時(shí)間至少為10年;額外特性:數(shù)據(jù)僅能在正確輸入24位可編程平安碼平安存儲(chǔ)器之后才能改變。 芯片的引腳配置芯片的引腳與國際標(biāo)準(zhǔn)兼容,引腳的定義和功能說明如表3-1所示。表3-1 SLE4442引腳功能引腳卡觸點(diǎn)符號(hào)功能12345678C1C2C3C4C5C6C7C8VCCRSTCLKNC

12、GNDNCI/ONC操作電壓5V復(fù)位時(shí)鐘未用地未用雙向數(shù)據(jù)線漏極開路未用 芯片功能SLE4442IC卡芯片主要包括三個(gè)存儲(chǔ)器:2568位EEPROM型主存儲(chǔ)器、321位PROM型保護(hù)存儲(chǔ)器和48位EEPROM型加密存儲(chǔ)器。主存儲(chǔ)器主存儲(chǔ)器為可重復(fù)擦除使用的EEPROM型存儲(chǔ)器。按字節(jié)尋址,擦除寫入。在擦除時(shí),一個(gè)數(shù)據(jù)字節(jié)的所有8位被全部置1。在寫入時(shí),在EEPROM單元中的信息則根據(jù)輸入的數(shù)據(jù),按字位方式變換成邏輯0(即在EEPROM中,新寫入的數(shù)據(jù)與原來存在的數(shù)據(jù)進(jìn)展邏輯與)。通常,要改變一個(gè)數(shù)據(jù)需要先進(jìn)展擦除再進(jìn)展寫入兩項(xiàng)操作。如果在被尋址的字節(jié)中8位沒有一個(gè)字位需要從0變?yōu)?,則可以不進(jìn)

13、展擦除處理。反之亦然,在被尋址的字節(jié)中,如果沒有一個(gè)字節(jié)需要從1變?yōu)?,則可以不做寫入處理,寫入或擦除操作一次至少消耗2.5ms時(shí)間。主存儲(chǔ)器的地址是從00H到FFH。但主存儲(chǔ)器可分為兩個(gè)數(shù)據(jù)區(qū):保護(hù)數(shù)據(jù)區(qū)和應(yīng)用數(shù)據(jù)區(qū),保護(hù)數(shù)據(jù)區(qū)是主存儲(chǔ)器前32個(gè)字節(jié)數(shù)據(jù)區(qū)。其地址是從0(00H)到31(1FH)這局部的數(shù)據(jù)讀出不受限制,但擦除和寫入操作均受到保護(hù)存儲(chǔ)器部數(shù)據(jù)狀態(tài)的限制。當(dāng)保護(hù)存儲(chǔ)器中第N位為0時(shí),則對(duì)應(yīng)主存儲(chǔ)器中第N個(gè)字節(jié)就不允許進(jìn)展擦除和寫入操作。故保護(hù)數(shù)據(jù)區(qū)一般均作為IC卡的標(biāo)識(shí)數(shù)據(jù)區(qū),存放一些固定不變的標(biāo)識(shí)參數(shù)。應(yīng)用數(shù)據(jù)區(qū)為主存儲(chǔ)器后224個(gè)字節(jié)。其地址從32(20H)到255(FFH

14、)。這局部的數(shù)據(jù)讀出不受限制,但擦除和寫入受控于加密存儲(chǔ)器數(shù)據(jù)校驗(yàn)比擬結(jié)果的影響。當(dāng)需要修改應(yīng)用數(shù)據(jù)區(qū)的容時(shí),必須首先輸入一個(gè)3字節(jié)長(zhǎng)的校驗(yàn)字。這個(gè)新輸入的校驗(yàn)字與原來存在在加密存儲(chǔ)器中的參照字進(jìn)展一對(duì)一的比擬。只有當(dāng)兩者完全一致時(shí),芯片的加密控制邏輯才翻開芯片的主存儲(chǔ)器,允許后面的擦除和寫入操作。芯片允許在有限的次數(shù)重試比擬操作。如果在連續(xù)三次比擬失敗之后,芯片的錯(cuò)誤計(jì)數(shù)器計(jì)數(shù)到0,并將鎖死主存儲(chǔ)器,制止隨后的任何比擬操作和寫入擦除操作。這時(shí)整個(gè)主存儲(chǔ)器變成一個(gè)只讀存儲(chǔ)器。芯片中各存儲(chǔ)器的容不能再改變。保護(hù)存儲(chǔ)器保護(hù)存儲(chǔ)器是一個(gè)321位的一次性可編程只讀存儲(chǔ)器PROM。它是按字位方式尋址和寫

15、入。保護(hù)存儲(chǔ)器從032的每一位對(duì)應(yīng)著主存儲(chǔ)器地址從0到31的字節(jié)。因此可以理解為每個(gè)字節(jié)單元的控制熔絲。從出廠到被初始化之前,保護(hù)存儲(chǔ)器的狀態(tài)為全1。從控制方面來說,保護(hù)存儲(chǔ)器的容只能從1寫成0而不能從0擦除成1。保護(hù)存儲(chǔ)器每個(gè)被寫0的單元所對(duì)應(yīng)控制的主存儲(chǔ)器的字節(jié)單元將不再接收任何擦除和寫入命令,從而使得該字節(jié)單元的數(shù)據(jù)不可再改變。從使用方面來講,如果需要防止一些固定的標(biāo)識(shí)參數(shù)被改動(dòng),可以將這類參數(shù)先寫入主存儲(chǔ)器的保護(hù)存儲(chǔ)區(qū),然后將對(duì)應(yīng)單元的保護(hù)存儲(chǔ)器的字位寫位0,從而使這一局部單元中的參數(shù)容永遠(yuǎn)不可更改。保護(hù)存儲(chǔ)器本身的讀出操作不受限制。但對(duì)其寫入操作仍然受到加密存儲(chǔ)器比擬校驗(yàn)操作結(jié)果的控

16、制。當(dāng)輸入的校驗(yàn)字與芯片的參照字一致,則可以執(zhí)行后續(xù)的寫入操作。如果比擬不成功,則控制邏輯將閉鎖保護(hù)存儲(chǔ)器。加密存儲(chǔ)器加密存儲(chǔ)器是一個(gè)48位的EEPROM型存儲(chǔ)器。在這個(gè)存儲(chǔ)器中,第0字節(jié)為密碼輸入錯(cuò)誤計(jì)數(shù)器(EC)。密碼輸入錯(cuò)誤計(jì)數(shù)器的有效位是低3位。在芯片初始化時(shí),計(jì)數(shù)器設(shè)置成111。這一字節(jié)是可讀的。每次比擬密碼時(shí),先判斷計(jì)數(shù)器中是否還有1。如果還有1,則將其中一個(gè)1寫成0,然后進(jìn)展比擬校驗(yàn)字操作。如果比擬結(jié)果一致,密碼錯(cuò)誤計(jì)數(shù)器將允許進(jìn)展擦除操作(芯片不能自動(dòng)進(jìn)展擦除操作),同時(shí)翻開主存儲(chǔ)器、保護(hù)存儲(chǔ)器和加密存儲(chǔ)器,并允許進(jìn)展擦除和寫入操作。如果比擬結(jié)果不一致,則密碼錯(cuò)誤計(jì)數(shù)器中為1的

17、個(gè)數(shù)將減少一位。只要計(jì)數(shù)器的容不全為0,則芯片的比擬校驗(yàn)字操作還允許進(jìn)展。當(dāng)密碼計(jì)數(shù)器減數(shù)為零,則芯片的存儲(chǔ)單元將全部鎖死。加密存儲(chǔ)器的第1,2,3字節(jié)為參照字存儲(chǔ)區(qū)。這3個(gè)字節(jié)的容作為一個(gè)整體披稱為可編程加密代碼(PSC)。值得注意的是:這3個(gè)字節(jié)的容在PSC比擬成功前是不可讀的,只能進(jìn)展比擬操作。而寫入、擦除操作也受自身比擬操作結(jié)果的控制。只有當(dāng)比擬成功,加密存儲(chǔ)器各字節(jié)容才可以進(jìn)展讀出、寫入和擦除。 SLE4442芯片傳送協(xié)議傳送協(xié)議是在接口設(shè)備IFD與IC卡的集成電路之間的兩線連接協(xié)議,SLE4442芯片的協(xié)議類型為S=10(同步卡協(xié)議)。I/O線上數(shù)據(jù)變化只在CLK信號(hào)的下降沿才有效

18、。傳送協(xié)議包括4種模式:復(fù)位和復(fù)位響應(yīng)命令模式輸出數(shù)據(jù)模式處理模式復(fù)位和復(fù)位響應(yīng)復(fù)位響應(yīng)是根據(jù)ISO 7816-3標(biāo)準(zhǔn)來進(jìn)展的。在操作期間的任何時(shí)候都可以復(fù)位,只有經(jīng)過了復(fù)位才能對(duì)IC卡進(jìn)展其他操作。開場(chǎng)時(shí)地址計(jì)數(shù)器隨一個(gè)時(shí)鐘脈沖而被設(shè)置成0。當(dāng)RST線從H狀態(tài)置到L狀態(tài)時(shí),第一個(gè)數(shù)據(jù)位的容被送到I/O線上。假設(shè)連續(xù)輸入32個(gè)時(shí)鐘脈沖,主存儲(chǔ)器中的前4個(gè)字節(jié)地址單元中的容被讀出。在第33個(gè)時(shí)鐘脈沖的下降沿,I/O線被置成H狀態(tài)而關(guān)閉。芯片復(fù)位即復(fù)位響應(yīng)的時(shí)序關(guān)系如圖3-3所示。在復(fù)位響應(yīng)期間,啟動(dòng)和停頓(見下面)狀態(tài)被忽略。圖3-3芯片復(fù)位即復(fù)位響應(yīng)的時(shí)序關(guān)系命令模式 復(fù)位響應(yīng)之后,芯片等待著

19、命令。每條命令都以一個(gè)啟動(dòng)狀態(tài)開場(chǎng)。整個(gè)命令包括三個(gè)字節(jié)(命令含義后面解釋)。隨后緊跟著一個(gè)附加脈沖并用一個(gè)停頓狀態(tài)來完畢操作。命令模式時(shí)序關(guān)系如圖3-4所示。啟動(dòng)狀態(tài):在CLK為H狀態(tài)期間,I/O線的下降沿為啟動(dòng)狀態(tài)。停頓狀態(tài):在CLK為H狀態(tài)期間,I/O線的上升沿為停頓狀態(tài)。在承受一個(gè)命令之后,有兩種可能的模式:輸出數(shù)據(jù)模式(即讀數(shù)據(jù)模式)和處理數(shù)據(jù)模式。圖3-4命令模式時(shí)序關(guān)系輸出數(shù)據(jù)模式這種模式是將IC卡芯片中的數(shù)據(jù)傳送給外部接口設(shè)備的一種操作。輸出數(shù)據(jù)模式的時(shí)序關(guān)系如圖3-5所示。在第一個(gè)CLK脈沖的下降沿之后,I/O線上的第一位數(shù)據(jù)變?yōu)橛行?。隨后每增加一個(gè)時(shí)鐘脈沖,芯片部的一位數(shù)據(jù)

20、被送到I/O線上。其輸出的順序是從每個(gè)字節(jié)的最低位開場(chǎng)。當(dāng)所需要的最后一個(gè)數(shù)據(jù)送出以后,需要再附加一個(gè)時(shí)鐘脈沖來把I/O線置成H狀態(tài),以便準(zhǔn)備承受新的命令。在輸出數(shù)據(jù)期間,任何啟動(dòng)狀態(tài)和停頓狀態(tài)均被屏蔽掉。圖3-5輸出數(shù)據(jù)模式的時(shí)序關(guān)系處理數(shù)據(jù)模式這種模式是對(duì)IC卡芯片做部處理。處理數(shù)據(jù)模式的時(shí)序關(guān)系如圖3-6所示。在第一個(gè)時(shí)鐘脈沖的下降沿將I/O從H狀態(tài)拉為L(zhǎng)狀態(tài)并開場(chǎng)處理。此后芯片在部連續(xù)計(jì)時(shí)計(jì)數(shù),直到第N個(gè)時(shí)鐘脈沖之后的附加時(shí)鐘脈沖的下降沿I/O線被再次置高,完成芯片的處理過程。在整個(gè)處理過程中I/O線被鎖定成低狀態(tài)。圖3-6處理數(shù)據(jù)模式的時(shí)序關(guān)系 芯片的操作命令命令的格式每條命令包含三

21、個(gè)字節(jié),其順序如表3-2所示。表3-2命令順序MSB控制字 LSBMSB地址字 LSBMSB數(shù)據(jù)字 LSBB7 B6 B5 B4 B3 B2 B1 B0A7 A6A5 A4 A3 A2 A1 A0D7 D6 D5 D4 D3 D2 D1D0命令的傳送總是從控制字節(jié)開場(chǎng)。首先傳送字節(jié)的最低位LSB(即B0)??刂谱止?jié)傳送完畢以后,依次傳送地址字節(jié)和數(shù)據(jù)字節(jié),傳送順序均從各字節(jié)最低位開場(chǎng)。在最后一位D7傳送完成之后,需要增加一個(gè)附加脈沖把I/O線置成高狀態(tài)。SLE4442芯片具有七種命令,其格式和功能如表3-3所示。表3-3命令格式及功能字節(jié)1控制字節(jié)2地址字節(jié)3數(shù)據(jù)功能命令模式30H38 H34

22、 H3B H31 H39 H33 H地址數(shù)地址數(shù)無效地址數(shù)無效地址數(shù)地址數(shù)無效輸入數(shù)據(jù)無效輸入數(shù)據(jù)無效輸入數(shù)據(jù)輸入數(shù)據(jù)讀存儲(chǔ)器修改存儲(chǔ)器讀保護(hù)存儲(chǔ)器寫保護(hù)存儲(chǔ)器讀加密存儲(chǔ)器修改加密存儲(chǔ)器比擬校驗(yàn)數(shù)據(jù)輸出數(shù)據(jù)模式處理模式輸出數(shù)據(jù)模式處理模式輸出數(shù)據(jù)模式處理模式處理模式有關(guān)命令的說明讀主存儲(chǔ)器:該命令是指讀出主存儲(chǔ)器的容。該命令的控制字為(30H)。對(duì)于每個(gè)字節(jié)來說總是從最低位開場(chǎng)讀出。從給定的字節(jié)地址(N)開場(chǎng),直到整個(gè)存儲(chǔ)器的末尾。在該命令輸入以后,接口設(shè)備IFD必須提供足夠的時(shí)鐘脈沖。對(duì)于從地址(N)開場(chǎng)讀數(shù)據(jù)所需要的時(shí)鐘脈沖的數(shù)量M=(256-N)8+1。對(duì)主存儲(chǔ)器做讀操作不受限制。讀保護(hù)

23、存儲(chǔ)器:該命令的控制字為(34H)。在連續(xù)輸入32個(gè)時(shí)鐘脈沖情況下,芯片將保護(hù)存儲(chǔ)器各位容傳送到I/O線上。最后一個(gè)附加時(shí)鐘將I/O線置為H狀態(tài)。對(duì)保護(hù)存儲(chǔ)器進(jìn)展讀取操作不受限制。讀加密存儲(chǔ)器:該命令類似于讀保護(hù)存儲(chǔ)器那樣,可以讀出4個(gè)字節(jié)的加密存儲(chǔ)器的容。在輸出數(shù)據(jù)模式下,所需時(shí)鐘脈沖的數(shù)量為32。其后再附加一個(gè)時(shí)鐘脈沖將I/O線置成高狀態(tài)。如果可編程加密代碼PSC的校驗(yàn)不成功(除第0字節(jié)可讀除外),I/O線總保持低狀態(tài)。修改主存儲(chǔ)器:該命令就是根據(jù)所傳送地址字節(jié)數(shù)據(jù),尋址主存儲(chǔ)器的EEPROM字節(jié),然后修改字節(jié)容。該命令的控制字為(38H)。在處理模式期間,可能有幾種情況:擦除和寫入至少需

24、要5ms;只寫入不擦除,至少需要2.5ms;只擦除不寫入,至少需要2.5ms。修改加密存儲(chǔ)器:該命令是根據(jù)所傳送的字節(jié)數(shù)和要修改的數(shù)據(jù),將加密存儲(chǔ)器中相應(yīng)字節(jié)的容進(jìn)展修改。該命令的控制字為(39H),該命令只能在可編程加密代碼 (PSC)比擬成功之后才能進(jìn)展。該命令的執(zhí)行時(shí)間和所需的時(shí)鐘脈沖與修改主存儲(chǔ)器的情況一樣。寫保護(hù)存儲(chǔ)器:這一命令的執(zhí)行過程包括一個(gè)把被輸入的數(shù)據(jù)與在EEPROM中對(duì)相應(yīng)數(shù)據(jù)進(jìn)展比擬的過程。在確認(rèn)一致的情況下,保護(hù)字位被寫0。從而使得主存儲(chǔ)器中的信息不可更改。如果數(shù)據(jù)比擬結(jié)果不一致,則保護(hù)字位的寫操作將被制止。該命令所需時(shí)鐘脈沖和執(zhí)行時(shí)間與修改主存儲(chǔ)器命令的情況一樣。3.

25、2 CD4066CD4066 的每個(gè)封裝部有4 個(gè)獨(dú)立的模擬開關(guān),每個(gè)模擬開關(guān)有輸入、輸出、控制三個(gè)端子,其中輸入端和輸出端可互換。當(dāng)控制端加高電平時(shí),開關(guān)導(dǎo)通;當(dāng)控制端加低電平時(shí)開關(guān)截止。模擬開關(guān)導(dǎo)通時(shí),導(dǎo)通電阻為幾十歐姆;模擬開關(guān)截止時(shí),呈現(xiàn)很高的阻抗,可以看成為開路。模擬開關(guān)可傳輸數(shù)字信號(hào)和模擬信號(hào),可傳輸?shù)哪M信號(hào)的上限頻率為40MHz。各開關(guān)間的串?dāng)_很小,典型值為50dB。CD4066是四雙向模擬開關(guān),主要用作模擬或數(shù)字信號(hào)的多路傳輸。引出端排列與CC4016一致,但具有比擬低的導(dǎo)通阻抗。另外,導(dǎo)通阻抗在整個(gè)輸入信號(hào)圍根本不變。CD4066由四個(gè)相互獨(dú)立的雙向開關(guān)組成,每個(gè)開關(guān)有一個(gè)

26、控制信號(hào),開關(guān)中的p和n器件在控制信號(hào)作用下同時(shí)開關(guān)。這種構(gòu)造消除了開關(guān)晶體管閾值電壓隨輸入信號(hào)的變化,因此在整個(gè)工作信號(hào)圍導(dǎo)通阻抗比擬低。與單通道開關(guān)相比,具有輸入信號(hào)峰值電壓圍等于電源電壓以及在輸入信號(hào)圍導(dǎo)通阻抗比擬穩(wěn)定等優(yōu)點(diǎn)。當(dāng)模擬開關(guān)的電源電壓采用雙電源時(shí),例如 =5V, =5V均對(duì)地0V而言,則輸入電壓對(duì)稱于0V的正、負(fù)信號(hào)電壓5V5V均能傳輸。這時(shí)要求控制信號(hào)C=1為+5V,C=0為-5V,否則只能傳輸正極性的信號(hào)電壓。元件電路管腳圖如圖3-7所示圖3-7 CD4066管腳圖3.3 單片機(jī)STC89C55是一種帶16K字節(jié)閃爍可編程可檫除只讀存儲(chǔ)器FPEROM-Flash Prog

27、ramable and Erasable Read Only Memory 的低電壓,高性能OS8的微處理器,俗稱單片機(jī)。該器件采用ATMEL搞密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。單片機(jī)總控制電路圖如圖3-8所示。圖3-8單片機(jī)總控制電路時(shí)鐘電路STC89C55部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳R*D和T*D分別是此放大器的輸入端和輸出端。時(shí)鐘可以由部方式產(chǎn)生或外部方式產(chǎn)生。部方式的時(shí)鐘電路如圖3-9(a) 所示,在R*D和T*D引腳上外接定時(shí)元件,部振蕩器就產(chǎn)生自激振蕩。定時(shí)元件通常采用石英晶體和電容組成的并聯(lián)諧振回路。晶體振蕩頻率可以在

28、1.212MHz之間選擇,電容值在530pF之間選擇,電容值的大小可對(duì)頻率起微調(diào)的作用。外部方式的時(shí)鐘電路如圖3-9b所示,R*D接地,T*D接外部振蕩器。對(duì)外部振蕩信號(hào)無特殊要求,只要求保證脈沖寬度,一般采用頻率低于12MHz的方波信號(hào)。片時(shí)鐘發(fā)生器把振蕩頻率兩分頻,產(chǎn)生一個(gè)兩相時(shí)鐘P1和P2,供單片機(jī)使用。a部方式時(shí)鐘電路 b外部方式時(shí)鐘電路圖3-9時(shí)鐘電路復(fù)位及復(fù)位電路復(fù)位操作復(fù)位是單片機(jī)的初始化操作。其主要功能是把PC初始化為0000H,使單片機(jī)從0000H單元開場(chǎng)執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵重新啟動(dòng)

29、。除PC之外,復(fù)位操作還對(duì)其他一些存放器有影響,它們的復(fù)位狀態(tài)如表3-4所示。表3-4一些存放器的復(fù)位狀態(tài)存放器復(fù)位狀態(tài)存放器復(fù)位狀態(tài)PC0000HTCON00HACC00HTL000HPSW00HTH000HSP07HTL100HDPTR0000HTH100HP0-P3FFHSCON00HIP*000000BSBUF不定IE0*000000BPCON0*0000BTMOD00H復(fù)位信號(hào)及其產(chǎn)生RST引腳是復(fù)位信號(hào)的輸入端。復(fù)位信號(hào)是高電平有效,其有效時(shí)間應(yīng)持續(xù)24個(gè)振蕩周期(即二個(gè)機(jī)器周期)以上。假設(shè)使用頗率為6MHz的晶振,則復(fù)位信號(hào)持續(xù)時(shí)間應(yīng)超過4us才能完成復(fù)位操作。產(chǎn)生復(fù)位信號(hào)的電路

30、邏輯如圖3-10所示。圖3-10復(fù)位信號(hào)的電路邏輯圖整個(gè)復(fù)位電路包括芯片、外兩局部。外部電路產(chǎn)生的復(fù)位信號(hào)(RST)送至施密特觸發(fā)器,再由片復(fù)位電路在每個(gè)機(jī)器周期的S5P2時(shí)刻對(duì)施密特觸發(fā)器的輸出進(jìn)展采樣,然后才得到部復(fù)位操作所需要的信號(hào)。復(fù)位操作有上電自動(dòng)復(fù)位相按鍵手動(dòng)復(fù)位兩種方式。上電自動(dòng)復(fù)位是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的,其電路如圖3-11a所示。這樣,只要電源Vcc的上升時(shí)間不超過1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位,即接通電源就成了系統(tǒng)的復(fù)位初始化。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。其中,按鍵電平復(fù)位是通過使復(fù)位端經(jīng)電阻與Vcc電源接通而實(shí)現(xiàn)的,其電路如圖3-11b所示;而按鍵脈

31、沖復(fù)位則是利用RC微分電路產(chǎn)生的正脈沖來實(shí)現(xiàn)的。其電路如圖3-11c所示。a上電復(fù)位 b按鍵電平復(fù)位 c按鍵脈沖復(fù)位圖3-11復(fù)位電路上述電路圖中的電阻、電容參數(shù)適用于6MHz晶振,能保證復(fù)位信號(hào)高電平持續(xù)時(shí)間大于2個(gè)機(jī)器周期。本系統(tǒng)的復(fù)位電路采用圖3-11b按鍵復(fù)位方式。STC89C55具體介紹如下:主電源引腳2根VCC(Pin40):電源輸入,接5V電源GND(Pin20):接地線外接晶振引腳2根*TAL1(Pin19):片振蕩電路的輸入端*TAL2(Pin20):片振蕩電路的輸出端控制引腳4根RST/VPP(Pin9):復(fù)位引腳,引腳上出現(xiàn)2個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。ALE/PR

32、OG(Pin30):地址鎖存允許信號(hào)PSEN(Pin29):外部存儲(chǔ)器讀選通信號(hào)EA/VPP(Pin31):程序存儲(chǔ)器的外部選通,接低電平從外部程序存儲(chǔ)器讀指令,如果接高電平則從部程序存儲(chǔ)器讀指令??删幊梯斎?輸出引腳32根STC89C55單片機(jī)有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個(gè)口有8位8根引腳,共32根。PO口Pin39Pin32:8位雙向I/O口線,名稱為P0.0P0.7P1口Pin1Pin8:8位準(zhǔn)雙向I/O口線,名稱為P1.0P1.7 P2口Pin21Pin28:8位準(zhǔn)雙向I/O口線,名稱為P2.0P2.7 P3口Pin10Pin17:8位準(zhǔn)雙向I/O口線

33、,名稱為P3.0P3.7STC89C55主要功能如表3-5所示。表3-5 STC89C55主要功能主要功能特性兼容MCS51指令系統(tǒng)16K可反復(fù)擦寫Flash ROM32個(gè)雙向I/O口1280*8bit部RAM3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷時(shí)鐘頻率0-24MHz2個(gè)串行中斷可編程UART串行通道2個(gè)外部中斷源共6個(gè)中斷源2個(gè)讀寫中斷口線3級(jí)加密位低功耗空閑和掉電模式軟件設(shè)置睡眠和喚醒功能3.4 鍵盤電路鍵盤電路的設(shè)計(jì)通常有兩種方案。一種是并行接口鍵盤電路,另一種是串行接口鍵盤電路。在本設(shè)計(jì)中,根據(jù)IC卡讀寫器的輸入需要,選擇采用一個(gè)44的16按鍵矩陣式鍵盤接口如圖3-12所示。圖3-12矩陣

34、鍵盤3.5 顯示電路本設(shè)計(jì)采用液晶顯示器。其特點(diǎn)是顯示容豐富(可顯示漢字),功耗小,可靠性高,電路簡(jiǎn)單,器件型號(hào)為QC1602-7如圖3-13所示。圖3-13 QC1602-71602液晶也叫1602字符型液晶它是一種專門用來顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊它有假設(shè)干個(gè)5*7或者5*11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。每位之間有一個(gè)點(diǎn)距的間隔每行之間也有間隔起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒茱@示圖形用自定義CGRAM,顯示效果也不好1602LCD是指顯示的容為16*2,即可以顯示兩行,每行16個(gè)字符液晶模塊顯示字符和數(shù)字。目前市面上字符液晶絕大多數(shù)是基

35、于HD44780液晶芯片的,控制原理是完全一樣的,因此基于HD44780寫的控制程序可以很方便地應(yīng)用于市面上大局部的字符型液晶。 1602采用標(biāo)準(zhǔn)的16腳接口如圖3-14所示。圖3-14 QC1602-7引腳圖第1腳:VSS為電源地第2腳:VDD接5V電源正極第3腳:V0為液晶顯示器比照度調(diào)整端,接正電源時(shí)比照度最弱,接地電源時(shí)比照度最高比照度過高時(shí)會(huì) 產(chǎn)生鬼影,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整比照度。第4腳:RS為存放器選擇,高電平1時(shí)選擇數(shù)據(jù)存放器、低電平0時(shí)選擇指令存放器。第5腳:RW為讀寫信號(hào)線,高電平(1)時(shí)進(jìn)展讀操作,低電平(0)時(shí)進(jìn)展寫操作。第6腳:E(或EN)端為使能(en

36、able)端。第714腳:D0D7為8位雙向數(shù)據(jù)端。第1516腳:空腳或背燈電源。15腳背光正極,16腳背光負(fù)極。1602通過D0D7的8位數(shù)據(jù)端傳輸數(shù)據(jù)和指令。顯示模式設(shè)置:(初始化)0011 0000 0*38 設(shè)置162顯示,57點(diǎn)陣,8位數(shù)據(jù)接口;顯示開關(guān)及光標(biāo)設(shè)置:(初始化)0000 1DCB D顯示(1有效)、C光標(biāo)顯示(1有效)、B光標(biāo)閃爍(1有效)0000 01NS N=1(讀或?qū)懸粋€(gè)字符后地址指針加1 &光標(biāo)加1),N=0(讀或?qū)懸粋€(gè)字符后地址指針減1 &光標(biāo)減1),S=1 且 N=1 (當(dāng)寫一個(gè)字符后,整屏顯示左移);S=0 當(dāng)寫一個(gè)字符后,整屏顯示不移動(dòng);數(shù)據(jù)指針設(shè)置:數(shù)據(jù)首地址為80H,所以數(shù)據(jù)地址為80H+地址碼(0-27H,40-67H);其他設(shè)置:01H(顯示清屏,數(shù)據(jù)指針=0,所有顯示=0);02H(顯示回車,數(shù)據(jù)指針=0)。 軟件設(shè)計(jì)介紹接觸式IC卡讀寫器的程序設(shè)計(jì)。本

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論