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

正文內(nèi)容

基于單片機(jī)的電子密碼鎖畢業(yè)論文設(shè)計(jì)(編輯修改稿)

2025-07-24 20:01 本頁面
 

【文章內(nèi)容簡介】 T腳持續(xù)兩個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。: 復(fù)位部分電路報(bào)警部分報(bào)警部分是由陶瓷壓電發(fā)聲裝置及外圍電路組成。當(dāng)密碼輸入不正確是會(huì)發(fā)出警報(bào)。: 報(bào)警電路 晶振部分本部分是為單片機(jī)提供時(shí)鐘控制信號(hào),采用的電路是外接晶振和電容組成的并聯(lián)諧振回路。AT89S52引腳XTAL1和XTAL2與晶體振蕩器及電容CC1按圖47所示方式連接。晶振、電容CC2及片內(nèi)與非門(作為反饋、放大元件)構(gòu)成了電容三點(diǎn)式振蕩器,振蕩信號(hào)頻率與晶振頻率及電容CC2的容量有關(guān),但主要由晶振頻率決定,范圍在0~33MHz之間,電容CC2取值范圍在5~30pF之間。根據(jù)實(shí)際情況,本設(shè)計(jì)中采用12MHZ做為系統(tǒng)的外部晶振。電容取值為20pF。: 晶振部分電路開鎖部分當(dāng)輸入正確的密碼的時(shí)候,單片機(jī)的其中一個(gè)引腳線發(fā)出信號(hào),經(jīng)過三極管放大后,由繼電器驅(qū)動(dòng)電磁閥動(dòng)作將鎖打開。同時(shí)綠色的指示燈將會(huì)點(diǎn)亮。: 開鎖電路 電子密碼鎖的電路原理圖根據(jù)系統(tǒng)所需要實(shí)現(xiàn)的功能,: 電子密碼鎖的電路原理圖4電子密碼鎖的軟件組成 本設(shè)計(jì)的軟件程序設(shè)計(jì)主要有(1)初始化程序(2)按鍵功能實(shí)現(xiàn)程序 (3)密碼修改程序(4)報(bào)警程序等組成。: 開始初始化,設(shè)置密碼等待輸入計(jì)算鍵值是CLR?是否是確認(rèn)鍵?否存鍵值首次按鍵?已輸6位?是否否密碼右移是計(jì)數(shù)值減1報(bào)警是是否比較密碼正確?開鎖密碼左移計(jì)數(shù)值加1 系統(tǒng)的總體流程圖 Keil uVision2軟件介紹單片機(jī)開發(fā)中除必要的硬件外,同樣離不開軟件,本系統(tǒng)的軟件編程設(shè)計(jì)是在Keil軟件環(huán)境中完成的。我們寫的C語言、匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過匯編軟件將源程序變?yōu)闄C(jī)器碼,用于MCS51單片機(jī)的匯編軟件有早期的A51,隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級(jí)語言開發(fā),單片機(jī)的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)51系列單片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。掌握這一軟件的使用對(duì)于使用51系列單片機(jī)的愛好者來說是十分必要的,如果使用C語言編程,那么Keil幾乎就是不二之選。即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令人事半功倍。Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會(huì)更加深刻。Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語言的優(yōu)勢(shì)。電子密碼鎖系統(tǒng)在接通電源后,首先要對(duì)系統(tǒng)進(jìn)行初始化。初始化過程包括密碼鎖上鎖,密碼的讀入,LED數(shù)碼管的顯示內(nèi)容初始化,設(shè)定系統(tǒng)狀態(tài)指示等。:初始化開始載入預(yù)設(shè)密碼至系統(tǒng)內(nèi)存系統(tǒng)上鎖并設(shè)定狀態(tài)指示燈設(shè)定顯示器為等待輸入狀態(tài)用戶輸入密碼區(qū)清零初始化定時(shí)器0 初始化程序設(shè)計(jì)流程圖初始化程序如下:ORG 0000HLJMP FIRSTORG 000BHLJMP INT_T0ORG 0100HFIRST: MOV SET_TIMES,0 ;新密碼輸入次數(shù)清零從24C01C中讀數(shù)據(jù),數(shù)據(jù)送AT89C51中38H開始的16個(gè)字節(jié)中MOV SLA,0A0H ;寫入控制字MOV SUBA,00H ;目標(biāo)地址MOV NUMBYTE,6 ;寫入的字節(jié)數(shù)LCALL IRDNBYTE ;開始寫數(shù)據(jù)BEGIN:MOV CNT_ERROR,00H ;密碼錯(cuò)誤次數(shù)清零START:CLR LED_YELLOW ;上鎖指示燈SETB LED_GREEN ;開鎖指示燈滅SETB LED_RED ;密碼錯(cuò)誤指示燈滅MOV KEY_CNT_SET,00HMOV CNT_A,00H MOV CNT_B,00HMOV KEY_CNT,00HMOV LINE,00HMOV ROW,00HMOV VAL,00HMOV WORD_ADRESS,4CHMOV LED_BIT_1,0AH ;數(shù)碼管全MOV LED_BIT_2,0AHMOV LED_BIT_3,0AHMOV LED_BIT_4,0AHMOV LED_BIT_5,0AHMOV LED_BIT_6,0AHMOV KEY_1,00H ;輸入密碼存儲(chǔ)區(qū)清0MOV KEY_2,00HMOV KEY_3,00HMOV KEY_4,00HMOV KEY_5,00HMOV KEY_6,00HMOV TMOD,01H ;初始化定時(shí)器T0MOV TH0,(65536700)/256MOV TL0,(65536700)MOD 256 MOV IE,82H (介紹)鍵功能程序鍵值=‘0-9’?鍵值=‘開鎖’?鍵值=‘清除’?鍵值=‘設(shè)置’?鍵值=‘確認(rèn)’?密碼輸入程序設(shè)置程序清除程序開鎖程序確認(rèn)程序是是是是是否否否否返回否 按鍵處理程序流程圖按鍵處理程序如下:A0: NOPLSCAN: MOV P1,0F0H ;掃描行碼,把四條“行”線置成低電平 L1: JNB ,L2 ;檢測(cè)第一行是否有鍵按下 LCALL DLY_S ;消除鍵盤抖動(dòng) JNB ,L2 ;確認(rèn)第一行有鍵按下 MOV LINE,00H ;把值送到指定內(nèi)存,等待計(jì)算 LJMP RSCAN ;跳轉(zhuǎn)到鍵值計(jì)算部分 L2: JNB ,L3 LCALL DLY_S JNB ,L3 MOV LINE,01H LJMP RSCAN L3: JNB ,L4 LCALL DLY_SJNB ,L4 MOV LINE,02H LJMP RSCAN L4: JNB ,a0 LCALL DLY_S JNB ,a0 MOV LINE,03HRSCAN: MOV P1,0FH ;掃描列碼 C1: JNB ,C2 MOV ROW,00H LJMP CALCU C2: JNB ,C3 MOV ROW,01H LJMP CALCU C3: JNB ,C4 MOV ROW,02H LJMP CALCU C4: JNB ,C1 MOV ROW,03H LJMP CALCUCALCU: MOV A,LINE ;計(jì)算鍵值 MOV B,04H MUL AB ADD A,ROW MOV VAL,A ;把鍵值存入VAL單元CJNE A,0AH,J1 ;是否為CLR鍵 JNB LED_GREEN,CLR_KEY ;檢測(cè)是否已開鎖MOV R1,KEY_CNT CJNE R1,00H,J2 ;判斷已按鍵次數(shù)為零? LCALL ALARM_1 ;調(diào)用報(bào)警子程序 LCALL FALSE ;數(shù)碼管顯示“FALSE”LJMP STARTCLR_KEY: LCALL ALARM_1 ;鎖開狀態(tài)下,按CLR的處理方法,調(diào)用報(bào)警子程序 LCALL FALSE ;顯示“FALSE”LJMP A1 J2:LCALL SHIFTR ;顯示內(nèi)容右移一位 DEC KEY_CNTLCALL BCD LCALL DISP ;等待按鍵抬起 W00:LCALL DLY_1S MOV A,P1 CJNE A,0FH,W01 LJMP A0 W01:MOV A ,P1 CJNE A,0F0H,W02 LJMP A0 W02:SJMP W00 J1:MOV A,VAL CJNE A,0CH,J11 ;是否為SET鍵 LCALL DLY_SJB LED_GREEN,SET_ERROR …… J11:MOV A,VALCJNE A,0DH,J22 ;是否為LOCK鍵LCALL DLY_SJNB LED_GREEN,LOCK ……J22:MOV A,VAL CJNE A,0BH,J3_TEMP 。是否為ENTER鍵 LJMP TTTTTTJ3_TEMP: LJMP J3 ……密碼鎖的密碼就相當(dāng)于我們?nèi)粘I钪杏玫降蔫€匙,而電子密碼鎖可以根據(jù)用戶的需要,隨時(shí)更改原有的密碼,來提高密碼鎖的安全性,密碼修改功能是保證密碼鎖有效的重要保障。在密碼修改子程序中,用戶只有在開鎖狀態(tài)下才能進(jìn)行修改,即要求用戶知道原有的密碼,否則無法打開密碼鎖,更無法修改其密碼。:有按鍵按下?操作錯(cuò)誤,報(bào)警否是否是否計(jì)算鍵值,存儲(chǔ)新密碼輸入完?兩次輸入并一致?是存儲(chǔ)密碼 密碼更改程序設(shè)計(jì)流程圖密碼更改程序如下:SET_P:CLR LED_GREEN 。更改系統(tǒng)狀態(tài)及屏幕顯示內(nèi)容 SETB LED_YELLOW SETB LED_REDMOV LED_BIT_1,0CH ;關(guān)閉全部數(shù)碼管 MOV LED_BIT_2,0CH MOV LED_BIT_3,0CH MOV LED_BIT_4,0CH MOV LED_BIT_5,0CH MOV LED_BIT_6,0CH LCALL BCD LCALL DISPA0_SET: NOP ;按鍵檢測(cè)并計(jì)算鍵值存放在VAL單元……. ;按鍵處理部分CJNE A,02H,TIMES1 ;判斷是否已輸入兩次新密碼LCALL DLY_1S MOV A,WORD_6 。逐位比較密碼,不一致則重新設(shè)置 CJNE A,KEY_1,J_RSET MOV R0,59H MOV @R0,33H MOV A,WORD_5 CJNE A,KEY_2,J_RSET MOV A,WORD_4 CJNE A,KEY_3,J_RSET MOV A,WORD_3 CJNE A,KEY_4,J_RSET MOV A,WORD_2 CJNE A,KEY_5,J_RSET MOV A,WORD_1 CJNE A,KEY_6,J_RSET向24C01C中寫數(shù)據(jù),數(shù)據(jù)存放在24C01C中4CH開始的16個(gè)字節(jié)中 ……TIMES1:MOV R0,WORD_1SET ;第一次新密碼暫存內(nèi)存中 MOV WORD_1 , @R0 MOV R0,WORD_2SET MOV WORD_2 , @R0 MOV R0,WORD_3SET MOV WORD_3 , @R0 MOV R0,WORD_4SET MOV WORD_4 , @R0 MOV R0,WORD_5SET MOV WORD_5 , @R0 MOV R0,WORD_6SET MOV WORD_6 , @R0 LCALL DLY_1S 。加延時(shí)程序 ……5系統(tǒng)仿真開始時(shí)的數(shù)碼管顯示“”,等待輸入密碼。: 數(shù)碼管顯示密碼輸入時(shí)顯示F并依次左移,如密碼輸入錯(cuò)誤可以使用“clr”鍵進(jìn)行清除,然后可以從新輸入。: 數(shù)碼管顯示F密碼輸入正確時(shí),數(shù)碼管顯示簡單的便是“pass”,同時(shí)綠色指示燈亮起,開鎖電路運(yùn)行,鎖被打開。: 數(shù)碼管顯pass本次設(shè)計(jì)的密碼鎖的密碼為數(shù)6位,當(dāng)密碼的位數(shù)少于或者多于6位的時(shí)候,數(shù)碼管上將提示“false”。: 密碼是輸入錯(cuò)誤時(shí),數(shù)碼管提示“error 1”,如果繼續(xù)輸入第二次、第三次錯(cuò)誤的時(shí),數(shù)碼管將提示“error 2”和“error 3”,同時(shí)報(bào)警器報(bào)警提示,紅色指示燈閃爍,鍵盤鎖死,防止繼續(xù)操作。:當(dāng)需要關(guān)閉密碼鎖的時(shí)候,直接按下鍵盤上的“l(fā)ock”鍵即可鎖定。數(shù)碼管恢復(fù)初
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1