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

正文內(nèi)容

電子密碼鎖總體設(shè)計方案-文庫吧

2025-04-10 13:39 本頁面


【正文】 期間外部程序存儲器,不管是否有內(nèi)部程序存儲器。當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。 XTAL1: 反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。其中,在該系統(tǒng)設(shè)計中,單片機(jī)主要硬件資源的分配如為:~;;;~;~。二、鍵盤矩陣模塊本次設(shè)計的密碼鎖系統(tǒng)設(shè)計采用4*4矩陣鍵盤,與P1口相連,采用掃描法。設(shè)有0到9十個數(shù)字密碼,一個開鎖鍵、上鎖鍵,以及用于修改密碼的新密碼輸入鍵和新密碼保存鍵,還有一個用于重新輸入密碼的重新輸入鍵和一個管理員密碼鍵。本設(shè)計就采用行列式鍵盤,同時也能減少鍵盤與單片機(jī)接口時所占用的I/O線的數(shù)目,在按鍵比較多的時候,通常采用這樣方法。通常將按鍵排列成矩陣形式。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個按鍵加以連接。這樣,一個端口(如P1口)就可以構(gòu)成4*4=16個按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數(shù)越多,區(qū)別越明顯。 鍵盤矩陣電路如下圖5所示:圖5 鍵盤矩陣電路 表1 矩陣鍵盤代表的功能表S1S10數(shù)字09S11開鎖按鍵S12上鎖按鍵S13輸入新密碼S14保存新密碼S15重新輸入S16管理員密碼(切換鍵)三、顯示模塊此密碼鎖設(shè)計6位密碼,按鍵后動態(tài)顯示。開機(jī)顯示“Your Password...”,等待密碼輸入,輸入6位密碼,按開始鍵后,密碼比較。根據(jù)按鍵次數(shù),第一位顯示器顯示第一次按的密碼,第二位顯示器顯示第二次按的密碼,第三位顯示器顯示第三次按的密碼,依此第六位顯示器顯示第六次按的密碼。每次輸入密碼后,都會有提示音,提示輸入動作被接受。按鍵完成后按開鎖鍵后,密碼對則執(zhí)行相關(guān)動作,并且顯示器顯示“Unlock ok!”,并且會看到指示燈發(fā)光;不正確則顯示器顯示“ERROR”,指示燈無任何現(xiàn)象,系統(tǒng)等待重新輸入。當(dāng)連續(xù)輸入三次錯誤后,會顯示“Wait....”,系統(tǒng)會發(fā)出報警音,等待鎖定時間十鐘后會提示“Input again....”。下圖6所示為顯示電路原理圖: 圖6 LCD顯示電路四、報警模塊本次設(shè)計的密碼鎖報警系統(tǒng)在當(dāng)輸入密碼錯誤后,系統(tǒng)報警。下圖7給出報警系統(tǒng)電路原理圖:圖7 報警模塊電路五、電子時鐘模塊概述本模塊是以AT89C51單片機(jī)為控制核心,具有在線編程功能,低功耗,能在3V超低壓工作。時鐘電路由DS1302提供,它是一種高性能、低功耗、帶RAM的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能,~。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能,~。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個318的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302增加了主電源/后備電源雙電源引腳,同時提供了對后備電源進(jìn)行涓細(xì)電流充電的能力。可產(chǎn)生年、月、日、周日、時、分、秒,具有使用壽命長,精度高和低功耗等特點,同時具有掉電自動保存功能;顯示部份由LCD液晶顯示屏顯示。下圖8所示為DS1302電路原理圖圖:圖8 DS1302電路原理圖引腳介紹DS1302的引腳排列,其中Vcc1為后備電源,VCC2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運(yùn)行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc1+,Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進(jìn)行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時,在Vcc,RST必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說明。SCLK為時鐘輸入端。 下圖9為DS1302的引腳功能圖: 圖9 DS1302引腳封裝圖六、通信傳輸模塊密碼鎖系統(tǒng)的通信傳輸模塊是該系統(tǒng)的主要模塊之一,可以最大限度的發(fā)揮單片機(jī)的傳輸接口的功能,最大程度上的利用了單片機(jī)的接口。通信傳輸原理概述一般是用串口來進(jìn)行通訊的,采用普通I/O模擬實現(xiàn)通信,這是最簡單的方法,并且可以實現(xiàn)高速串行通信。即利用RS23接口實現(xiàn)通信,而RS232接口是串口通訊的一種,其實所謂的接口,我的理解就是一種通信協(xié)議,規(guī)定了傳輸電平,傳輸方式,及怎么傳輸數(shù)據(jù)等。 TXD通信接口進(jìn)行數(shù)據(jù)的發(fā)送(只發(fā)送不接收),將數(shù)據(jù)傳輸?shù)教摂M終端保存。PC機(jī)和單片機(jī)的通訊卻不能夠直接進(jìn)行連接,原因是PC機(jī)RS232串口的電平標(biāo)準(zhǔn)和單片機(jī)的TTL電平不一致,因此單片機(jī)和PC機(jī)之間的串口通訊必須要有一個RS232/TTL電平轉(zhuǎn)換電路。我們再次利用MAX232芯片實現(xiàn)電平轉(zhuǎn)換。其中,由于單片機(jī)的串口輸出電路采用的邏輯電平是TTL(邏輯門電路,TransistorTransistor Logic )電平,PC機(jī)的電平是CMOS電平。用一個異步串行通信的設(shè)計方法,單片機(jī)串口的控制方式MCS51系列單片機(jī)對串口的控制是通過對串行口控制寄存器SCON和功率控制寄存器PCON的設(shè)置來實現(xiàn)的。SCON是一個可位尋址的特殊功能寄存器,通過設(shè)置SGON的SM0和SMI,可以使單片機(jī)有四種不同的工作方式。在用于和PC機(jī)實現(xiàn)串行通信時,一般設(shè)置為方式1或方式3,主要區(qū)別是方式1的數(shù)據(jù)格式為8位,方式3的數(shù)據(jù)格式為9位,其中第9位SM2為多機(jī)通信位,可實現(xiàn)單片機(jī)的多點通信。單片機(jī)串口的速率設(shè)置單片機(jī)和PC機(jī)通信時,其通信速率由定時器T1或定時器T2產(chǎn)生(52系列),在T1工作在方式2時的通信速率的計算公式為:波特串=(SMOD Fosc)/(3212[256-TH1])。其中Fosc晶振頻率,為獲得準(zhǔn)確的通信速率,F(xiàn)osc通常為11.0592MHz。采用T1定時器通信的系統(tǒng),速率不可能過高,一般情況下最高為19200bit/s。單片機(jī)串口通信程序的實現(xiàn)方法實際應(yīng)用中,單片機(jī)通信程序一般采用中斷方式與微機(jī)通信,微機(jī)做為主控方。當(dāng)單片機(jī)收到微機(jī)發(fā)送的地址信號時,便轉(zhuǎn)入中斷服務(wù)程序,向微機(jī)發(fā)送數(shù)據(jù)。電平轉(zhuǎn)換電路PC機(jī)和單片機(jī)的通訊不能夠直接進(jìn)行連接,原因是PC機(jī)RS232串口的電平標(biāo)準(zhǔn)和單片機(jī)的TTL電平不一致,因此單片機(jī)和PC機(jī)之間的串口通訊必須要有一個RS232/TTL電平轉(zhuǎn)換電路。我們再次利用MAX232芯片實現(xiàn)電平轉(zhuǎn)換。其中,由于單片機(jī)的串口輸出電路采用的邏輯電平是TTL(邏輯門電TransistorTransistor Logic )電平,PC機(jī)的電平是CMOS電平。單片機(jī)和PC機(jī)的串行通信一般采用MAX232總線標(biāo)準(zhǔn)接口。為保證通信的可靠,在選擇接口時必須注意:(1)通信的速率;(2)通信距離;(3)抗干擾能力;(4)組網(wǎng)方式。采用MAX232芯片的轉(zhuǎn)換接口,MAX232包含兩路驅(qū)動器和接收器的RS232轉(zhuǎn)換芯片。芯片內(nèi)部有一個電壓轉(zhuǎn)換器,可以把輸入的+5v電壓轉(zhuǎn)換為RS232接口所需的177。10V電壓,尤其適用于沒有177。12V的單電源系統(tǒng)。下圖所示為MAX232電平轉(zhuǎn)換電路:圖10 MAX232電平轉(zhuǎn)換電路 第四篇 系統(tǒng)程序設(shè)計一、總體程序設(shè)計流程程序功能 軟件的設(shè)計主要包括:密碼的設(shè)定及修改、鍵盤識別判斷、錯報警等,可根據(jù)具體的需要還可進(jìn)行功能的增加與完善。1) 主程序功能:主耍完成初始化、設(shè)置中斷向量檢查有無按健按下,以及調(diào)用顯示等。2) 鍵盤掃描及識別子程序功能:鍵盤采用查詢方式,放在主程序中,當(dāng)沒有按鍵按下時,單片機(jī)循環(huán)主程序,一旦有鍵按下,便轉(zhuǎn)向相應(yīng)的子程序處理,之后再返回。3) 調(diào)用存儲程序功能:比較密碼時,需讀取程序,將存儲在芯片內(nèi)的數(shù)據(jù)讀到RAM中,然后和輸入密碼相比較,當(dāng)修改密碼時,需耍把輸入的密碼保存到芯片中。4) 顯示子程序功能:在系統(tǒng)啟動后顯示為“Your Password ...”,在輸入密碼時不直接顯示密碼,而是現(xiàn)實星號“******”,這樣利于密碼的保密可提高安全性和可靠性 。當(dāng)輸入密碼正確時,顯示“unlock ok”,輸入錯誤則顯示“ERROR”。當(dāng)連續(xù)輸入三次錯誤后,會顯示“Wait....”,系統(tǒng)會報警提示,三秒鐘后會提示“Input again....”。5) 密碼更改子程序功能:在輸入密碼成功解鎖后,點擊“輸入新密碼”按鍵,輸入新密碼,然后選擇點擊“保持新密碼”按鍵,至此,密碼修改成功。6) 修改密碼工作完成后,系統(tǒng)將跳翻到開始,即提示輸入密碼“Your Password...”。系統(tǒng)程序設(shè)計總流程如下圖所示為該密碼鎖系統(tǒng)程序設(shè)計總流程圖:開始輸入密碼正確否?開鎖判斷按鍵LOCK輸入鍵上鎖結(jié)束輸入密碼正確否輸入新密碼再次輸入一致否修改密碼YesNoNoYesNoYes圖10 系統(tǒng)程序設(shè)計總流程圖二、各個模塊系統(tǒng)程序設(shè)計流程 由于設(shè)計是分模塊化進(jìn)行,所以子程序是整體軟件系統(tǒng)的組成部分,子程序不但可以使程序化整為零,使其復(fù)雜簡單化,同時也方便閱讀,每個功能模塊都有它自己的子程序,在本設(shè)計中是用LCD顯示數(shù)據(jù),所以就要用到顯示子程序,設(shè)計中用的是矩陣鍵盤,所以就用到鍵盤掃描子程序,例如還有顯示初始化子程序、開鎖狀態(tài)顯示子程序、密碼輸入及修改狀態(tài)顯示子程序、密碼輸入錯誤后的提示子程序等。顯示初始化模塊程序設(shè)計1)、設(shè)計框圖圖11 顯示初始化模塊程序設(shè)計流程圖2)、具體實現(xiàn)程序include include include includeincludeincludeincludeincludeincludeincludeincludeincludeincludeincludeincludeinclude3)、仿真結(jié)果圖示系統(tǒng)初始化仿真圖密碼比較功能模塊程序設(shè)計1)、設(shè)計框圖密碼輸入完成之后,進(jìn)行密碼比較核對,即將設(shè)定的密碼與輸入密碼進(jìn)行一一比較,如果相同,則密碼正確;如果密碼錯誤,則顯示器清零,并且顯示“ERROR”,重新等待輸入密碼。圖13 密碼比較功能模塊程序設(shè)計流程圖2)、具體實現(xiàn)密碼ifndef CMPdefine CMPsbit P23=P2^3。uchar data kong[7]={39。\039。,39。\039。,39。\039。,39。\039。,39。\039。,39。\039。,0}。uchar data mima[7]={39。139。,39。239。,39。339。,39。439。,39。539。,39。639。,0}。uchar data mima0[7]={39。\039。,39。\039。,39。\039。,39。\039。,39。\039。,39。\039。,0}。uchar data table1[7]={39。139。,39。139。,39。139。,39。139。,39。139。,39。139。,0}。uchar data table3[7]={39。939。,39。939。,39。939。,39。939。,39。939。,39。939。,0}。//************************************************//函數(shù)名:密碼比對函數(shù)//功能:調(diào)用該函數(shù)可能判斷輸入的密碼是否正確,如果密碼正確,則開門成功并給予相應(yīng)提示//否則密碼輸入錯誤,同時給予警告。//************************************************void code_check(){ uchar k。 initinal()。 for(k = 0。k 6。k++) //將mima0這個數(shù)組置空 { mima0[k] = kong[k]。 } for(。i 3。)//密碼輸入錯誤次數(shù)不能超過三次,否則報警提示,然后只能管理員解密 { enter_password()。 //顯示輸入密碼提示畫面“Enter Password” enter(mima0)。 //輸入密碼,并用nima0數(shù)組接收 if((strcmp(table3,mima0) == 0)||(strcmp(table1,mima0) == 0)||(strcmp(mima,mima0) == 0)) //密碼匹配 { wele()。 //輸入密碼正確,顯示歡迎畫面 P23 = 0。 //led亮,表示開門成功 delay1(15)。 time_after()。 //開門后顯示時間 if((strcmp(table1,mima0) == 0)||(strcmp(table3,mima0) == 0)||(strcmp(mima,mima0) == 0)) break。 } else { password_error()。 //顯示密碼輸入錯誤畫面 for(k = 0。k 6。k++) { mima0[k] = kong[k]。 } i++。 delay1(20)。 } }}3)、仿
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1