版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 本科畢業(yè)設(shè)計(論文)</p><p><b> ?。ǘ?屆)</b></p><p> IC卡消費機(jī)設(shè)計——軟件設(shè)計</p><p> 所在學(xué)院 </p><p> 專業(yè)班級 電子信息工程 </p&
2、gt;<p> 學(xué)生姓名 學(xué)號 </p><p> 指導(dǎo)教師 職稱 </p><p> 完成日期 年 月 </p><p><b> 摘 要</b></p><p>
3、 接觸式IC卡消費機(jī)結(jié)構(gòu)簡單,通用性好,功耗低,已經(jīng)在許多場合得到應(yīng)用。論文描述了IC卡消費系統(tǒng)的發(fā)展和現(xiàn)狀,并詳細(xì)闡述了系統(tǒng)各個模塊的組成和基本原理,通過對IC卡消費機(jī)的方案設(shè)計與論證,給出了以AT89S52單片機(jī)作為微控制器,基于美信公司的MAX232芯片設(shè)計通訊電路的接觸式IC卡消費機(jī),闡述了該系統(tǒng)的組成、工作原理以及相應(yīng)的軟硬件設(shè)計。根據(jù)課題的要求,詳細(xì)介紹了各功能模塊的軟件設(shè)計思路和編程方法,其中包括以下幾個功能模塊的設(shè)計:主
4、程序設(shè)計,鍵盤顯示及控制電路的程序設(shè)計,讀寫和數(shù)據(jù)的存儲電路的程序設(shè)計,數(shù)據(jù)通訊電路等的程序設(shè)計。</p><p> 關(guān)鍵詞:接觸式IC卡,單片機(jī),數(shù)據(jù)通訊,軟件設(shè)計,流程圖</p><p> The software design of consumption machine based on IC card</p><p><b> Abs
5、tract</b></p><p> Contact IC card consumption machine has a lot of advantages and has been widely used. This paper describes the development and status of IC card consumption system, and briefly intr
6、oduce the composition of the various modules of the system and basic principles. Through the design and feasibility studies of IC card consumption machine, the corresponding hardware circuits are given. Then according t
7、o the requirements of the subject, the various functional modules of software design ideas and pro</p><p> Keywords: Contact IC Card, Single Chip Microcomputer, Data Communication, Software Design, Flow Cha
8、rt</p><p><b> 目錄</b></p><p><b> 摘 要I</b></p><p> AbstractII</p><p><b> 1 緒論1</b></p><p> 1.1課題的來源1</p>
9、<p> 1.2課題的意義1</p><p> 1.3 IC卡消費機(jī)的國內(nèi)外發(fā)展現(xiàn)狀2</p><p> 1.3.1 國內(nèi)發(fā)展現(xiàn)狀2</p><p> 1.3.2 國外發(fā)展現(xiàn)狀2</p><p> 1.4課題研究的主要內(nèi)容3</p><p> 2 IC卡消費機(jī)系統(tǒng)總體設(shè)計4</
10、p><p> 2.1 IC卡消費系統(tǒng)的方案設(shè)計4</p><p> 2.2各模塊方案選擇與論證4</p><p> 2.2.1鍵盤模塊的選擇4</p><p> 2.2.2顯示模塊的選擇5</p><p> 2.2.3通訊方式的選擇5</p><p> 2.2.4讀寫模塊的選擇
11、5</p><p> 2.3 系統(tǒng)總體設(shè)計5</p><p> 3系統(tǒng)硬件設(shè)計與實現(xiàn)7</p><p> 3.1單片機(jī)AT89S52簡介7</p><p> 3.2單片機(jī)控制電路9</p><p> 3.3鍵盤輸入電路9</p><p> 3.4液晶顯示電路10<
12、/p><p> 3.5 通訊電路設(shè)計11</p><p> 3.6 SLE4442卡座電路11</p><p> 4系統(tǒng)軟件設(shè)計與實現(xiàn)12</p><p> 4.1軟件設(shè)計環(huán)境12</p><p> 4.2主程序的設(shè)計12</p><p> 4.3 IC卡讀寫程序設(shè)計13&l
13、t;/p><p> 4.3.1 SLE4442特點13</p><p> 4.3.2 SLE4442讀寫協(xié)議14</p><p> 4.3.3 SLE4442卡的復(fù)位操作15</p><p> 4.3.4 判斷卡合法設(shè)計16</p><p> 4.3.5 讀寫卡流程17</p><p
14、> 4.4 鍵盤與顯示系統(tǒng)設(shè)計18</p><p> 4.5 通信部分程序設(shè)計21</p><p><b> 結(jié)論24</b></p><p><b> 參考文獻(xiàn)25</b></p><p> 致謝錯誤!未定義書簽。</p><p><b>
15、; 附錄27</b></p><p> 附錄圖1 硬件連接圖27</p><p> 附錄圖2 PCB版圖28</p><p> 附錄圖3 PCB底版正面28</p><p> 附錄圖4 PCB底版反面29</p><p> 附錄圖5 SLE4442卡29</p><
16、;p> 附錄圖6 消費機(jī)實物130</p><p> 附錄圖7 消費機(jī)實物230</p><p><b> 附錄8 程序31</b></p><p><b> 1 緒論</b></p><p><b> 1.1課題的來源</b></p>&l
17、t;p> 在二十一世紀(jì),隨著信息科學(xué)技術(shù)的快速發(fā)展,信息化的浪潮也是一浪高過一浪,人們的生活水平也在不斷地提高,智能化控制無疑是人們追求的目標(biāo)之一,它所給人帶來的方便也是不可否定的,其中IC卡消費機(jī)就是一個很好的典型的例子,但人們對它的要求也在越來越高,要為現(xiàn)代人類的生活和工作等提供更好更方便的設(shè)施就需要一切向數(shù)字化、智能化的方向發(fā)展。在IC卡技術(shù)的發(fā)展日益成熟的形勢下,智能IC卡的應(yīng)用也已逐漸進(jìn)入人們的日常生活和工作的各個領(lǐng)域
18、中,這大大地提高了人們工作和生活的現(xiàn)代化程度。</p><p> IC卡是集成電路卡(Integrated Circuit Card)的英文簡稱,也稱為智能卡(Smart Card)。IC卡是在1970年由法國人Roland Moreno發(fā)明的,他第一次將可編程設(shè)置的IC芯片放于卡片中,使卡片具有了更多的功能。目前有IC卡“一卡通”系統(tǒng)、消費系統(tǒng)、考勤系統(tǒng)、門禁系統(tǒng)等。</p><p>
19、 IC卡的外型與普通的磁卡所做成的信用卡十分的相似,只不過是略微厚一些。IC卡的外型由一塊塑料或聚氯乙烯材料作成,通常還會有各種印刷圖案、文字和號碼在上面,稱為“卡基”,在“卡基”的固定位置上嵌裝一種特定的IC芯片就成為我們通常所說的IC卡。根據(jù)嵌裝的芯片不同也就產(chǎn)生了各種類型的IC卡。</p><p><b> 1.2課題的意義</b></p><p> 互聯(lián)
20、網(wǎng)的高速發(fā)展也帶來了許多的安全性問題,從而也加快了安全識別最佳的工具,也就是智能卡的應(yīng)用。因此IC卡最初是為了解決金融交易中的安全性問題而設(shè)計的,它帶來全新的交易概念與前所未有的優(yōu)勢。在IC卡技術(shù)的發(fā)展日益成熟的形勢下,智能IC卡的應(yīng)用也已逐步進(jìn)入人們的日常生活和工作的各個領(lǐng)域中,包括通信、交通、醫(yī)療衛(wèi)生、學(xué)校、企事業(yè)單位內(nèi)部管理(考勤、飯?zhí)镁筒?、看病、購物等等)這些領(lǐng)域,這大大地提高了人們工作和生活的現(xiàn)代化程度,并取得了很好的經(jīng)濟(jì)效益
21、和社會效益。隨著時間的推移,應(yīng)用范圍還在不斷擴(kuò)大,使用IC卡的數(shù)量亦呈幾何級數(shù)增長。與此同時,為了滿足不同應(yīng)用場合的需求,IC卡制造商們?nèi)栽诓粩嗟叵蚴袌鐾瞥鲂碌腎C卡,其中IC卡消費機(jī)的開發(fā)與設(shè)計也迅速發(fā)展起來。</p><p> 我國的IC卡消費系統(tǒng)市場競爭力也在逐步增強(qiáng),IC卡消費系統(tǒng)市場也會逐步地趨于成熟。但對于尖端的IC卡技術(shù),我國還是處于落后狀態(tài),這也制約了其發(fā)展,特別是在要求有相當(dāng)高的安全性和保密性
22、的金融行業(yè)。因此設(shè)計和開發(fā)出更好的IC卡消費系統(tǒng),對加快我國IC卡行業(yè)的發(fā)展,有著非常重大的意義,這既是市場應(yīng)用的需求,也是未來的發(fā)展趨勢。</p><p> 1.3 IC卡消費機(jī)的國內(nèi)外發(fā)展現(xiàn)狀</p><p> 按照芯片的性能,IC卡初步可以分為智能卡和存儲卡兩種;按照其與終端設(shè)備的連接方式,IC卡又可以分為接觸型IC卡和非接觸型IC卡兩大類?,F(xiàn)在在社會上比較多見的是接觸式IC卡。
23、它具有較大的存儲容量,安全性能好,還可以實現(xiàn)一卡多用這些優(yōu)勢。</p><p> 接觸式IC卡,也就是在使用時,通過有形的金屬電極觸點將卡的集成電路與外部接口設(shè)備直接接觸連接,提供集成電路工作的電源,并且通過串行方式與讀寫器進(jìn)行數(shù)據(jù)交換的一種集成電路卡。其芯片一般采用不易揮發(fā)性的存儲器(ROM、EEPROM)、保護(hù)邏輯電路、甚至還帶微處理器CPU。在這種卡片的集成電路中有8個觸點可與外面接觸,其特點是卡必須插入
24、讀卡器中才能進(jìn)行讀寫操作。</p><p> 1.3.1 國內(nèi)發(fā)展現(xiàn)狀</p><p> 我國對IC卡行業(yè)的發(fā)展始于1994年,IC卡雖然進(jìn)入中國較晚,但在政府的大力支持下,發(fā)展迅速。當(dāng)時的中央領(lǐng)導(dǎo)高度重視IC卡行業(yè),他們高瞻遠(yuǎn)矚,指示要發(fā)展我國自己的IC卡事業(yè),建立“金卡工程”。至今短短的十幾年時間卻是已經(jīng)取得了不小的成就。IC卡的應(yīng)用推廣非???,96、97兩年IC卡應(yīng)用達(dá)到6000
25、萬張,98年一年就達(dá)到8000萬張。目前國內(nèi)IC卡主要是采用德國SIEMENS和美國ATMEL的IC芯片,其他芯片廠家如韓國三星等也都已經(jīng)開始在國內(nèi)供貨了。</p><p> 目前在我國,隨著金卡工程建設(shè)的不斷深入和發(fā)展,IC卡系統(tǒng)已經(jīng)在眾多領(lǐng)域中獲得了廣泛的應(yīng)用,并且取得了初步的社會效益。在政府管理的大力支持和技術(shù)研發(fā)水平的提升下,IC卡市場競爭力將會發(fā)生深刻的變化。今后的幾年,是我國IC卡系統(tǒng)應(yīng)用向縱深發(fā)展
26、的時期。</p><p> 1.3.2 國外發(fā)展現(xiàn)狀</p><p> IC卡的發(fā)展歷史其實并不久遠(yuǎn),而且全球各地的發(fā)展也并不均衡,其中歐洲地區(qū)的發(fā)展較其他地區(qū)稍好一點。IC卡自20世紀(jì)70年代問世以來,在近30年的時間里發(fā)展迅速。</p><p> 據(jù)Innovation國際發(fā)明組織統(tǒng)計,2005年10月至2006年9月,全世界的IC卡硬件產(chǎn)業(yè)中有42000
27、萬張,其中法國占了98%,處于世界領(lǐng)先地位。目前,法國所生產(chǎn)制造的IC卡不僅僅在數(shù)量上領(lǐng)先于各國,其應(yīng)用領(lǐng)域也是靈活多樣,比如在金融、醫(yī)療、電信和交通運輸?shù)雀鱾€領(lǐng)域都有IC卡的應(yīng)用,其中電子金融卡等己經(jīng)達(dá)到經(jīng)濟(jì)生產(chǎn)規(guī)模。</p><p> 1.4課題研究的主要內(nèi)容</p><p> IC卡消費系統(tǒng)是IC卡最廣泛的應(yīng)用之一,已經(jīng)在許多場合得到應(yīng)用。IC卡消費系統(tǒng)主要分成二大部分:上位微機(jī)
28、的IC卡管理系統(tǒng)、基于單片機(jī)的IC卡消費機(jī)。本課題主要任務(wù)是完成對接觸式IC卡消費機(jī)的鍵盤輸入、液晶顯示及控制電路、讀寫與數(shù)據(jù)存儲電路、數(shù)據(jù)通訊電路等電路的設(shè)計。在本設(shè)計中我所負(fù)責(zé)的是軟件部分的設(shè)計。</p><p> 接觸式IC卡消費機(jī)的軟件設(shè)計主要內(nèi)容如下: </p><p><b> 1)主程序設(shè)計;</b></p><p> 2
29、)鍵盤顯示及控制電路的程序設(shè)計;</p><p> 3)讀寫和數(shù)據(jù)的存儲電路的程序設(shè)計;</p><p> 4)數(shù)據(jù)通訊電路等的程序設(shè)計。</p><p> 本設(shè)計將采用以AT89S52單片機(jī)為核心的,用Keil軟件來編寫匯編語言程序,一個好的程序設(shè)計思想應(yīng)該加上適當(dāng)?shù)木幾g軟件、仿真器和編程器,這是單片機(jī)軟件開發(fā)的基本要求。本系統(tǒng)程序的設(shè)計以模塊化和結(jié)構(gòu)
30、化的設(shè)計思想為指導(dǎo)。德國的Keil軟件公司的編譯器可直接對AT89S52單片機(jī)的內(nèi)部特殊功能寄存器和I/O口進(jìn)行操作,直接訪問片內(nèi)或片外存儲器,還可進(jìn)行各種位操作,能產(chǎn)生簡潔而又高效率的程序代碼??紤]到匯編語言能夠直接訪問與硬件相關(guān)的存儲器或I/O端口,還能夠?qū)﹃P(guān)鍵代碼進(jìn)行更準(zhǔn)確的控制,避免因線程共同訪問或者硬件設(shè)備共享引起的死鎖等優(yōu)點,因此本系統(tǒng)在設(shè)計中多數(shù)的程序?qū)褂脜R編語言進(jìn)行設(shè)計,少數(shù)的一些程序?qū)肅語言編寫,然后再用匯編語
31、言進(jìn)行調(diào)用。</p><p> 2 IC卡消費機(jī)系統(tǒng)總體設(shè)計</p><p> 2.1 IC卡消費系統(tǒng)的方案設(shè)計</p><p> 目前我們經(jīng)常接觸到的IC卡有兩種:接觸式IC卡和非接觸式的IC卡。接觸式IC卡是通過機(jī)械觸點從讀寫器上獲取能量和交換數(shù)據(jù);非接觸式IC卡則是通過線圈射頻感應(yīng)從讀寫器上獲取能量和交換數(shù)據(jù),因此又稱為射頻卡。現(xiàn)在社會上比較多看到的是接
32、觸式IC卡,它的存儲量較大,也可以實現(xiàn)一卡多用等功能。</p><p> IC卡消費系統(tǒng)的設(shè)計應(yīng)包括管理主機(jī)(PC機(jī))、消費機(jī)、打印機(jī)、發(fā)卡機(jī)和通訊接口設(shè)計等。該系統(tǒng)的總體組成框圖如圖2-1所示。</p><p> 圖2-1 IC卡消費系統(tǒng)組成框圖</p><p> 各部分功能介紹如下:</p><p> PC機(jī)功能:主要是負(fù)責(zé)IC卡
33、的管理、數(shù)據(jù)采集和系統(tǒng)的維護(hù)等。</p><p> 消費機(jī)功能:當(dāng)持卡人拿IC卡進(jìn)行消費時,消費機(jī)首先會對IC卡進(jìn)行認(rèn)證,它會校驗IC卡是否為合法的卡,再通過校驗密碼來確認(rèn)持卡人的合法性。輸入密碼錯誤時,消費機(jī)會發(fā)出警報。</p><p> 發(fā)卡器功能:發(fā)卡器是將個人信息輸入到新卡中,并且固化在卡片保護(hù)區(qū)內(nèi),由于固化的信息是唯一 的,因此每張卡片的信息都不相同,這樣提高了消費機(jī)判別IC
34、卡有效性的準(zhǔn)確度。</p><p> 通訊接口電路的功能:通訊接口電路是PC機(jī)采集數(shù)據(jù)的主要通道,也是各消費機(jī)與PC機(jī)進(jìn)行聯(lián)系的必經(jīng)之路,它在系統(tǒng)中發(fā)揮著重要的作用。</p><p> 2.2各模塊方案選擇與論證</p><p> 2.2.1鍵盤模塊的選擇</p><p> 矩陣式鍵盤是由行線和列線來組成的,按鍵則位于行列的交叉點上,
35、這種方式可以節(jié)省很多的I/O資源,而且很使用起來靈活又方便,但是得用軟件編程來消抖。矩陣式鍵盤較適用于按鍵數(shù)量多的場合,所以該系統(tǒng)采用的是矩陣式按鍵。</p><p> 2.2.2顯示模塊的選擇</p><p> 現(xiàn)在人們采用的顯示方式多數(shù)為LED顯示或LCD液晶顯示屏來顯示信息。LED數(shù)碼管顯示對外界環(huán)境的要求較低,操作也簡單方便,但是它采用的是動態(tài)掃描,占用資源比較多。而液晶顯示屏
36、可以顯示較多的信息量,且輕薄短小,功耗低,因此選用LCD1602液晶顯示。</p><p> 2.2.3通訊方式的選擇</p><p> 常用的通訊方式有兩種:一種是RS-232串行通訊,另一種是RS-485串行通訊。RS-485串行通訊主要是作為工業(yè)領(lǐng)域的數(shù)據(jù)交換手段,它采用差分傳輸方式,具有較好的抑制共模信號能力,其通訊距離可達(dá)1200米,最高速率是10Mb/s。而RS-232串行
37、通訊則被定義為是一種在低速率串行通訊中增加通訊距離的單端標(biāo)準(zhǔn),其采取不平衡傳輸方式,即所謂單端通訊。本系統(tǒng)中采用RS-232的串行通訊方式,可以實現(xiàn)將收費機(jī)數(shù)據(jù)傳送到控制主機(jī)的單端通訊,雖然傳輸速率不是很高,但是十分可靠。</p><p> 2.2.4讀寫模塊的選擇</p><p> 用單片機(jī)來實現(xiàn)對IC卡的讀寫,首先就是卡片的選擇,考慮到保密性和可靠性以及成本的要求,本系統(tǒng)采用西門子
38、的SLE4442卡,這也是本設(shè)計的關(guān)鍵技術(shù)之一。</p><p> 2.3 系統(tǒng)總體設(shè)計</p><p> 本設(shè)計的基本要求主要有:用C語言或匯編語言編寫程序。</p><p> 主程序結(jié)構(gòu)設(shè)計及其程序編寫;</p><p> 子程序結(jié)構(gòu)設(shè)計及其程序編寫;</p><p> 在設(shè)計完成后將要達(dá)到的主要指標(biāo)有以
39、下幾點:</p><p> 顯示系統(tǒng):LCD液晶顯示,能顯示系統(tǒng)時鐘和卡片信息;</p><p> 按鍵操作:能實現(xiàn)對系統(tǒng)的設(shè)置和卡上數(shù)據(jù)的操作;</p><p> 存儲容量:一般可存儲2000條交易和10000張以上的卡片信息;</p><p> 保密性和防偽性:能夠辨別卡的密碼,若感應(yīng)到在非授權(quán)的范圍內(nèi)應(yīng)作出報警處理;</p
40、><p> 根據(jù)上述分析,系統(tǒng)的總體設(shè)計方案如下:本課題所要設(shè)計的是接觸式IC卡消費機(jī),該系統(tǒng)采用RS-232通訊,用SLE4442卡作為數(shù)據(jù)存儲的載體,用采用LCD1602液晶顯示,采用AT89S52單片機(jī),完成對收費機(jī)包括鍵盤、顯示、IC卡接口、存儲器等的硬件電路與相應(yīng)的軟件開發(fā)設(shè)計工作,來實現(xiàn)完成接觸式IC卡收費機(jī)的設(shè)計。圖2-2所示為IC卡消費機(jī)結(jié)構(gòu)框圖。</p><p> 圖2-
41、2 IC卡消費機(jī)結(jié)構(gòu)框圖</p><p> 3系統(tǒng)硬件設(shè)計與實現(xiàn)</p><p> 3.1單片機(jī)AT89S52簡介</p><p> AT89S52是ATMEL公司的一種低功耗、高性能CMOS 8位微控制器,它具有8K 在系統(tǒng)內(nèi)可編程閃存存儲器。在單芯片上,它擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,這就讓AT89S52在很廣泛的嵌入式控制應(yīng)用系統(tǒng)中都
42、得到了很好的應(yīng)用。</p><p> AT89S52芯片與MCS-51單片機(jī)的產(chǎn)品都兼容,功能強(qiáng)大的AT89S52單片機(jī)可以提供高性價比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域當(dāng)中。其引腳圖如圖3-1所示。</p><p> 圖3-1 AT89S52引腳圖</p><p> 各個引腳的含義及功能如下:</p><p> VCC(40引腳)
43、:接+5V電源;</p><p> GND(20引腳):接地;</p><p> P0口(32-39引腳):P0口是一個8位漏極開路的雙向I/O口。在Flash編程的時候,P0口也可以用來接收指令字節(jié);在程序進(jìn)行校驗時,輸出指令字節(jié)。在程序進(jìn)行校驗時,需要外部再加上一個上拉電阻。</p><p> P1口(1-8引腳):P1口是一個具有內(nèi)部上拉電阻的8 位雙向
44、I/O口,P1口的有幾個引腳還有第二功能,分別如表3-1所示:</p><p> 表3-1 P1口引腳的第二功能</p><p> P2口(21-28引腳):P2 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O口,對P2端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。在flash編程和校驗時,P2口也可以接收高8位地址字節(jié)和一些控制信號[13]。</p>&l
45、t;p> P3口(10-17引腳):P3 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O口,對P3端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。P3口也可作為AT89S52的第二功能(表3-2)使用。</p><p> 表3-2 P3口引腳的第二功能</p><p> RST(9引腳):是復(fù)位(RESET)信號輸入端,高電平有效。</p><p
46、> ALE(30引腳):輸出為地址鎖存允許信號,當(dāng)單片機(jī)上電正常工作后,ALE引腳不斷輸出正脈沖信號。單片機(jī)執(zhí)行外部程序時,應(yīng)設(shè)置ALE為禁止位無效。</p><p> PSEN(29引腳):程序存儲允許輸出的是外部程序存儲器的讀選通信號,當(dāng)AT89S52由外部程序存儲器取指令或數(shù)據(jù)時,每個機(jī)器周期兩次PSEN有效,即輸出了兩個脈沖。</p><p> EA/VPP(31引腳)
47、:EA功能為內(nèi)外程序存儲器選擇控制端。</p><p> XTAL1(19引腳):接外部晶體的一個引腳。如果采用外接晶體振蕩器時,此引腳應(yīng)接地。</p><p> XTAL2(18引腳):接外部晶體的另一端。</p><p> 3.2單片機(jī)控制電路</p><p> 該消費系統(tǒng)中讀寫器以及鍵盤顯示的主控芯片采用的就是AT89S52單片
48、機(jī),其控制電路如圖3-2所示。</p><p> 圖3-2 單片機(jī)控制電路</p><p><b> 3.3鍵盤輸入電路</b></p><p> 系統(tǒng)可以通過鍵盤設(shè)置的不同進(jìn)行各種消費模式的切換,鍵盤共包括0~9數(shù)字鍵,小數(shù)點鍵、設(shè)置鍵、復(fù)位鍵等17個按鍵,由于單片機(jī)的I/O口是有限的,本系統(tǒng)使用4*4的矩陣鍵盤來作為輸入,這樣一個8位
49、的I/O口就可以驅(qū)動16個鍵盤,大大提升了I/0口的利用率,使整個系統(tǒng)更加實用和高效。鍵盤硬件電路圖如圖3-3所示。</p><p> 圖3-3 4x4鍵盤原理圖</p><p><b> 3.4液晶顯示電路</b></p><p> 本系統(tǒng)的顯示模塊采用比較常見的LCD液晶顯示,其顯示的信息量很大,低壓微功耗,且無電磁輻射,具有很大的優(yōu)
50、越性。其硬件電路圖如圖3-4所示。</p><p> 圖3-4 LCD液晶顯示電路</p><p> 3.5 通訊電路設(shè)計</p><p> 本設(shè)計采用RS232標(biāo)準(zhǔn)來實現(xiàn)消費機(jī)與上位機(jī)之間的通信,能夠?qū)崿F(xiàn)RS232通信協(xié)議的芯片有很多種,其中MAXIM公司生產(chǎn)的MAX232是比較優(yōu)良的RS232通信芯片。MAX232芯片是美信公司專門為電腦的RS-232標(biāo)準(zhǔn)
51、串口設(shè)計的單電源電平轉(zhuǎn)換芯片,它使用+5v電源供電,與系統(tǒng)里其它芯片的工作電壓相同,并且符合所有EIA/232E標(biāo)準(zhǔn),還具有多路輸入輸出功能,其內(nèi)部集成兩個RS-232C驅(qū)動器和兩個RS-232C接收器。MAX232與AT89S52的電路連接圖如圖3-5所示。</p><p> 圖3-5 MAX232與AT89S52的連接圖</p><p> 3.6 SLE4442卡座電路</p
52、><p> 卡座是消費機(jī)與卡的物理連接部件,是影響消費機(jī)壽命的主要因素。SLE4442是接觸式IC卡的一種,它采用I2C總線,其觸點配置和接口標(biāo)準(zhǔn)都符合ISO7816 的同步傳輸協(xié)議,內(nèi)部含有256*8位EEPROM主存儲器和一個32位帶PROM功能的保護(hù)存儲器,保護(hù)存儲器對EEPROM的前32個字節(jié)可以進(jìn)行寫和刪除保護(hù),可進(jìn)行至少10萬次的擦寫,至少有10年的數(shù)據(jù)保存期,并且其工作電壓也是5V,與消費機(jī)里其它芯片
53、的工作電壓相同。因此本設(shè)計采用SLE4442卡作為數(shù)據(jù)存儲器的載體,其硬件連接圖如圖3-6所示。</p><p> 圖3-6 SLE4442卡的硬件連接圖</p><p> 4系統(tǒng)軟件設(shè)計與實現(xiàn)</p><p> 接觸式IC卡消費機(jī)的軟件設(shè)計采用模塊化方式,就是將各個功能分成獨立的一個個個模塊。本系統(tǒng)的軟件設(shè)計包括主程序、初始化程序、中斷程序、鍵盤處理子程序、
54、顯示驅(qū)動子程序、讀寫卡子程序、RS-485數(shù)據(jù)通信子程序和存儲器讀寫操作子程序設(shè)計等。</p><p><b> 4.1軟件設(shè)計環(huán)境</b></p><p> Keil是目前最流行的單片機(jī)開發(fā)軟件之一,Keil它提供了一個集成開發(fā)軟件μVision,其中包括了C編譯器、宏匯編、連接器、庫管理和一個功能強(qiáng)大的仿真調(diào)試器,它支持匯編、PLM語言和C語言的程序設(shè)計。這樣
55、在開發(fā)和應(yīng)用軟件的過程當(dāng)中,就可以將編輯、編譯、匯編、連接和調(diào)試等各階段都集成在同一個環(huán)境中。先用編輯器編寫好程序,然后再調(diào)用編譯器進(jìn)行編譯,連接后就可以直接運行了,這樣就可以縮短開發(fā)的周期。</p><p> 本系統(tǒng)程序的設(shè)計以模塊化和結(jié)構(gòu)化的設(shè)計思想為指導(dǎo),采用以AT89S52單片機(jī)為核心的,用KEIL軟件來編寫匯編語言程序。一個好的程序設(shè)計思想,再加上適當(dāng)?shù)木幾g軟件、仿真器和編程器,這是單片機(jī)軟件開發(fā)的基
56、本要求。匯編語言的特點是用符號代替了機(jī)器指令代碼,而且助記符與指令代碼一一對應(yīng),基本保留了機(jī)器語言的靈活性。使用匯編語言能面向機(jī)器并較好地發(fā)揮機(jī)器的特性,得到質(zhì)量較高的程序。匯編語言保持了機(jī)器語言的優(yōu)點,具有直接和簡捷的特點,還可有效地訪問、控制計算機(jī)的各種硬件設(shè)備,如磁盤、存儲器、CPU、I/O端口等。因此本設(shè)計中采用匯編語言來編寫主程序和子程序,并在主程序中調(diào)用子程序,以實現(xiàn)系統(tǒng)的各個功能。</p><p>
57、<b> 4.2主程序的設(shè)計</b></p><p> 接觸式IC卡消費機(jī)工作的過程是一個復(fù)雜的程序執(zhí)行過程,要執(zhí)行一系列的操作指令,要調(diào)用多個函數(shù)和子程序。由于在本系統(tǒng)中要實現(xiàn)的功能較多,所以在主程序中進(jìn)行數(shù)據(jù)通訊、卡的判斷和對IC卡的操作等等,在主程序中完成對消費機(jī)的基本功能。</p><p> 消費機(jī)的主程序的流程圖如圖4-1所示:</p>
58、<p> 圖4-1 主程序流程圖</p><p> 4.3 IC卡讀寫程序設(shè)計</p><p> 4.3.1 SLE4442特點</p><p> SLE4442的引腳圖如圖4-2所示:</p><p> 圖4-2 SLE4442引腳圖</p><p> SLE4442各引腳功能如表4-1所示:&
59、lt;/p><p> 表4-1 SLE4442引腳功能</p><p> SLE4442存儲器由主存儲器和保密存儲器組成。主存儲器一共有256個字節(jié),可分為保護(hù)存儲器以及應(yīng)用存儲器。保護(hù)存儲器的地址單元是00H-1FH,應(yīng)用存儲器的地址單元為20H-FFH。保護(hù)存儲器相對于應(yīng)用存儲器有所不同,它具有保護(hù)功能,可以通過寫入相應(yīng)的保護(hù)位而得到保護(hù)。</p><p>
60、4.3.2 SLE4442讀寫協(xié)議</p><p> SLE4442的引腳I/O線上數(shù)據(jù)變化只有在CLK信號的下降沿有效。SLE4442卡的傳送協(xié)議有4種模式,分別是:</p><p> 1)復(fù)位和復(fù)位響應(yīng)(Answer-To-Reset,ATR):在RST為高電平內(nèi),輸入一個CLK脈沖。復(fù)位后,地址計數(shù)器被置為0,當(dāng)RST從高電平置到低電平時,第一個數(shù)據(jù)的內(nèi)容被送到I/O上,此后,連
61、續(xù)輸入32個脈沖,主存儲器中的前4個字節(jié)單元的內(nèi)容被讀出,在第33個CLK脈沖的下降沿,I/O被置為高電平而關(guān)閉。復(fù)位以及復(fù)位響應(yīng)的時序關(guān)系圖如圖4-3所示。</p><p> 圖4-3 SLE4442卡復(fù)位以及復(fù)位響應(yīng)的時序關(guān)系</p><p> 2)命令模式(Command Mode):復(fù)位響應(yīng)后,芯片就等待命令,每一條命令都以一個“啟動狀態(tài)”開始,整個命令共包括3個字節(jié),其后緊跟
62、一個附加脈沖并且用一個“停止?fàn)顟B(tài)”來結(jié)束。其命令方式的時序圖如圖4-4所示。</p><p> 啟動狀態(tài):在CLK是高電平期間,I/O線產(chǎn)生一個下降沿;</p><p> 停止?fàn)顟B(tài):在CLK是高電平期間,I/O線產(chǎn)生一個上升沿。</p><p> 圖4-4 SLE4442卡的命令方式時序圖</p><p> 3)輸出數(shù)據(jù)模式(Outg
63、oing Data Mode):這種模式是將IC卡的數(shù)據(jù)先讀取出來,在第一個CLK脈沖的下降沿之后,I/O線上的數(shù)據(jù)有效,隨后每增加一個CLK脈沖,內(nèi)部的一位數(shù)據(jù)被傳送到I/O線上。輸出的順序是由低到高。當(dāng)所需的最后一個數(shù)據(jù)送出以后,需要再附加一個CLK脈沖把I/O線置成高電平,以便接收到新的命令。在輸出數(shù)據(jù)期間,任何的“啟動狀態(tài)”、“停止?fàn)顟B(tài)”均無效。時序圖如圖4-5所示。</p><p> 圖4-5 SLE
64、4442卡的輸出數(shù)據(jù)方式時序圖</p><p> 4)處理數(shù)據(jù)模式(Processing Mode):處理數(shù)據(jù)模式是對IC卡芯片作一些內(nèi)部處理。芯片在第一個CLK的下降沿,將I/O線從高狀態(tài)拉到低狀態(tài)并且開始處理。在處理的過程中,I/O線永遠(yuǎn)是被鎖定為低電平的。其時序圖如圖4-6所示。</p><p> 圖4-6 SLE4442卡的處理數(shù)據(jù)方式時序圖</p><p&
65、gt; 4.3.3 SLE4442卡的復(fù)位操作</p><p> 復(fù)位是初始化操作,當(dāng)由于程序運行出錯或操作錯誤使系統(tǒng)處于死鎖狀態(tài),為擺脫死鎖狀態(tài),也需要復(fù)位。復(fù)位操作的流程圖如圖4-7所示。</p><p> 圖4-7 SLE4442卡的復(fù)位操作流程圖</p><p> 4.3.4 判斷卡合法設(shè)計</p><p> 當(dāng)IC卡插入以
66、后,首先是要判斷卡的類型是否正確,如果卡的類型錯誤,則卡片將馬上被彈出;在插入正確的卡片以后,系統(tǒng)會校驗密碼,密碼輸入有誤仍然會被彈卡,如果三次密碼錯誤,則卡片將被吞掉,以保證消費機(jī)的安全性,防止非持卡人任意刷卡扣費,如果是持卡人,卡片被吞卡后可以進(jìn)行掛失重新辦卡來進(jìn)行使用。本設(shè)計將按照圖4-8所示的流程圖來設(shè)計判斷卡合法的程序。</p><p> 圖4-8 判斷卡合法設(shè)計的流程圖</p><
67、;p> 4.3.5 讀寫卡流程</p><p> 當(dāng)信號檢測到有卡插入后單片機(jī)就給SIO一個高電平信號,表示已經(jīng)有卡插入,讀寫命令輸入系統(tǒng)將它變?yōu)榈碗娖?,同時系統(tǒng)內(nèi)部處理,進(jìn)行讀寫地址的查找,找到地址后,再將SIO重新置為高電平,表明已經(jīng)處理完畢可以進(jìn)行讀寫數(shù)據(jù)操作,讀寫數(shù)據(jù)成功后,系統(tǒng)調(diào)用彈卡程序,將卡彈出,完成操作。讀卡的流程圖如圖4-9所示,寫卡的流程圖如圖4-10所示:</p>&
68、lt;p> 圖4-9 讀卡的流程圖 圖4-10 寫卡的流程圖</p><p> 4.4 鍵盤與顯示系統(tǒng)設(shè)計</p><p> 在IC卡消費機(jī)中,既有鍵盤的操作,也有顯示的功能。系統(tǒng)可以通過鍵盤設(shè)置的不同進(jìn)行各種消費模式的切換,鍵盤共包括0-9數(shù)字鍵,小數(shù)點鍵、設(shè)置鍵、復(fù)位鍵等17個按鍵,同時增加了常用功能鍵的數(shù)量,減少了按鍵的損耗,這樣可以
69、延長消費機(jī)的使用壽命,使整個系統(tǒng)更加實用和高效。鍵盤、顯示功能的好壞,將會直接關(guān)系到系統(tǒng)的性能。</p><p> 本設(shè)計中的顯示模塊主要由LCD1602液晶顯示,LCD用來向用戶顯示卡片和存儲數(shù)據(jù)等信息;LCD的讀寫操作是通過指令編程來實現(xiàn)的,通過寄存器的設(shè)置和指令編程可完成功能。顯示的流程圖如圖4-11所示。</p><p> 圖4-11 顯示部分程序流程圖</p>
70、<p> 顯示模塊的部分程序如下:</p><p> MAIN: MOV SP,#60H</p><p> MAIN1: LCALL START ;調(diào)用初始化</p><p> MOV A, #80H ;第一行顯示第一個字符的位置</p><p> ACALL EN
71、ABLE ;調(diào)用寫指令</p><p> MOV DPTR, #TABLE1 ;第一行表頭位置</p><p> CALL WRITE1 ;調(diào)用第一行寫子程序</p><p> MOV A, #0C0H ;第二行位置</p><p>
72、CALL ENABLE ;調(diào)用寫指令</p><p> MOV DPTR, #TABLE2 ;第二行表頭位置</p><p> CALL WRITE</p><p> LCALL DELAY1</p><p> JMP MAIN1</p><p
73、> ENABLE: ;寫命令時序</p><p> MOV SS, A</p><p><b> CLR RS</b></p><p><b> CLR RW</b></p><p><b> CLR E</
74、b></p><p> ACALL DELAY</p><p><b> SETB E</b></p><p><b> RET</b></p><p> WRITE1: ;寫字符串</p><p> MO
75、V R1, #00H</p><p> A1: MOV A, R1</p><p> MOVC A, @A+DRTR ;取將顯示的數(shù)據(jù)</p><p> CALL WRITE2 ;調(diào)用寫程序?qū)懭雴蝹€字節(jié)</p><p><b> INC R1</b&
76、gt;</p><p> CJNE R1,#10H,AL</p><p><b> RET</b></p><p> WRITE2: ;寫單個字符</p><p> MOV SS A</p><p><b>
77、SETB RS</b></p><p><b> CLR RW</b></p><p><b> CLR E</b></p><p> CALL DELAY</p><p><b> SETB E</b></p><
78、;p><b> RET</b></p><p> 鍵盤程序設(shè)計應(yīng)包括按鍵的識別以及按鍵識別以后系統(tǒng)的相應(yīng)動作。識別鍵盤上有無鍵被按下的方法一般可以分為2步進(jìn)行:第一步,識別鍵盤上有無鍵被按下去;第二步,如果有鍵被按下了,那么識別出具體被按下的鍵。具體識別按鍵的方法一般有掃描法和線反轉(zhuǎn)法。本設(shè)計中采用的是掃描法,掃描法即先把某一列置低電平,其余各列置為高電平,然后檢查各行線電平有無變
79、化,如果某行線電平為低電平,則可以確定此行此列交叉點處的按鍵被按下。本設(shè)計中采用延時l0ms來進(jìn)行軟件消抖,通過設(shè)置處理標(biāo)志位來區(qū)分閉合鍵是否己處理過,用計算方法得到鍵碼。延時10ms子程序的編程方法如下:</p><p> DL10:MOV R1,#0AH</p><p> DL: MOV R2,#0FFH</p><p> DL6: DJNZ R1,DL
80、6 </p><p> DJNZ R2,DL</p><p> 鍵盤掃描子程序中在系統(tǒng)中完成以下幾個功能:</p><p> 1)判斷鍵盤上有無鍵按下。</p><p> 2)消除按鍵抖動的影響。其方法為,在判斷有鍵被按下以后,采用軟件編程延時的方法來延時10ms,再判斷鍵盤的狀態(tài),如果仍有鍵處于被按下的狀態(tài),那么認(rèn)為有一個確定的鍵被
81、按下,否則就當(dāng)作按鍵抖動來處理。</p><p> 3)確定按鍵的位置。根據(jù)之前提到的掃描法,進(jìn)行逐位置0掃描,最后確定按鍵的位置。</p><p> 4)閉合一次僅僅進(jìn)行一次按鍵的處理。其方法是在等待按鍵釋放之后,再進(jìn)行按鍵功能的處理操作。</p><p> 鍵盤掃描的程序流程圖如圖4-12所示:</p><p> 圖4-12 鍵盤
82、掃描程序流程圖</p><p> 4.5 通信部分程序設(shè)計</p><p> 本設(shè)計采用MAXIM公司生產(chǎn)的MAX232芯片來完成數(shù)據(jù)通信,MAX232芯片是能夠?qū)崿F(xiàn)RS232通信協(xié)議的芯片。RS232串口通信協(xié)議是我們熟悉和常用的通信協(xié)議,其通信協(xié)議的設(shè)計思想是基于幀傳輸方式,即在向串口發(fā)送命令信號、應(yīng)答信號及數(shù)據(jù)信號時是按照幀的格式發(fā)送的。</p><p>
83、 串口采用工作模式1,即共傳輸數(shù)據(jù)為10位,1位起始位,8位數(shù)據(jù)位(低位在先)和1位停止位,由TXD發(fā)送,RXD接收。波特率是可變的,取決于定時器/計數(shù)器1的溢出速率,在本系統(tǒng)設(shè)計時采用波特率9600。在本系統(tǒng)中采用中斷接收,調(diào)用數(shù)據(jù)發(fā)送程序設(shè)計。通訊程序流程圖如圖4-13所示。</p><p> 圖4-13 通訊程序流程圖</p><p><b> 通訊程序如下:<
84、/b></p><p><b> ORG 0000H</b></p><p><b> AJMP MAIN</b></p><p><b> ORG 0023H</b></p><p> AJMP RECEIVE ;跳轉(zhuǎn)到接收中斷入口</p
85、><p><b> ORG 0030H</b></p><p> MAIN: MOV TMOD,#20H ;T1工作方式2</p><p> MOV TH1,#0FDH ;波特率9600</p><p> MOV SCON,#50H ;串口工作方式1,允許中斷接收&
86、lt;/p><p> SETB EA ;打開總中斷</p><p> SETB ES ;打開串口中斷</p><p> SETB TR1 ;打開定時器1</p><p><b> AJMP $</b></p><p&
87、gt; RECEIVE: CLR RI</p><p> MOV A,SBUF ;串口接收數(shù)據(jù)</p><p><b> MOV R0,A</b></p><p> MOV SBUF,A ;將接收的數(shù)據(jù)再傳送給PC機(jī)</p><p><b> JNB TI,
88、$</b></p><p><b> CLR TI</b></p><p><b> MOV A,R0</b></p><p> MOV DPTR,#TAB ;查表顯示</p><p> MOVC A,@A+DPTR</p><p> M
89、OV P2,#0FFH</p><p><b> NOP</b></p><p> MOV P2,#00H ;送LCD顯示</p><p><b> MOV P0,A</b></p><p><b> RETI</b></p><
90、p><b> 結(jié)論</b></p><p> 本文從硬件和軟件的角度,對接觸式IC卡消費機(jī)系統(tǒng)進(jìn)行了分析和研究,同時對軟件部分做到了重點的突出。</p><p> 論文從消費機(jī)整體系統(tǒng)入手,著重介紹了基于ATMEL公司的AT89S52單片機(jī)技術(shù)和MAXIM公司的MAX232芯片的接觸式IC卡消費機(jī)的軟件設(shè)計。該消費機(jī)采用+5V電源供電,具有單片機(jī)控制電路、
91、卡座、LCD液晶顯示電路、鍵盤電路、通訊接口電路、蜂鳴器報警電路和開關(guān)電路等,能夠很好的滿足實際應(yīng)用的需要。</p><p> 作為一個系統(tǒng)在設(shè)計時可能要考慮到諸多因素,在每一個細(xì)節(jié)上,都可能出現(xiàn)意想不到的事情,有時一個小小的問題,要花很多的時間和精力去解決,這需要耐心和恒心,經(jīng)過努力,該系統(tǒng)設(shè)計已經(jīng)完成。然而本論文論述的接觸式IC卡消費系統(tǒng)還有很多方面需要進(jìn)一步提高,像是消費機(jī)與上位機(jī)之間的通信方式宜采用RS
92、-485通訊方式,它的傳輸速率比RS-232高,通訊距離也可達(dá)1200米,這是本系統(tǒng)需要改進(jìn)的地方。還有本論文中給出的程序,還需要進(jìn)一步的優(yōu)化,提高程序執(zhí)行效率,使得所有的程序都能夠調(diào)試成功。</p><p> 通過對系統(tǒng)的軟件調(diào)試,積累了不少的實際經(jīng)驗,開拓了我的思維,為今后在這些方面的工作打下了基礎(chǔ)。本文還有一些不足之處,懇請各位專家和老師批評指正。</p><p><b>
93、; 參考文獻(xiàn)</b></p><p> 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,1995.</p><p> 武光城.新型兼容式智能讀卡器的研究與實現(xiàn)[D].北京航空航天大學(xué),2004.</p><p> 戴鵬,葉兆榮,張哲,王新安,張興.一種高性能智能卡的設(shè)計實現(xiàn)[J].微電子學(xué),2010.6(1):23-24.<
94、/p><p> 潘長東.IC卡電能表的現(xiàn)狀與改進(jìn)[J].電子學(xué)報,2006,4(1):91-94.</p><p> 馮博琴主編,顧剛、劉志強(qiáng)等編.軟件技術(shù)基礎(chǔ)[M].人民郵電出版社,2001.</p><p> 王愛英.智能卡技術(shù)—IC卡[M].第二版.北京:清華大學(xué)出版社,2000.</p><p> 羅海勇.IC卡讀寫器子系統(tǒng)設(shè)計[
95、J].電子技術(shù)應(yīng)用,2006(12):15-16.</p><p> 李清.80C51單片機(jī)與IC卡SLE4442的接口設(shè)計[J].南通工學(xué)院學(xué)報,2003(1):21-23.</p><p> 馮博琴主編,顧剛、劉志強(qiáng)等編.軟件技術(shù)基礎(chǔ)[M].人民郵電出版社,2001.</p><p> 胡連柱.公交非接觸IC卡讀寫器的應(yīng)用設(shè)計[J].安徽電子信息職業(yè)技術(shù)學(xué)
96、院學(xué)報,2003(3):17-19.</p><p> Howard Gobioff. Sean Smith. J.D.Tygar. Smart Cards in Hostile Environments. School of Computer Science Carnegie Mellon University Pittsburgh,PA 15213. September 14,1995.</p>
97、<p> 譚浩強(qiáng).C程序設(shè)計[M].北京:清華大學(xué)出版社,2003.</p><p> Jean-Jacques Vandewalle. Smart Card Research Perspectives. Gemplus Systems Research Labs LaVigie, Z.I. Athelia IV, 13705,May 2003.</p><p> 張
98、明揚,田翠華,王月志.智能卡消費管理系統(tǒng)的研究[J].沈陽電力高等專科學(xué)校學(xué)報,2002.4(1):44-45.</p><p> 趙亮.液晶顯示模塊LCD1602應(yīng)用[J].電子制作,2007(3):57-58.</p><p> 俞永泉.ATMEL89系列單片機(jī)應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2002.</p><p> 劉文濤.單片機(jī)應(yīng)用開
99、發(fā)實例[M]. 北京:清華大學(xué)出版社, 2004.</p><p> 黃筱霞.IC卡門禁系統(tǒng)[J].北京工商大學(xué)學(xué)報,2006(4):63-64.</p><p> 趙錫鈞.基于RS-485接口的單片機(jī)串行通信[J].計算機(jī)技術(shù),2000(4):56-58.</p><p> 馬興兵.藍(lán)牙無線監(jiān)控座機(jī)設(shè)計中密碼技術(shù)的研究及應(yīng)用[D].燕山大學(xué),2004.<
100、;/p><p> 康靖.光電糾偏控制器的設(shè)計研究[D].西安理工大學(xué),2008.</p><p> 馬海燕.非接觸式IC卡技術(shù)研究及防沖突系統(tǒng)設(shè)計[D].合肥工業(yè)大學(xué),2003.</p><p> 童詩白,華成英.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2001.</p><p> 張迎輝.單片微型計算機(jī)鍵盤接口技術(shù)[J].信息技術(shù)
101、,2004(2):25-27.</p><p> 許淑艷.基于AT8245A的有線/無線轉(zhuǎn)接器的研制[D].南開大學(xué),2005.</p><p> 張洪潤,藍(lán)清華.單片機(jī)應(yīng)用技術(shù)教程[M].北京:清華大學(xué)出版社,1997.</p><p> 栗方.基于SLE4442加密存儲卡的汽車行駛記錄中駕駛員身份識別系統(tǒng)設(shè)計[J].電子元器件應(yīng)用,2009(1):31-3
102、3.</p><p> 張毅剛.單片機(jī)原理及應(yīng)用[M].高等教育出版社,2009.7.</p><p> 李孝全.單片機(jī)原理及接口技術(shù)[M].高等教育出版社,2003.</p><p> 周凱波.串行EEPROM及其與89C52的接口[J].自動化與儀器化,1998,1(15):10-13.</p><p> 何為民.低功耗單片微機(jī)系
103、統(tǒng)設(shè)計[M].北京航空航天大學(xué)出版社,2002.</p><p> 張立科.單片機(jī)典型模塊設(shè)計實例導(dǎo)航[M].人民郵電出版社,2005.</p><p><b> 附錄</b></p><p> 附錄圖1 硬件連接圖</p><p> 附錄圖2 PCB版圖</p><p> 附錄圖3 P
104、CB底版正面</p><p> 附錄圖4 PCB底版反面</p><p> 附錄圖5 SLE4442卡</p><p> 附錄圖6 消費機(jī)實物1</p><p> 附錄圖7 消費機(jī)實物2</p><p><b> 附錄8 程序</b></p><p> ;***
105、*************主程序清單****************</p><p> MAIN:LCALL ORGCPU ;開機(jī)初始化</p><p> JNB PROSET.G, MAIN2</p><p> MAIN1:CLR PRO.G </p><p> MOV CAINO, #00H&
106、lt;/p><p> MOV KEYBUF, #0FFH</p><p> MOV FLASHBUF, #00H</p><p> MOV DPTR, #READY1</p><p> LCALL TODPBUF</p><p> MAIN11:LCALL COMMPGM</p><p&g
107、t; JB PROSET.G, MAIN12</p><p> LCALL SOUNDOK</p><p> LJMP MAIN2</p><p> MAIN12:LCALL FSTSET</p><p> JB PRO.G, MAIN11 </p><p> JB CARD.G, MAIN3 <
108、/p><p> LJMP MAIN11</p><p> MAIN2: CLR PRO.G</p><p> MOV CAINO, #00H</p><p> MOV KEYBUF, #0FFH</p><p> MOV FLASHBUF, #00H </p><p> MOV
109、DPTR, #READY2</p><p> LCALL TODPBUF</p><p> MAIN21:LCALL COMMPGM</p><p> JNB PROSET.G, MAIN22</p><p> LCALL SOUNDOK</p><p> LJMP MAIN1</p>&l
110、t;p> MAIN22:LCALL SUMMON </p><p> JB CARD.G, MAIN3</p><p> LJMP MAIN21</p><p> MAIN3:MOV C, PROSET.G</p><p> MOV STATE.G, C</p><p> LCALL SOUN
111、DCARD</p><p> LCALL ORGCPU</p><p> ; ******************判斷是不是4442卡******************</p><p> MAIN4:LCALL COMMPGM</p><p> CLR CD4442.G</p><p> CLR CD4
112、428.G</p><p> CLR CORRECT.G </p><p><b> setb vcc</b></p><p> lcall wait</p><p><b> clr vcc</b></p><p> lcall wait </p
113、><p> MOV R3,#0AH ; 4442卡?</p><p> MAIN40:LCALL WAIT</p><p> JNB CARD.G, MAIN</p><p> MOV R0,#ICBUF1</p><p> LCALL RESET ; 復(fù)位與復(fù)
114、位響應(yīng)</p><p> MOV A, #0A2H</p><p> CJNE A, ICBUF1, MAIN42</p><p> MOV A, #91H</p><p> CJNE A, ICBUF4, MAIN42</p><p> MOV R2, #01H </p><p>
115、 MOV R1, #07H</p><p> MOV R0, #ICBUF1 </p><p> LCALL READMN ; 讀4442卡主存儲器</p><p> MOV A,#15H</p><p> CJNE A, ICBUF1, MAIN42</p><p> JNB CORRE
116、CT.G, MAIN41</p><p> SETB CD4442.G</p><p> CLR CD4428.G</p><p> LJMP MAIN5 </p><p> MAIN41:SETB CORRECT.G</p><p> LJMP MAIN43</p><p>
117、 MAIN42:CLR CORRECT.G </p><p> MAIN43:DJNZ R3, MAIN40</p><p> ; **************卡第一類錯誤報警(EOR1 ALARM) *****************</p><p> MOV FLASHBUF,#0FFH ; 卡類型錯誤</p><
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- ic卡消費機(jī)設(shè)計——軟件設(shè)計【開題報告】
- ic卡消費機(jī)設(shè)計——軟件設(shè)計【文獻(xiàn)綜述】
- ic卡消費機(jī)設(shè)計——軟件設(shè)計【畢業(yè)設(shè)計+開題報告+文獻(xiàn)綜述】
- ic卡消費機(jī)設(shè)計—-硬件設(shè)計【畢業(yè)設(shè)計】
- ic卡消費機(jī)設(shè)計—-硬件設(shè)計【畢業(yè)設(shè)計+開題報告+文獻(xiàn)綜述】
- ic卡消費機(jī)設(shè)計—-硬件設(shè)計【文獻(xiàn)綜述】
- ic卡消費機(jī)設(shè)計——硬件設(shè)計【開題報告】
- ic卡食堂消費機(jī)使用方案
- ic卡水費系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計---活期存款軟件設(shè)計
- 圖書管理系統(tǒng)的IC卡接口軟件設(shè)計.pdf
- 畢業(yè)設(shè)計--co測試儀軟件設(shè)計
- 步進(jìn)電機(jī)細(xì)分驅(qū)動軟件設(shè)計【畢業(yè)設(shè)計】
- 溫室多點溫度采集系統(tǒng)設(shè)計--軟件設(shè)計【畢業(yè)設(shè)計】
- 金融IC卡電子現(xiàn)金系統(tǒng)軟件設(shè)計與實現(xiàn).pdf
- 直流無刷電機(jī)轉(zhuǎn)速控制軟件設(shè)計畢業(yè)設(shè)計
- 畢業(yè)設(shè)計(論文)-基于gprs模塊的軟件設(shè)計
- 紅外遙控電子密碼鎖設(shè)計—軟件設(shè)計【畢業(yè)設(shè)計】
- 畢業(yè)設(shè)計----基于磁伸縮的線性液位計設(shè)計(軟件設(shè)計)
- 基于ic卡的樓宇門禁系統(tǒng)的設(shè)計-畢業(yè)設(shè)計
評論
0/150
提交評論