freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于51單片機(jī)的ic卡讀寫(xiě)系統(tǒng)設(shè)計(jì)-在線瀏覽

2024-12-11 03:01本頁(yè)面
  

【正文】 容只能從“ 1寫(xiě)成“ 0”而不能從“ 0”擦除成“ 1”。從使用方面來(lái)講,如果需要防止一些固定的標(biāo)識(shí)參數(shù)被改動(dòng),可以將這類(lèi)參數(shù)先寫(xiě)入主存儲(chǔ)器的保護(hù)存儲(chǔ)區(qū),然后將對(duì)應(yīng)單元的保護(hù)存儲(chǔ)器的字位寫(xiě)位“ 0”,從而使這一部分單元中的參數(shù) 內(nèi)容永遠(yuǎn)不可更改。但對(duì)其寫(xiě)入操作仍然受到加密存儲(chǔ)器比較校驗(yàn)操作結(jié)果的控制。如果比較不成功,則控制邏輯將閉鎖保護(hù)存儲(chǔ)器。在這個(gè)存儲(chǔ)器中,第 0 字節(jié)為“密碼輸入錯(cuò)誤計(jì)數(shù)器” (EC)。在芯片初始化時(shí),計(jì)數(shù)器設(shè)置成 111。每次比較密碼時(shí),先判斷計(jì)數(shù)器中是否還有“ 1”。如果比較結(jié)果一致,密碼錯(cuò)誤計(jì)數(shù)器將允許進(jìn)行擦除操作 (芯片不能自動(dòng)進(jìn)行擦除操作 ),同時(shí)打開(kāi)主存儲(chǔ)器、保護(hù)存儲(chǔ)器和加密存儲(chǔ)器,并允許進(jìn)行擦除和寫(xiě)入操作。只要計(jì)數(shù)器的內(nèi)容不全為 0,則芯片的比較“校驗(yàn)字”操作還允許進(jìn)行。加密存儲(chǔ)器的第 1,2,3 字節(jié)為“參照字”存儲(chǔ)區(qū)。值得注意的是 :這 3 個(gè)字節(jié)的內(nèi) 容在 PSC 比較成功前是不可讀的,只能進(jìn)行比較操作。只有當(dāng)“比較”成功,加密存儲(chǔ)器各字節(jié)內(nèi)容才可以進(jìn)行讀出、寫(xiě)入和擦除。 I/O 線上數(shù)據(jù)變化只在 CLK 信號(hào)的下降沿才有效。在 操作期間的任何時(shí)候都可以復(fù)位,只有經(jīng)過(guò)了復(fù)位才能對(duì) IC 卡進(jìn)行其他操作 .開(kāi)始時(shí)地址計(jì)數(shù)器隨一個(gè)時(shí)鐘脈沖而被設(shè)置成 0。若連續(xù)輸入 32個(gè)時(shí)鐘脈沖,主存儲(chǔ)器中的前 4 個(gè)字節(jié)地址單元中的內(nèi)容被讀出。圖 31 為芯片復(fù)位即復(fù)位響應(yīng)的時(shí)序關(guān)系。 圖 21 芯片復(fù)位及復(fù)位響應(yīng)的時(shí)序關(guān)系 2)命令模式 :復(fù)位響應(yīng)之后,芯片等待著命令。整個(gè)命令包括三個(gè)字節(jié) (命令含義后面解釋 )。圖 32 為命令模式時(shí)序關(guān)系。 停止?fàn)顟B(tài) :在 CLK 為 H 狀態(tài)期間, I/O 線的上升沿為停止?fàn)顟B(tài)。 6 圖 22 命令模式的時(shí)序關(guān)系 3) 輸出數(shù)據(jù)模式:這種模式是將 IC 卡芯片中的數(shù)據(jù)傳送給外部接口設(shè)備的一種操作。 在第 一個(gè) CLK 脈沖的下降沿之后, I/O 線上的第一位數(shù)據(jù)變?yōu)橛行?。其輸出的順序是從每個(gè)字節(jié)的最低位開(kāi)始。在輸出數(shù)據(jù)期間,任何“啟動(dòng)狀態(tài)”和“停止?fàn)顟B(tài)”均被屏蔽掉。圖 34 為處理數(shù)據(jù)模式的時(shí)序關(guān)系。此后 芯片在內(nèi)部連續(xù)計(jì)時(shí)計(jì)數(shù),直到第N 個(gè)時(shí)鐘脈沖之后的附加時(shí)鐘脈沖的下降沿 I/O 線被再次置高,完成芯片的處理過(guò)程。 圖 24 處理數(shù)據(jù)模式的時(shí)序關(guān)系 7 第 3 章 硬件電路設(shè)計(jì) 所設(shè)計(jì)的讀寫(xiě)器以 8051 單片機(jī)為核心,配以 IC 卡接口電路、串行通信電路、存儲(chǔ)電路、掉電檢測(cè)電路、鍵盤(pán)顯示電路等部分。圖 41 為系統(tǒng)的總體框圖。 ? 向 IC 卡提供其所需的穩(wěn)定的電源與時(shí)鐘信號(hào)。 ? 對(duì)于加密數(shù)據(jù)系統(tǒng),應(yīng)提供相應(yīng)的加密解密處理及密鑰管理機(jī)制。 很多讀寫(xiě)設(shè)備除了對(duì)卡的基本操作外,還設(shè)計(jì)了其他一些重要 功能 : ? 必要的控制界面和顯示界面。 ? 網(wǎng)絡(luò)控制功能,實(shí)現(xiàn)遠(yuǎn)程適時(shí)控 單片機(jī)系統(tǒng)電路 AT89C51 單片機(jī)是該系統(tǒng)的核心器件,其控制著所有的外圍電路,并及時(shí)響應(yīng)外部請(qǐng)求。 51 單 片 機(jī) IC 卡芯片 串行通信電路 掉電檢測(cè) 鍵盤(pán) 液晶顯示 存儲(chǔ)模塊 8 ( 2)矩陣式鍵盤(pán)由 P1 口來(lái)控制, , , , 接行線, 、 、 、 接列線。 ( 3)數(shù)碼管顯示電路由 P2 口控制,單片機(jī)對(duì)數(shù)碼管進(jìn)行動(dòng)態(tài)掃描。 ( 4) P0 口設(shè)計(jì)為與 IC 卡卡座的接口, AT89C51 單片機(jī)通過(guò) IC 卡座完成單片機(jī)與 IC卡的連接。 IC 卡接口設(shè)備中的 IC 卡供電電路應(yīng)是一個(gè)相對(duì)獨(dú)立于其他回路,并提供完善的過(guò)流保護(hù)措施的穩(wěn)壓電路,這是由于 IC 卡接口設(shè)備是一個(gè)獨(dú)立于 IC卡的設(shè)備,當(dāng)有卡插入時(shí),接口設(shè)備便開(kāi)始向 IC卡提供其所需的電力。 為了提高 IC 卡操作的可靠性,必須有上下電控制電路、卡插入檢測(cè)電路、卡短路檢測(cè)電路。 9 圖 32 IC 卡接口電 R VD VT1 組成卡上下電電路。如果插入的是一張電源與地?fù)舸┑膲目?,或是一個(gè)金屬片之類(lèi)的物質(zhì),就會(huì)造成回路的短路現(xiàn)象。 IC卡的控制與讀寫(xiě)是 IC卡接口設(shè)備中的核心操作部分,各種 IC卡的實(shí)際操作有較大的不同, (ISO7816標(biāo)準(zhǔn)只定義了一個(gè)最小操作,因而符合這一標(biāo)準(zhǔn)的卡亦不能保證其他操作的一致性 ),這里先選擇其中 較具共性的部分介紹,后面會(huì)針對(duì) SLE4442 芯片的具體操作做詳細(xì)說(shuō)明。若卡是非法卡,卡電源短路,低電平送至 ,則 為 0, VT3 導(dǎo)通,圖 47 中的報(bào)警電路報(bào)警。 IC 卡插入識(shí)別程序如下所示 : RE_ DETECT: SETB IC_SW MOV C,IC_SW 。無(wú)卡插入,等待 LCALL DELAY_5MS 。再次判斷,若無(wú)卡輸入等待 RET ?? 。它必須嚴(yán)格遵循 ISO78163 所規(guī)定的操作順序,否則就有可能對(duì) IC 卡帶來(lái)永久的損壞。下面是上下電程序控制過(guò)程 : POWERON: 。識(shí)別是否有卡插入 CLR RST 。使 CLK 二 L LCALL DELAY_500us 。給卡供電 SETB D_OUT 。下電控制 CLR RST 。使 CLK=L CLR D_OUT 。延時(shí) ,使端口邏輯信號(hào)穩(wěn)定 SETB POWER 。但許多廠家生產(chǎn)的 IC 卡都以 ISO7816 同步復(fù)位響應(yīng)協(xié)議作為 IC 卡的數(shù)據(jù)讀協(xié)議。以后每向卡發(fā)一個(gè)節(jié)拍的時(shí)鐘,都將使 IC 卡的地址計(jì)數(shù)器加“ 1”,這一時(shí)鐘頻率上限為 50kHz 或 280kHz。若某字段定義為可讀的,則可將時(shí)鐘運(yùn)行到該字段上,然后再逐時(shí)鐘讀出。 11 串行通信電路 由于 PC 機(jī)的串口電壓為177。圖 43 為串行通信電路。 16 個(gè)按鍵 構(gòu)成了讀寫(xiě)系統(tǒng)的鍵盤(pán)電路部分。 12 圖 34 8051 與鍵盤(pán)接口電路 圖中, 為行線,接有上拉電阻 R=5V/1 mA=5kΩ。由 端輸出列掃描信號(hào),通過(guò)移位寄存器 74LS164輸出端 QA~ QH 接至鍵盤(pán)作為鍵盤(pán)列線。 顯示電路 應(yīng)用系統(tǒng)中常用的顯示器有 :發(fā)光二極管顯示器,簡(jiǎn) 稱(chēng) LED;液晶顯示器,簡(jiǎn)稱(chēng) LCD。本文采用 LCD,所以只對(duì) LCD 進(jìn)行介紹。 顯示設(shè)計(jì)使用現(xiàn)有的液晶顯示功能模塊 SMG12232B2,該模塊能提供 122*22 的分辨率,帶中文字庫(kù),更重要的是它可以有并行和串行兩種輸入方式,接口方便,這樣我們可以使用單片機(jī)的異步通訊口驅(qū)動(dòng)顯示模塊,軟硬件實(shí)現(xiàn)都非常簡(jiǎn)單,外圍電路非常簡(jiǎn)潔。 13 圖 35 顯示器與單片機(jī)接口電路 14 第 4 章 軟件系統(tǒng)設(shè)計(jì) 本章主要介紹接觸式 IC 卡讀寫(xiě)器的程序設(shè)計(jì)。其中子程序包括比較校驗(yàn)數(shù)據(jù)子程序、插卡子程序、顯示中斷子程序。主程序的流程圖如圖 51 所示。 //全局變量定義 uchar data cons2[2]={0, 0}; main ( ) { uchar data *p。 Read24c02(p,addrl,2); //從 24c02 中讀出掉電時(shí)保存的數(shù)據(jù) consl=OxOOOF。 //外部中斷 0 下降沿觸發(fā) EXO=1。 //CPU 開(kāi)中斷 IDL=1。 } 15 N Y N Y 圖 41 主程序流程圖 鍵盤(pán)掃描子程序 16 個(gè)按鍵的鍵盤(pán)電路分別為:數(shù)字鍵 0~ 9 及小數(shù)點(diǎn)“ .”,可以設(shè)定用戶(hù)信息及余額;此外還有 5 個(gè)開(kāi)始 初始化 待機(jī) 是否有卡插入 密碼效驗(yàn) 有 無(wú)按鍵 執(zhí)行相應(yīng)功能 顯示 16 功能鍵,分別為: ( 1) 修改 /確認(rèn)鍵,用來(lái)控制信息的改寫(xiě)及確認(rèn); ( 2) 賬號(hào)顯示鍵,用來(lái)控制用戶(hù)賬號(hào)信息的顯示; ( 3) 余額 /總數(shù)顯示鍵,用來(lái)控制余額或總數(shù)的顯示; ( 4) 計(jì)數(shù)開(kāi)始 /停止鍵,用來(lái)控制計(jì)數(shù)系統(tǒng)的計(jì)數(shù); ( 5) 備用鍵; ( 6) 備用鍵。所謂編程掃描就是 CPU 對(duì)鍵盤(pán)的掃描采取程序控制方式,一旦進(jìn)入鍵盤(pán)掃描狀態(tài)則反復(fù)地掃描鍵盤(pán),等待用戶(hù)從鍵盤(pán)上輸入命令或數(shù)據(jù)。鍵盤(pán)掃描子程序流程圖如圖53 所示。其方法為 口連續(xù) 16 次全輸出為“ 0”電平時(shí),讀 口行線電平狀態(tài),若行電平全為“ 1”電平,則鍵盤(pán)無(wú)鍵按下,若不為“ 1”電平,則有鍵按下。在鍵盤(pán)電路中,按鍵按下閉合后,將產(chǎn)生一個(gè)一個(gè)負(fù)的矩形脈沖。除了抖動(dòng)之外還有重鍵,即一個(gè)鍵按下后緊接著由按下另一鍵,或者兩個(gè)鍵同時(shí)按下。本系統(tǒng)采用軟件延時(shí)的方法來(lái)解決。其過(guò)程是在查詢(xún)到有按鍵按下后延時(shí)一段時(shí)間,一般為 10ms。若這次查詢(xún)不到,則說(shuō)明前一次查詢(xún)結(jié)果為干擾或抖動(dòng),若這次查詢(xún)到有鍵按下,則說(shuō)明信號(hào)已經(jīng)穩(wěn)定,然后判斷閉合按鍵的鍵碼。對(duì)于重鍵則以后一次查詢(xún)?yōu)樽詈蠼Y(jié)果。方法是 口連續(xù) 16 次輸出“ 1”電平,然后輸出一次“ 0”電平,同時(shí)進(jìn)行計(jì)數(shù)為 00H,若 口仍為“ 1”電平,則繼續(xù)連續(xù)輸出“ 1”電平進(jìn)行移位,并同時(shí)計(jì)數(shù),直到 口輸入的電平為“ 0”電平,表明此時(shí)的鍵即為按下的鍵,對(duì)應(yīng)的計(jì)數(shù)值即為鍵值,然后調(diào)用對(duì)應(yīng)的鍵處理子程序。 4) 表 41 鍵值與鍵號(hào)對(duì)應(yīng)表 鍵值 00H 01H 02H 03H 04H 05H 鍵號(hào) 0 1 2 3 4 5 鍵值 06H 07H 08H 09H 0AH 鍵號(hào) 6 7 8 9 . 鍵值 0BH 0CH 0DH 鍵號(hào) 修改 /確認(rèn) 賬號(hào)顯示 余額 /總數(shù) 鍵值 0EH 0FH 10H 鍵號(hào) 開(kāi)始 /停止 備用 備用 17 圖 42 鍵盤(pán)掃描流程圖 顯示子程序 讀卡器在運(yùn)行過(guò)程中,對(duì)用戶(hù)的信息進(jìn)行不斷改變,并寫(xiě)入 EEPROM 中。流程圖如圖 54 所示。另外,在軟件設(shè)計(jì)過(guò)程中,主要程序代碼使用 C 編寫(xiě),大大加快了開(kāi)發(fā)進(jìn)程與后期的可維護(hù)性提升。 C 語(yǔ)言為主,完成了相應(yīng)的軟件設(shè)計(jì),達(dá)到了預(yù)期的效果。實(shí)現(xiàn)了 IC 卡與單片機(jī)的通信,有 51 單片機(jī)控制數(shù)據(jù)傳輸過(guò)程,實(shí)現(xiàn)讀卡和寫(xiě)卡操作。 uchar Money_num[]={MONEY: . }。 uchar keynum=0xff。 sbit BEE =P3^4。 //延時(shí) 10ms void delay() { unsigned char i,j,k。i0。j0。k0。 } void delay_ms(unsigned int ms) { unsigned char i = 0。 23 for(。 j++) { for(i=0。 i++) } } void reckey(int i,char *int_buf) { char num。 if(xi) { num=key_switch()。 int_buf++。 } x++。 uchar Write_buf[4]。 uchar i。 uchar psw[3] = {0xff,0xff,0xff}。 //初始化 LCD ET0=1。 LED=1。 Print (1,0,wle!Please)。 while
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1