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

正文內(nèi)容

課程設(shè)計-基于at89s52單片機的液晶顯示電子密碼鎖的設(shè)計與實現(xiàn)-wenkub.com

2024-11-10 09:49 本頁面
   

【正文】 ******************************** 。16 字節(jié) MOV R5,08H 。24C02 首地址 LCALL READ 。******************************** AT_RD: PUSH PSW PUSH ACC MOV DPTR,SHOW_RD LCALL LCD LCALL T500MSD MOV R0,AT1 。保存輸入的新密碼 PUSH PSW PUSH ACC S_N: CLR C MOV A,R0 MOV R1,A DEC R0 DEC R1 DJNZ R2,S_N LCALL INITPS 。密碼錯誤,標(biāo)志位置 0 EXIT7: LCALL INITPS 。******************************** C_PSW: 。************ MOV P1, 0F0H NOP MOV A, P1 NOP 。第 0 列 JB ,LONE MOV R4, 00H AJMP RZER LONE: 。寫數(shù)據(jù)到指令寄存器 IR PUSH ACC PUSH PSW CLR RS CLR RW CLR E ACALL T10MSD SETB E POP PSW POP ACC RET WR_EN: 。******************************** LCD_WR: 。初始化密碼 PUSH ACC PUSH PSW MOV NEW1, 0FFH MOV NEW2, 0FFH MOV NEW3, 0FFH MOV NEW4, 0FFH MOV NEW5, 0FFH MOV NEW6, 0FFH MOV NEW7, 0FFH MOV NEW8, 0FFH MOV NEW9, 0FFH MOV NEW10, 0FFH MOV NEW11, 0FFH MOV NEW12, 0FFH MOV NEW13, 0FFH MOV NEW14, 0FFH MOV NEW15, 0FFH MOV NEW16, 0FFH CLR PS_NEW1 CLR PS_NEW2 POP PSW POP ACC NOP RET 。不能跟 PS一致,以免直接進行比較 PUSH ACC PUSH PSW MOV AT1, 0F0H MOV AT2, 0F0H MOV AT3, 0F0H MOV AT4, 0F0H MOV AT5, 0F0H MOV AT6, 0F0H MOV AT7, 0F0H MOV AT8, 0F0H MOV AT9, 0F0H MOV AT10, 0F0H MOV AT11, 0F0H MOV AT12, 0F0H MOV AT13, 0F0H MOV AT14, 0F0H MOV AT15, 0F0H MOV AT16, 0F0H POP PSW POP ACC NOP RET 。******************************** INITPS: 。******************************** PS_ERR: 。對比讀出密碼是否正確 。寫失敗則調(diào)用初始密碼 AJMP MATCH_EXIT RD_NEWP: LCALL AT_RD 。兩次密碼不一致 LCALL LCD LCALL SEC SETB AJMP MATCH_EXIT MATCH_R: 。******************************** PS_CH: 。錯誤幾次響幾聲 AJMP HOLDS D0: MOV R5,0AH 。R0 源地址 ,R1 目的地址 ,R2 位數(shù) MOV R2,10H MOV R0,PS1 MOV R1,AT1 LCALL C_PSW 。兩位及其以下密碼太短 JNB PS_NEW1,EN2 。超出緩沖區(qū) MOV DPTR,SHOW_TL LCALL LCD LCALL SEC AJMP RING DIG2: 。不起任何作用 。未設(shè)置功能的按鍵 CJNE R4, 0FH,RI_KEY_EN MOV BUFF, 0F4H AJMP ER_KEY RI_KEY_EN: 。密碼輸入一位,鳴叫一聲 LCALL T100MSD SETB LCALL T100MSD LCALL T100MSD MOV R4,BUFF 。識別到按鍵 則跳轉(zhuǎn) LCALL T100MSD AJMP MAIN 。檢查有沒有按鍵按下 JNZ LK1 。讀取AT24C02 中存儲的密碼 JB RD_F,SETLCD LCALL SETAT 。低電平開鎖 CLR 。清除屏幕 ,地址計數(shù)器AC=0,自動增一模式 LCALL ENABLE MOV P0,38H 。寄存器選擇輸入端 。LCD1602 控制位 E BIT 。新密碼第二次標(biāo)志位 PSW_F BIT 22H 。密碼輸入緩沖區(qū) PS1 EQU 6CH PS2 EQU 6BH PS3 EQU 6AH PS4 EQU 69H PS5 EQU 68H PS6 EQU 67H PS7 EQU 66H PS8 EQU 65H PS9 EQU 64H PS10 EQU 63H PS11 EQU 62H PS12 EQU 61H PS13 EQU 60H PS14 EQU 5FH PS15 EQU 5EH PS16 EQU 5DH 。******************************** BUFF EQU 6FH 。本系統(tǒng)發(fā)揮出單片機應(yīng)有的價值,完成了電子密碼鎖的基礎(chǔ)功能。如蜂鳴器發(fā)聲電路,可編寫程序控制單片機 口電平,上電運行看是否正常發(fā)聲。如果電源沒有濾波電容的話,則需要再接一個更大濾波電容,例如 220uF 的。另一個辦法是測量復(fù)位狀態(tài)下的 IO 口電平,按住復(fù)位鍵不放,然后測量 IO 口 (沒接外部上拉的 P0口除外 )的電壓,看是否是高電平,如果不是高電平,則多半 是因為晶振沒有起振。首先應(yīng)該確認(rèn)電源電壓是否正常,用電壓表測量接地引腳跟電源引腳之間的電壓,看是否是電源電壓。單片機系統(tǒng)的硬件調(diào)試和軟件調(diào)試是不能分開的,很多硬件錯誤是在軟件調(diào)試中被發(fā)現(xiàn)和糾正的。單片機再次接收到從器件的應(yīng)答信號后即可開始寫入信息。單片機發(fā)送起始信號,接著發(fā)送從器件 AT24C02所在地址 (0A0H)。再次接收到從器件的應(yīng)答信號后,單片機重新發(fā)送起始信號和讀模式信號,將 R/W 位置 1,對應(yīng)代碼為 0A1H,正式開始讀取信息。 如圖 411 所示,單片機作為主器件,發(fā)送起始信號和要尋址的從器件的地址;因為此時即隨后的發(fā)送讀取地址操作都是單片機往 AT24C02 寫入控制信息,所以 R/W 要置 0。每次送一個字符的 ASCII 碼入 P0口,然后寫入數(shù)據(jù)寄存器 DR,最后將字符地址加一, LCD1602 會將寫入的 ASCII 碼對應(yīng)的字符依次顯示出來。至于 BUFF 的重賦值,則在按鍵重定位中根據(jù)初值對應(yīng)修改。同理,在讀列線之前先給 P1口高 4 位送高電平,然后再讀出,低電平所在的列就是被按下的列。盡管進入子程序的前提條件是按鍵檢測子程序檢測到有按鍵被按下,但掃描前仍再次調(diào)用按鍵檢測子程序;因為人為按鍵的速度再快也會持續(xù)幾十毫秒,遠(yuǎn)遠(yuǎn)低于程序的處理速度,所以若是用戶正常按下按鍵,此處的按鍵檢測子程序仍可檢測到。如果 PSW_F=0,則表明讀出的密碼跟要用戶準(zhǔn)備修改的密碼不一致,密碼修改異常。然后查詢密碼正確標(biāo)志位 PSW_F,如果 PSW_F=1,則表明兩次輸入的新密碼一致,可以修改密碼,即可調(diào)用 AT24C02 寫子程序保存新密碼。 改密鍵處理 如圖 47,可以看出,改密鍵的處理流程跟開鎖鍵類似,都需檢查密碼正確的標(biāo)志位,只有 PSW_F 被置 1才可以進行改密 。如果 PSW_F=1,則前面輸入的密碼正確,可以開鎖。以下幾個按鍵的處理程序段開頭也有類似的 BUFF 值檢測,不再做贅述。 如果兩個標(biāo)志位均沒有被置 1,則沒有進行改密操作,程序進行密碼校驗,調(diào)用密碼校驗子程序判斷輸入密碼是否正確。輸入密碼完成后會按確認(rèn)鍵,但是輸入的密碼有三種情況:舊密碼,新密碼第一次,新密碼第二次,三種情況所做的操作也不一樣。因為密碼超長并不涉及其他功能鍵,在保存密碼之 前可判斷當(dāng)前密碼的長度。后面沒有輸入的位填充默認(rèn)值 0FFH。確認(rèn)鍵處理當(dāng)確認(rèn)鍵按下后的程序流程,開鎖鍵處理當(dāng)開鎖鍵按下后的準(zhǔn)備開鎖流程,改密處理當(dāng)確認(rèn)鍵按下后的預(yù)備修改密碼流程,稍后將分別詳細(xì)介紹。 如果 BUFF 的值是 0, 1, 2, 4, 5, 6, 8, 9, D 中的一個,則按鍵是屬于數(shù)字鍵。剩下的 6 個按鍵為功能按鍵,各鍵位對應(yīng)的功能設(shè)定如表 43。實際程序運行時,絕大部分時間都在測試按鍵,等待用戶輸入。 系統(tǒng)初始化并讀取密碼完成后,液晶顯示 Password:,提示用戶可以輸入密碼。由于用戶在使用系統(tǒng)的過程中,可能在任何時刻按下任何按鍵,而程序都必須對此作出正確響應(yīng)。燒寫需要的設(shè)備是燒寫器和配套軟件 Superpro280,將單片機引腳放入燒寫器并卡緊,打開燒寫器,打開軟件,選定單片機的型號, AT89S52。當(dāng)然也可以直接在 Keil中編碼。這兩個電容叫晶振的負(fù)載電容,它是根據(jù)晶振廠家提供的晶振要求負(fù)載電容選值的;換句話說,晶振的頻率就是在它提供的負(fù)載電容下測得的,能最大限度的保證頻率值的誤差,也能保證溫漂等誤差。在通常工作條件下,普通的晶振頻率絕對精度可達百萬分之五十,高級的精度更高。 晶振電路 單片機本身是一個復(fù)雜的同步時序電路,為保證同步工作方式的實現(xiàn),必須提供時鐘信號,以使其系統(tǒng)在時鐘信號的控制下按時序協(xié)調(diào)工作。 復(fù)位電路的基本功能是:系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng) 電源 穩(wěn)定后,撤銷復(fù)位信號。如果復(fù)位電路可靠性較差,將直接影響到整個單片機系統(tǒng)工作的穩(wěn)定性,造成系統(tǒng)調(diào)試成功后出現(xiàn)死機或“程序跑飛”等現(xiàn)象。然后進行列掃描,同理可識別出按鍵所在列。通過行列掃描檢測出這兩位,即可識別出被按下的鍵。這樣即便單片機掉電,重啟后仍能讀取用戶密碼,從而達到掉電存儲的目的。 AT24C02 只需要串行時鐘 SCL引腳接 ,串行數(shù)據(jù) /地址 SDA 引腳接 ,即可完成數(shù)據(jù)和指令的傳送,比起并 行傳輸節(jié)省 I/O 口資源。 WP:寫保護。 SDA:雙向串行數(shù)據(jù) /地址管腳,用于器件所有數(shù)據(jù)的發(fā)送或接收。 AT24C02 簡介 AT24C02是美國 Atmel公司的低功耗 CMOS型 E2PROM,內(nèi)含 256*8位存儲空間,具有工作電壓寬 (~),擦寫次數(shù)多 (大于 10000 次 ),寫入速度快 (小于 10ms),抗干擾能力強,數(shù)據(jù)不易丟失,體積小等特點。繼電器便能完成這一橋梁作用。 開鎖控制電路 開鎖控制電路如 圖 37,電路的功能就是在輸入正確的密碼后開鎖。其發(fā)聲原理是電流通過電磁線圈,使電磁線圈產(chǎn)生磁場來驅(qū)動振動膜發(fā)聲的,因此需要一定的電流才能驅(qū)動它。背光電源線 LCD 正負(fù)兩端分別接電源和地即可。 圖 33 LCD1602 引腳圖 圖 35 液晶顯示電路圖 6 ~ 接 1602 控制端,其中 接使能端 E,寫操作時,使能端下降沿有效。 BLK:背光的負(fù)端 0V。 E:使能信號輸入端。 RS=1,無論進行讀操作還是寫操作均指向數(shù)據(jù)寄存器。 V0: LCD 驅(qū)動電壓,液晶顯示器對比度調(diào)整端。 模塊最佳工作電壓: 。本設(shè)計中采用帶背光 16 引腳線 的。所以, HD44780 主要適用于顯示西文 ASCII 字符內(nèi)容的液晶顯示 。高 128 字節(jié) 與特殊功能寄存器重疊。 AT89S52 有單獨的程序存儲器和數(shù)據(jù)存儲器,外部程序存儲器和數(shù)據(jù)存儲器都可以 64K 尋址。當(dāng) AT89S52 從外部程序存儲器執(zhí)行外部代碼時, PSEN 在每個機器周期被激活兩次,而在訪問外部數(shù)據(jù)存儲器時, PSEN 將不被激活。為了執(zhí)行內(nèi)部程序指令, EA 應(yīng)該接 VCC。特殊寄存器 AUXR(地址 8EH)上的 DISRTO 位可以使此功能無效。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流。對 P2端口寫 1時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。 P1口: P1口是一個具有內(nèi)部上拉電阻的 8 位雙向 I/O 口,P1輸出緩沖器能驅(qū)動 4 個 TTL 邏輯電平。本設(shè)計中接電源負(fù)極。 AT89S52 具有以下標(biāo)準(zhǔn)功能: 8K 字節(jié) Flash, 256 字節(jié) RAM, 32 位 I/O 口線,看門狗定時器, 2 個數(shù)據(jù)指針,三個 16 位定時器 /計數(shù)器,一個 6 向量 2 級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時鐘電路。系統(tǒng)原理電路圖如圖 31 所示。液晶顯示器選用 1602,可以顯示兩行,每行 16 個字符。開鎖電路部分是控制繼電器,只有密碼正確并選擇開鎖后,繼電器內(nèi)部的電磁鐵才會吸合,發(fā)光二極管電路連通后發(fā)光,表示鎖已打開
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1