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

正文內(nèi)容

基于51單片機(jī)的ic卡讀寫系統(tǒng)設(shè)計(jì)-文庫(kù)吧資料

2024-10-16 03:01本頁(yè)面
  

【正文】 0x93 //扣錢 define change_psw 0x95 //修改密碼 define change_id 0x96 //修改卡號(hào) define FLAG_RD_OK 0x97 //上傳的數(shù)據(jù) ,表示讀卡完畢 define FLAG_WR_OK 0x98 //上傳的數(shù)據(jù) ,表示寫卡完畢 define FLAG_RD_ER 0x99 //上傳的數(shù)據(jù) ,表示讀卡錯(cuò)誤 define FLAG_WR_ER 0xa0 //上傳的數(shù)據(jù) ,表示寫卡錯(cuò)誤 define FLAG_NO_MONEY 0xa1 //卡上金額不足 define FLAG_FULL_MONEY 0xa2 //卡上金額過(guò)多 define FLAG_PSW_ER 0xa3 //密碼錯(cuò)誤 define FLAG_CARD_LOCK 0xa4 //卡已鎖死 define FLAG_CARD_ER 0xa5 //卡無(wú)效 define addr_money 0x0f //金額 0f~10 define addr_mon_h 0x0f //錢的高位地址 define addr_mon_l 0x10 uchar Card_num[]={ID: }。 51 單片機(jī)的 IC 卡讀寫器的設(shè)計(jì):以 51 單片機(jī)為核心,結(jié)合 AT24C02 作為外部存儲(chǔ)器,存放關(guān)鍵信息,液晶 SMG12232B2 作為顯示系統(tǒng)。設(shè)計(jì)主要完成了以下工作: 8051 單片機(jī)的性 能特點(diǎn)、開(kāi)發(fā)工具和應(yīng)用領(lǐng)域 2. 使用 PROTEL 軟件繪制完成了系統(tǒng)完整的電路圖,實(shí)現(xiàn)了基于 51 單片機(jī)的 IC 卡讀寫器的設(shè)計(jì)。 開(kāi)始 調(diào)用鍵盤程序 判斷 是否 按鍵 功能 數(shù)字 返回 18 圖 43 顯示子程序流程圖 開(kāi)始 LCD 初始化 清屏 從 緩沖區(qū)中顯示 用戶信息 顯示用戶信息 返回 19 總結(jié) 在了解研究 8051 單片機(jī)的結(jié)構(gòu)特點(diǎn)及其相關(guān)的設(shè)計(jì)實(shí)例后,本次設(shè)計(jì)充分利用其相關(guān)的功能,開(kāi)發(fā)設(shè)計(jì)了 IC 卡讀寫器。當(dāng)用戶需要查詢 IC 卡的運(yùn)行狀態(tài)時(shí) ,只需按動(dòng)顯示按鈕,即可顯示用戶的帳號(hào)信息、帳號(hào)余額、計(jì)數(shù)值等信息。鍵值與鍵號(hào)的對(duì)應(yīng)關(guān)系如表 51 所示。 3) 掃描鍵盤,得到按下的鍵的鍵值。當(dāng)閉合按鍵地鍵碼確定之后,再去查詢按鍵是否釋放,待按鍵釋放后再進(jìn)行處理,這樣 既可消除釋放抖動(dòng)的干擾。再查詢一次看是否有鍵按下。通過(guò)延時(shí)來(lái)等待信號(hào)穩(wěn)定,在信號(hào)穩(wěn)定后查詢鍵碼。這些需要采取一定的措施加以消除。但由于在按動(dòng)按鍵時(shí)總有一些抖動(dòng),因此在負(fù)脈沖的開(kāi)始和末尾部位總要出現(xiàn)一些毛齒波,毛齒 波的長(zhǎng)短與開(kāi)關(guān)的機(jī)械特性有關(guān),一般為 5~ 10ms。 2) 取出鍵抖動(dòng)及重鍵的影響。圖中可見(jiàn),鍵盤掃描子程序要完成以下的功能: 1) 判斷鍵盤上有無(wú)鍵按下。 而在執(zhí)行鍵入命令或處理鍵入數(shù)據(jù)的過(guò)程中, CPU 不再響應(yīng)鍵入要求,直到 CPU 返回重新掃描鍵盤為止。 此讀寫系統(tǒng)中,鍵盤采用編程掃描方式。 //設(shè)置節(jié)電工作方式 do{ }while(1)。 //外部中斷 0 開(kāi)中斷 EA=1。 //修改標(biāo)志位 } ITO=1。 //指針定義 if(consl==0) //判斷是否剛上電狀態(tài) { p=cons2。 主程序如下 : include //頭文件 define uint unsigned int define uchar unsigned char define addrl 0x40 uint data consl。 主程序 主程序主要完成初始化并檢測(cè)系統(tǒng)的狀態(tài),如果是剛上電狀態(tài),則恢復(fù)掉電瞬間保存的數(shù)據(jù)。本設(shè)計(jì)的所有程序用 C51 語(yǔ)言編寫,由主程序和子程序組成。 圖 49 是單片機(jī)與顯示器的接口電路。 LCD 是一種極低功耗顯示器,目前,高分辨率的 LCD 點(diǎn)陣式顯示器有顯示靈活,顯示圖型字符美觀等優(yōu)點(diǎn),在很多系統(tǒng)中應(yīng)用非常廣泛。熒光顯示器。掃描信號(hào)通過(guò) 74LS164移位,實(shí)現(xiàn)逐列置低電平,達(dá)到掃描各鍵的目的。 因而選用 ,上拉電阻保證了沒(méi)有鍵輸入時(shí), I/O 口線上有確定的高電平輸入。圖 48 為鍵盤與單片機(jī)的接口電路。 圖 33 串行通信電路 鍵盤電路 由于需要 16 個(gè)按鍵,采用并行接口的鍵盤電路至少需要 4+4=8 條 I/O 線,而串行接口的鍵盤電路只需要 3 條 I/O 口線,一條用作鍵盤行線,一條串行移位輸出列掃描信號(hào),另一條用作移位寄存器 74LS164的移位時(shí)鐘脈沖信號(hào)線。 12V,而單片機(jī)的工作電壓為 5V,所以需要 MAX232接口芯片實(shí)現(xiàn) TTL 與RS232 電平轉(zhuǎn)換,采用簡(jiǎn)單的 3 線制通信方式。數(shù)據(jù)的讀出過(guò)程可分為三個(gè) 基本過(guò)程 :復(fù)位,數(shù)據(jù)字段的定位和數(shù)據(jù)讀出。復(fù)位之后的頭 32 個(gè)時(shí)鐘周期內(nèi),是卡的復(fù)位響應(yīng)過(guò)程,該過(guò)程中,廠家的產(chǎn)品編碼以位編碼方式逐一在數(shù)據(jù)線上送出,以后的字段則根據(jù)廠家及用戶所定義的含義不同而各不相同。大多數(shù)符合ISO7816 標(biāo)準(zhǔn)的同步型 IC 卡的地址計(jì)數(shù)器是與時(shí)鐘緊密相關(guān)的,當(dāng)卡復(fù)位時(shí),地址計(jì)數(shù)器置 0。給卡下電 RET 2)IC 卡的讀寫技術(shù) 不同類型的 IC 卡其讀寫方式或數(shù)據(jù)協(xié)議方式是不同的, ISO7816 標(biāo)準(zhǔn)對(duì)異步型 IC 卡的讀寫協(xié)議做了較充分的定義,而對(duì)于同步型 IC 卡,則只定義了其復(fù)位響應(yīng)過(guò)程的協(xié)議標(biāo)準(zhǔn),這使得各廠家設(shè)計(jì)的同步型IC 卡的讀寫方式不盡相同,而且同步型 IC 卡接口協(xié)議是面向操作而進(jìn)行的,因此,其操作協(xié)議方式也各不相同。使 I/O=L LCALL DELAY_500us 。使 RST=L CLR CLK 。使 I/O 端口為高電平,準(zhǔn)備接受數(shù)據(jù) RET POWER_OFF: 。延遲 ,使端口邏輯信號(hào)穩(wěn)定 CLR POWER 。使 RST=L CLR CLK 。上電控制 LCALL RE_DETECT 。 ISO78163 標(biāo)準(zhǔn)規(guī)定的操作順序如下 : IC 卡的激活 (上電過(guò)程 ): 10 —— RST 處于 L 狀態(tài) —— VCC 供電 —— 接口設(shè)備處于接收方式 —— Vpp上升為空閑狀態(tài) —— CLK 由相應(yīng)穩(wěn)定的時(shí)鐘提供 IC 卡的去激活過(guò)程 (下電過(guò)程 ): —— RST 為狀態(tài) L —— CLK 為狀態(tài) L —— Vpp 不起作用 —— I/O 為狀態(tài) A —— VCC 關(guān)閉 由于 IC 卡技術(shù)的進(jìn)步,現(xiàn)在的 IC 卡事實(shí)上都 己使用卡內(nèi)自帶升壓電路,因此 Vpp控制已逐漸失去具體含義。有卡插入,進(jìn)行處理 IC 卡的供電控 制是一個(gè)直接涉及是否能安全可靠地操作 IC 卡的過(guò)程。延時(shí) 5ms MOV C,IC_SW JNC RE_DETECT 。輸出高電平至檢測(cè)端 JNC RE_ DETECT 。為了確保 IC 卡已準(zhǔn)確地插到位置,插入的識(shí)別過(guò)程必須加入消顫處理。 1) IC 卡的插入 /退出識(shí)別與上電 /下電控制技術(shù) IC 卡的插入與退出的識(shí)別是通過(guò) IC 卡接口電路來(lái)識(shí)別的 ,如果卡己插入到正確位置,且卡是合法卡,則置 為 0, VT2 導(dǎo)通,圖 46 中的 LED 點(diǎn)亮。 IC 卡的 VCC 同時(shí)經(jīng) VD2 送至 CPU 的 ,檢測(cè)有無(wú)卡電源短路現(xiàn)象,以防人為破環(huán)。當(dāng) 8051 的 =0 時(shí), VT1 導(dǎo)通, IC 卡的 VCC 得電;當(dāng) 8051 的 =1時(shí), VT1 截止, IC 卡的 VCC 失電。下圖 42所示是 IC 卡接口電路。如果插入的是一張電源與地?fù)舸┑膲目?,或是一個(gè)金屬片之類的物質(zhì),就會(huì)造成供電回路的短路現(xiàn)象,若 IC 卡接口設(shè)備中無(wú)過(guò)流保護(hù)回路,就會(huì)干擾整個(gè)設(shè)備的正常工作。 圖 AT89C51 最小系統(tǒng) 接觸式 IC卡的接口電路 IC 卡的接口電路是連接 IC 卡與讀寫設(shè)備的通路,由它實(shí)現(xiàn)對(duì) IC 卡的供電,并滿足不帶電插拔的要求。 與 口通過(guò)一串入并出的74LS164 與所有 LED 的 a, b, c, d, e, f, g, sp 引線相連, P2 口接 LED 的控制端,單片機(jī)通過(guò) P3 口控制各 LED 是否點(diǎn)亮。單片機(jī)對(duì)鍵盤進(jìn)行行列掃描讀取鍵 值。整個(gè)系統(tǒng)電路設(shè)計(jì)如下: ( 1)按鍵 S17,電容 C8,電阻 R13 構(gòu)成單片機(jī)的人工復(fù)位裝置;兩個(gè) 30pF 的電容, 12M 的晶振構(gòu)成單片機(jī)的振蕩電路。 ? 提供數(shù)據(jù)通訊接口與上位機(jī)進(jìn)行數(shù)據(jù)通訊。 ? 提供相應(yīng)的外部控制信息及其它設(shè)備的信息交換。 ? 實(shí)現(xiàn)與卡的數(shù)據(jù)交換,并提供相應(yīng)的控制信號(hào)。 圖 31 總體框圖 IC 卡接口設(shè)備的種類很多,功能上由于不同的應(yīng)用需要,差別也很大,但就其對(duì)卡 (以接觸式卡為例 )的操作功能來(lái)說(shuō),都應(yīng)具備以下幾個(gè)基本功能 : ? IC 卡的插入 /退出的識(shí)別與控制 (接觸式卡 ):IC 卡進(jìn) /出 RF 區(qū)的識(shí)別和控制 (非接觸式卡 )。通過(guò)讀寫器插槽與 IC 卡芯片通信,由 51 單片機(jī)控制數(shù)據(jù)傳輸過(guò)程,實(shí)現(xiàn)讀卡和寫卡操作。在整個(gè)處理過(guò)程中I/O 線被鎖定成低狀態(tài)。芯片在第一個(gè)時(shí)鐘脈沖的下降沿將 I/O 從 H 狀態(tài)拉為 L 狀態(tài)并開(kāi)始處理。 圖 23 輸出數(shù)據(jù)模式的時(shí)序關(guān)系 4) 處理數(shù)據(jù)模式 :這種模式是對(duì) IC 卡芯片做內(nèi)部處理。當(dāng)所需要的最后一個(gè)數(shù)據(jù)送出以后,需要再附加一個(gè)時(shí)鐘脈沖來(lái)把 I/O 線置成 H 狀態(tài),以便準(zhǔn)備接受新的命令。隨后每增加一個(gè)時(shí)鐘脈沖,芯片內(nèi)部的一位數(shù)據(jù)被送到 I/O 線上。圖 33 為輸出數(shù)據(jù)模式的時(shí)序關(guān)系。 在接受一個(gè)命令之后,有兩種可能的模式 :輸出數(shù)據(jù)模式 (即讀數(shù)據(jù)模式 )和處理數(shù)據(jù)模式。 啟動(dòng)狀態(tài) :在 CLK 為 H 狀態(tài)期間, I/O 線的下降沿為啟動(dòng)狀態(tài)。隨后緊跟著一個(gè)附加脈沖并用一個(gè)“停止?fàn)顟B(tài)”來(lái)結(jié)束操作。每條命令都以一 個(gè)“啟動(dòng)狀態(tài)”開(kāi)始。 在復(fù)位響應(yīng)期間,“啟動(dòng)”和“停止” (見(jiàn)下面 )狀態(tài)被忽略。在第 33 個(gè)時(shí)鐘脈沖的下降沿, I/O 線被置成 H 狀態(tài)而關(guān)閉。當(dāng) RST 線從 H 狀態(tài)置到 L 狀態(tài)時(shí),第一個(gè)數(shù)據(jù)位的內(nèi)容被送到 I/O 線上。 傳送協(xié)議包括 4 種模式 : ? 復(fù)位和復(fù)位響應(yīng) ? 命令模式 ? 輸出數(shù)據(jù)模式 ? 處理模式 1)復(fù)位和復(fù)位響應(yīng) : 復(fù)位響應(yīng)是根據(jù) ISO 78163 標(biāo)準(zhǔn)來(lái)進(jìn)行的。 芯片傳送協(xié)議 傳送協(xié)議是在接口設(shè)備 IFD 與 IC 卡的集成電路之間的兩線連接協(xié)議, SLE4442 芯片的協(xié)議類型為S=10(同步卡協(xié)議 )。而“寫入、擦除” 5 操作也受自身“比較”操作結(jié)果的控制。這 3 個(gè)字節(jié)的內(nèi)容作為一個(gè)整體披稱為可編程加密代碼 (PSC)。當(dāng)密碼計(jì)數(shù)器減數(shù)為零,則芯片的存儲(chǔ)單元將全部鎖死。如果比較結(jié)果不一致,則密碼錯(cuò)誤計(jì)數(shù)器中為“ 1”的個(gè)數(shù)將減少一位。如果還有“ 1”,則將其中 一個(gè)“ 1”寫成“ 0”,然后進(jìn)行比較“校驗(yàn)字”操作。這一字節(jié)是可讀的。密碼輸入錯(cuò)誤計(jì)數(shù)器的有效位是低 3 位。 3)加密存儲(chǔ)器 :加密存儲(chǔ)器是一個(gè) 4 8 位的 EEPROM 型存儲(chǔ)器。當(dāng)輸入的“校驗(yàn)字”與芯片內(nèi)的“參照字”‘一致,則可以執(zhí)行后續(xù)的寫入操作。保護(hù)存儲(chǔ)器本身的讀出操作不受限制。保護(hù)存儲(chǔ)器每個(gè)被寫“ 0”的單元所對(duì)應(yīng)控制的主存儲(chǔ)器的字節(jié)單元將不再接收任何擦除和寫入命令,從而使得該字節(jié)單元的數(shù)據(jù)不可再改變。從出廠到被初始化之前,保護(hù)存儲(chǔ)器的狀態(tài)為全“ 1”。保護(hù)存儲(chǔ)器從 0~32 的每一位對(duì)應(yīng)著主存儲(chǔ)器地址從 0 到 31 的字節(jié)。 2)保護(hù)存儲(chǔ)器是一個(gè) 32 1 位的一次性可編程只讀存儲(chǔ)器( PROM)。這時(shí)整個(gè)主存儲(chǔ)器變成一個(gè)只讀存儲(chǔ)器。芯片允許在有限的次數(shù)內(nèi)重試比較操作。這個(gè)新輸入的“校驗(yàn)字”與原來(lái)存在在加密存儲(chǔ)器中的“參照字”進(jìn)行一對(duì)一的比較。其地址從 32(20H)到 255(FFH).這部分的數(shù)據(jù)讀出不受限制,但擦除和寫入受控于加密存儲(chǔ)器數(shù)據(jù)校驗(yàn)比較結(jié)果的影響。故保護(hù)數(shù)據(jù)區(qū)一般均作為 IC 卡的標(biāo)識(shí)數(shù)據(jù)區(qū),存放一些固定不變的標(biāo)識(shí)參數(shù)。其地址是從 0(00H)到 31(1FH)這部分的數(shù)據(jù)讀出不受限制,但擦除和寫入操作均受到保護(hù)存儲(chǔ)器內(nèi)部數(shù)據(jù)狀態(tài)的限制。 主存儲(chǔ)器的地址是從 00H 到 FFH。如果在被尋址的字節(jié)中 8 位沒(méi)有
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1