




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、電子產品創(chuàng)作設計技術報告題 目 基于單片機的密碼鎖設計 小組成員 西安電子科技大學2015年10月基于單片機的密碼鎖設計摘要:在日常的生活和工作中, 住宅與部門的安全防范、單位的文件檔案、財務報表以及一些個人資料的保存多以加鎖的辦法來解決。具有防盜報警等功能的電子密碼鎖代替密碼量少、安全性差的機械式密碼鎖已是必然趨勢。隨著科學技術的不斷發(fā)展,人們對日常生活中的安全保險器件的要求越來越高。為滿足人們對鎖的使用要求,增加其安全性,用密碼代替鑰匙的密碼鎖應運而生。密碼鎖具有安全性高、成本低、功耗低、易操作、記住密碼即可開鎖等優(yōu)點。本系統(tǒng)由STC89C52單片機、4*4矩陣鍵盤,蜂鳴器,復位電路和晶振
2、電路、繼電器等組成,4*4鍵盤主要用于密碼的輸入和修改,蜂鳴器報警,復位電路和晶振電路與STC89C52單片機組成單片機最小系統(tǒng)。它具有設置、修改6位用戶密碼、輸錯報警、密碼錯誤報警等功能。本系統(tǒng)成本低廉,功能實用。關鍵詞: 密碼鎖;報警 蜂鳴器 STC89C52abstractIn daily life and work, the department of housing and security, unit documents, financial statements and some personal information to save more in order to lock
3、 the ways to solve. With anti-theft alarm function such as electronic combination lock instead of password quantity is little, security, poor mechanical combination lock is inevitable trend. With the continuous development of science and technology, people in daily life the demand is higher and high
4、er safety insurance device. To meet the requirements of people on the use of the lock, increase its safety, use the password instead of the key combination lock arises at the historic moment. Combination lock with high safety, low cost, low power consumption, easy operation, remember password lock,
5、etc.This system by the STC89C52 single-chip microcomputer, the 4 * 4 matrix keyboard, buzzer, reset circuit and vibration circuit, relay and so on, 4 * 4 keyboard is mainly used for input and modify the password, the buzzer alarm, and resonance circuit and reset circuit STC89C52 singlechip microcont
6、roller minimum system. It has six Settings, modify user password, mistyped alarm, password error alarm, etc. This system is low cost, function and practical.Key words: combination lock; Call the police; Buzzer. STC89C52目 錄一、緒論11.1 課題背景11.2 課題的目的和意義11.3 電子密碼鎖的發(fā)展趨勢11.4 本設計完成的工作2二 、總體方案設計32.1 硬件設計32.1.
7、1 電源模塊32.1.2 主控制器模塊4三、硬件實現及單元電路設計43.1 主控制模塊43.2 單片機的時鐘電路與復位電路設計53.3 單片機管腳說明63.4 鍵盤電路設計73.5 液晶顯示電路設計73.6 存儲芯片電路設計83.7 報警電路93.8 密碼鎖電路10四、系統(tǒng)軟件設計方案114.1 主程序流圖114.2 開鎖軟件設計11五、系統(tǒng)的安裝與調試125.1 安裝步驟12結論13參考文獻13附錄1 整機電路原理圖14附錄2 部分源程序14一、緒論1.1 課題背景在日常的生活和工作中,住宅與部門的安全防范、單位的文件檔案、財務報表以及一些個人資料的保存多以加鎖的辦法來解決。若使用傳統(tǒng)的機械
8、式鑰匙開鎖,人們常需攜帶多把鑰匙,使用極不方便,且鑰匙丟失后安全性即大打折扣。隨著科學技術的不斷發(fā)展,人們對日常生活中的安全保險器件的要求越來越高。為滿足人們對鎖的使用要求,增加其安全性,用密碼代替鑰匙的密碼鎖應運而生。密碼鎖具有安全性高、成本低、功耗低、易操作等優(yōu)點。根據本設計要求,通過密碼輸入來控制電路或是芯片工作,從而控制機械開關的閉合,完成開鎖、閉鎖等任務。它的種類很多,有簡易的電路產品,也有基于芯片的性價比較高的產品?,F在應用較廣的數字密碼鎖是以芯片為核心,通過編程來實現的。其性能和安全性已大大超過了機械鎖。其主要優(yōu)點有:(1)保密性好,編碼量多,遠遠大于彈子鎖。隨機開鎖成功率幾乎為
9、零。(2)密碼可變。用戶可以經常更改密碼,防止密碼被盜,同時也可以避免因人員的更替而使鎖的密級下降。(3)誤碼輸入保護。當輸入密碼錯誤時,系統(tǒng)會報警。(4)操作簡單易行,一學即會。1.2 課題的目的和意義 隨著電子技術和計算機技術的飛速發(fā)展,單片機性能不斷完善,性能價格比顯著提高,技術日趨完善。由于單片機具有體積小、重量輕、價格便宜、功耗低、控制功能強及運算速度快等特點,因而在國民經濟建設、軍事及家用電器等各個領域均得到了廣泛的應用。本設計利用單片機及附加器件實現數據采集和控制算法,來完成某一實際功能,檢驗并提高同學對整體電路設計和把握能力,了解單片機系統(tǒng)設計流程,以及電路板的實際制作和調試能
10、力。同時也加強對數字電路、單片機和微機原理等課程知識的實際應用能力,也為同類產品的進一步發(fā)展奠定理論和實踐基礎。20世紀80年代后,隨著電子鎖專用集成電路的出現,電子鎖的體積縮小,可靠性提高,成本較高,是適合使用在安全性要求較高的場合,且需要有電源提供能量,使用還局限在一定范圍,難以普及,所以對它的研究一直沒有明顯進展。目前,在西方發(fā)達國家,電子密碼鎖技術相對先進,種類齊全,電子密碼鎖已被廣泛應用于智能門禁系統(tǒng)中,通過多種更加安全,更加可靠的技術實現大門的管理。在我國電子鎖整體水平尚處于國際上70年代左右,電子密碼鎖的成本還很高,市場上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙式電子鎖已引進國際先進
11、水平,現國內有幾個廠生產供應市場。但國內自行研制開發(fā)的電子鎖,其市場結構尚未形成,應用還不廣泛。國內的不少企業(yè)也引進了世界上先進的技術,發(fā)展前景非??捎^。希望通過不斷的努力,使電子密碼鎖在我國也能得到廣泛應用。1.3 電子密碼鎖的發(fā)展趨勢電子密碼鎖應用于金融業(yè),其根本的作用是“授權”,即被“授權”的人才可以存取錢、物。廣義上講,金融業(yè)的“授權”主要包括以下三種層次的內容:1、授予保管權,如使用保管箱、保險箱和保險柜;2、授予出入權,如出入金庫、運鈔車和保管室;3、授予流通權,如自動存取款。目前,金融行業(yè)電子密碼鎖的應用主要集中在前兩個層面上。下面將介紹幾種在金融行業(yè)中使用較多的電子密碼鎖以及它
12、們的技術發(fā)展方向。當然,以上所說的授權技術再高超,都必須由精良的“鎖具”擔當承載結構部件,實現開啟、閉鎖的功能,而且承擔實體防護作用,抵抗住或盡量延遲破壞行為,讓電子密碼鎖“軟、硬不吃”。一般情況下,鎖具防盜的關鍵是鎖身外殼、閉鎖的部件的強度、鎖止型式、配合間隙和布局。提高電子密碼鎖之防護能力的必然途徑是報警,在金融業(yè)的許多場所有人值守、有電視監(jiān)控,具有報警功能,可以綜合物理防范和人力防范兩種作用。報警的前提是具備探測功能,根據電子密碼鎖的使用場所和防護要求,可選擇多種多樣的探測手段。在中國的城市金融業(yè)中,實現聯網報警已經成為對各金融網點的基本要求。根據國內外的實踐經驗,金融業(yè)實行安全防范風險
13、等級很有必要,即依據使用的防盜報警器材的性能、安裝布局和人員值守狀況等,可以評估被防護物或區(qū)域的防護能力,得出風險等級,其中,電子密碼鎖的性能至關重要。由于數字、字符、圖形圖像、人體生物特征和時間等要素均可成為鑰匙的電子信息,組合使用這些信息能夠使電子密碼鎖獲得高度的保密性,如防范森嚴的金庫,需要使用復合信息密碼的電子密碼鎖,這樣對盜賊而言是“道高一尺、魔高一丈”。組合使用信息也能夠使電子密碼鎖獲得無窮擴展的可能,使產品多樣化,對用戶而言是“千挑百選、自得其所”。 1.4 本設計完成的工作(1) 熟悉51單片機集成開發(fā)環(huán)境,運用C語言編寫工程文件;(2)熟練應用所選用單片機的內部結構、資源,以
14、及軟硬件調試設備的基本方法;(3)自行構建基于單片機的最小系統(tǒng),完成相關硬件電路的設計實現;(4)密碼鎖的原理和實現方法。二 、總體方案設計STC89C52電源輸入電路晶振電路復位電路鍵盤接口電路開鎖電路報警電路 它是以STC89C52單片機為核心,配以相應硬件電路,完成密碼的設置、存貯、識別、驅動電磁執(zhí)行器并檢測其驅動電流值、接收蜂鳴器送來的報警信號、發(fā)送數據等功能,單片機接收鍵入的代碼,并與存貯在EEPROM中的六位密碼進行比較,六位密碼的可以有298萬多組密碼供主人隨意變換,保密性極高,可選密碼組是連續(xù)排列的,如果密碼正確,則驅動電磁執(zhí)行器開鎖;如果密碼輸入不正確,則單片機通過通信線路向
15、智能報警器發(fā)出報警信號。密碼鎖主要由矩陣鍵盤、單片機、外部硬件等部分組成。其中矩陣鍵盤用于輸入數字密碼和進行各種功能的實現。實際使用時只要將單片機的負載由繼電器換成電子密碼鎖的電磁鐵吸合線圈即可,當然也可以用繼電器的常開觸點去控制電磁鐵吸合線圈,單片機將每次開鎖操作和此時電磁執(zhí)行器的驅動電流值作為狀態(tài)信息發(fā)送給單片機的芯片處理,同時將接收來自無限循環(huán)的密碼識別程序的報警信息也發(fā)送給智能報警器,從而使整個密碼鎖正常運行。2.1 硬件設計2.1.1 電源模塊 由于本系統(tǒng)采用電池供電,我們考慮了如下幾種方案為系統(tǒng)供電。方案1:采用5V蓄電池為系統(tǒng)供電。蓄電池具有較強的電流驅動能力以及穩(wěn)定的電壓輸出性
16、能。但是蓄電池的體積過于龐大,在使用極為不方便。因此我們放棄了此方案。方案2:采用3節(jié)1.5 V干電池共4.5V做電源,經過7805的電壓變換后為單片機,傳感器供電。經過實驗驗證系統(tǒng)工作時,單片機、傳感器的工作電壓穩(wěn)定能夠滿足系統(tǒng)的要求,而且電池更換方便。綜上所述采用方案22.1.2 主控制器模塊方案1: 采用可編程邏輯器件CPLD作為控制器。CPLD可以實現各種復雜的邏輯功能、規(guī)模大、密度高、體積小、穩(wěn)定性高、IO資源豐富、易于進行功能擴展。采用并行的輸入輸出方式,提高了系統(tǒng)的處理速度,適合作為大規(guī)??刂葡到y(tǒng)的控制核心。但本系統(tǒng)不需要復雜的邏輯功能,對數據的處理速度的要求也不是非常高。且從使
17、用及經濟的角度考慮我們放棄了此方案。方案2: 采用STC89C52單片機作為整個系統(tǒng)的核心,用其控制密碼鎖控制,以實現其既定的性能指標。充分分析我們的系統(tǒng),其關鍵在于密碼鎖的控制,而在這一點上,單片機就顯現出來它的優(yōu)勢控制簡單、方便、快捷。這樣一來,單片機就可以充分發(fā)揮其資源豐富、有較為強大的控制功能及可位尋址操作功能、價格低廉等優(yōu)點。STC89C52單片機具有功能強大的位操作指令,I/O口均可按位尋址,程序空間多達8K,對于本設計也綽綽有余,更可貴的是STC89C52單片機價格非常低廉。因此,這種方案是一種較為理想的方案。從方便使用的角度考慮,我們選擇了方案2。3、 硬件實現及單元電路設計3
18、.1 主控制模塊主控制最小系統(tǒng)電路如圖3所示。 圖3 單片主控電路3.2 單片機的時鐘電路與復位電路設計本系統(tǒng)采用STC系統(tǒng)列單片機,相比其他系列單片機具有很多優(yōu)點。一般STC單片機資源比其他單片機要多,而且執(zhí)行速度快;STC系列單片機使用串口對單片機進行燒寫,下載程序較為方便;STC51單片機內部集成了看門狗電路;且具有很強抗干擾能力。本系統(tǒng)采用內部方式的時鐘電路和加電自復位的復位電路,如下圖3圖4所示:圖3 時鐘電路圖4 復位電路由于單片機P0口內部不含上拉電阻,為高阻態(tài),不能正常地輸出高/低電平,因而該組I/O口在使用時必須外接上拉電阻。3.3 單片機管腳說明VCC(40):供電電壓,其
19、工作電壓為5V。GND(20):接地。P0端口(P0.0-P0.7):P0口為一個8位漏極開路雙向I/O口,每個引腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數據存儲器,它可以被定義為數據/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1端口(P1.0-P1.7):P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高電平,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLAS
20、H編程和校驗時,P1口作為第八位地址接收。 P2端口(P2.0-P2.7):P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口,用于外部程序存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數據存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3端口(P3.0-P3.7):P3口管
21、腳是一個帶有內部上拉電阻的8位的雙向I/O端口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入端時,由于外部下拉為低電平,P3口將輸出電流(ILL)。P3口同時為閃爍編程和編程校驗接收一些控制信號。復位RST(9):復位輸入。在振蕩器運行時,有兩個機器周期(24個振蕩周期)以上的高電平出現在此引腳時,將使單片機復位,只要這個引腳保持高電平,51芯片便循環(huán)復位。復位后P3.0-P3.7口均置1,引腳表現為高電平,程序計數器和特殊功能寄存器SFR全部清零。當復位腳由高電平變?yōu)榈碗娖綍r,芯片為ROM的00H處開始運行程序。復位操作不會對內部RAM有所影
22、響。ALE/(30):當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地低位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數據存儲器時,將跳過一個ALE脈沖。如果想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,則置位無效。(29):外部程序存儲器的選通信號。在由外部程序存儲器取指令期間,每個機器周期兩次有效。但在
23、訪問外部數據存儲器時,這兩次有效的信號將不出現。EA/VPP(31):當保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內部程序存儲器。注意加密方式1時,將內部鎖定為RESET;當端保持高電平時,此間內部程序存儲器。在FLASH編程期間,此引腳也用于施加12V的編程電源(VPP)。XTAL1(19):來自反向振蕩放大器的輸入及內部時鐘工作電路的輸入。XTAL2(18):來自反向振蕩器的輸出。3.4 鍵盤電路設計在單片機應用系統(tǒng)中,一般都會設置鍵盤,主要為了控制運行狀態(tài),輸入一些命令或數據,以完成特定的人機交互。鍵盤是與單片機進行人機交互的最基本的途徑,其以按鍵的形式
24、來設置控制功能或輸入數據,按鍵的輸入狀態(tài)本質上是一個開關量。對于簡單的開關量的輸入可以采用獨立式按鍵,這種方法接口簡單,但占用單片機I/O端口資源較多。對于輸入參數較多、功能復雜的系統(tǒng),需要采用矩陣式鍵盤進行輸入控制。本系統(tǒng)采用4*3矩陣式鍵盤,鍵盤連接方式如圖5所示:圖5 鍵盤電路3.5 液晶顯示電路設計液晶顯示器(LCD)是一種功耗很低的顯示器,它的使用非常廣泛,比如電子表、計算器、數碼相機、計算機的顯示器和液晶電視等。電子密碼鎖中需要顯示的信息比較多,為了能直觀的看到結果,并且為了設計顯的美觀,使用總線和排阻進行簡化連接方式,本設計采用液晶顯示屏LCD進行顯示,具體連接方式如圖6所示。圖
25、6 液晶顯示電路3.6 存儲芯片電路設計總線(Inter Intergrate Circuit BUS)全稱為芯片間總線,它在芯片間以兩根連線實現全雙工同步數據傳送,一條數據線(SDA)和一條串行時鐘線(SDL),可以很方便地構成外圍器件擴展系統(tǒng)??偩€采用兩線制,由數據線SDA和時鐘線SCL構成,為了對數據進行存儲,本系統(tǒng)使用串行EEPROM芯片,AT24C01系列是典型的串行總線的EEPROM,本系統(tǒng)采用此芯片進行數據存儲,存儲系統(tǒng)連接如圖7所示:圖7 總線和存儲芯片連接電路圖3.7 報警電路報警部分由蜂鳴器及外圍電路組成,加電后不發(fā)聲,當密碼輸入錯誤發(fā)出報警聲。如圖8所示。圖8 蜂鳴報警電
26、路3.8 密碼鎖電路密碼鎖部分由繼電器組成,當密碼輸入正確選擇開鎖繼電器就會吸合。如圖9所示。圖9 密碼鎖電路四、系統(tǒng)軟件設計方案4.1 主程序流圖如圖10為主程序流程圖,用戶才可以自行設定和修改6位密碼,密碼輸錯會有提示聲。只有鍵入6位開鎖密碼完成正確才能開鎖。開始設置密碼初始化輸入密碼報警報警程序報警程序次數加1N密碼正確? Y報警開鎖程序 Y 開鎖?繼電器打開N Y修改密碼程序 修改密碼?N返回 圖10 主程序流程圖4.2 開鎖軟件設計如圖11開鎖流程圖,開始時按開鎖鍵,輸入密碼,如果輸入正確,則開鎖成功。如果輸入錯誤則執(zhí)行報警程序。 開始 初始化按開鎖鍵輸入密碼輸入次數加1確認密碼N
27、所輸入密碼正確?報警報警程序開鎖 Y返回圖4.2 開鎖流程圖五、系統(tǒng)的安裝與調試5.1 安裝步驟1.檢查元件的好壞按電路圖買好元件后首先檢查買回元件的好壞,按各元件的檢測方法分別進行檢測,一定要仔細認真。而且要認真核對原理圖是否一致,在檢查好后才可上件、焊件,防止出現錯誤焊件后不便改正。2.放置、焊接各元件按原理圖的位置放置各元件,在放置過程中要先放置、焊接較低的元件,后焊較高的和要求較高的元件。特別是容易損壞的元件要后焊,在焊集成芯片時連續(xù)焊接時間不要超過10s,注意芯片的安裝方向。結論本設計是電源輸入部分、鍵盤輸入部分、密碼存儲部分、復位部分、晶振部分、顯示部分、報警部分、開鎖部分組成,根
28、據實際情況鍵盤輸入部分選擇4*4矩陣鍵盤。在設計中我們必須首先熟悉和掌握單片機的結構及工作原理,單片機的接口技術及相關外圍芯片的外特性,控制方法。以單片機核心的電路設計的基本方法和技術了解表關電路參數的計算方法。單片機不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。概括的講:一塊芯片就成了一臺計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發(fā)提供了便利條件。同時,學習使用單片機了解計算機原理與結構的最佳選擇。 目前單片機滲透到我們生活的各個領域,幾乎很難找到哪個領域沒有單片機的蹤跡。導航裝置,飛機上各種儀表的控制,計算機的網絡通訊與數據傳輸,工業(yè)自動化過程的實時控制和
29、數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機、攝像機、全自動洗衣機的控制,以及程控玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領域的機器人、智能儀表、醫(yī)療器械了。因此,單片機的學習、開發(fā)與應用將造就一批計算機應用與智能化控制的科學家、工程師。隨著單片機的廣泛應用,將大大促進各領域的技術更新,向自動化、小型化、智能化方向邁進。而對于我們來說,我們這代人的目標和任務是把這些高科技產品更升一個層次。參考文獻1 王千. 實用電子電路大全M. 電子工業(yè)出版社, 2004, 28-362 彭為. 單片機典型系統(tǒng)設計實例精講M. 電子工業(yè)出版社,2 006, 69-88
30、3 張榮. 基于單片機的智能系統(tǒng)設計與實現M. 電子工業(yè)出版社, 2005, 35-384 朱勇. 單片機原理與應用技術M. 清華大學出版社, 2006, 14-165 潘永雄. 新編單片機原理與應用M. 西安電子科技大學出版社, 2003, 78-866 葉啟明. 單片機制作的新型安全密碼鎖J. 家庭電子, 2005, (10):7 郭海英. 基于單片機的電子安全密碼鎖的設計M. 現代電子技術, 2005,(13)8 李明喜. 新型電子密碼鎖的設計J. 機電產品開發(fā)與創(chuàng)新, 2004, (03):9 彭為. 單片機典型系統(tǒng)設計實例精講M. 北京:電子工業(yè)出版社, 2006, 35-3810
31、ATmega.ATmega8L-8AC, 2006, (01), 63-6411 Wireless World, 1998, 42-4512 石文軒, 宋薇. 基于單片機MCS一51的智能密碼鎖設計J. 武漢工程職業(yè)技術學院學報, 2004, (01): 76-3513 祖龍起, 劉仁杰. 一種新型可編程密碼鎖J. 大連輕工業(yè)學院學報,2002, (01): 54-5714 葉啟明. 單片機制作的新型安全密碼鎖J. 家庭電子, 2005, (10): 98-11115 郭海英. 基于單片機的電子安全密碼鎖的設計M. 現代電子技術, 2005, (13), 76-9616 李明喜. 新型電子密碼
32、鎖的設計J. 機電產品開發(fā)與創(chuàng)新, 2004, (03): 45-6617 董繼成. 一種新型安全的單片機密碼鎖J. 電子技術, 2004, (03): 122-13418 R. Dye. Visual Object-Orientated ProgrammingJ. Dr. Dobbs MacintoshJournal, 1991,56(1):213-234 附錄1 整機電路原理圖附錄2 部分源程序#include <reg52.h> /調用單片機頭文件#define uchar unsigned char /無符號字符型 宏定義變量范圍0255#define uint unsig
33、ned int /無符號整型 宏定義變量范圍065535#include "lcd1602.h"#include "iic.h"uchar value,i;/變量uchar flag_lj_en; /邊加uchar flag_lj_en_value;sbit relay = P23; /繼電器定義sbit beep = P22; /蜂鳴器定義uchar smg_i;uchar dis_smg6;uchar password6=6,5,4,3,2,1; /密碼保存uchar password_bj6=1,2,3,4,5,6;/密碼比較uchar code
34、password_r6 = 6,5,4,3,2,1 ;uchar password_xg6;/密碼修改uchar flag_password; /密碼正確否uchar flag_password_cichu1;/密碼錯誤次數uchar flag_password_cichu2;/密碼錯誤次數bit flag_500ms; /500ms標志位bit flag_200ms=1; /200ms標志位bit flag_beep_en; /蜂鳴器標志位 bit flag_relay_en; /繼電器標志位 #define key_io P0uchar key_can;#include "iic
35、.h"/*1ms延時函數*/void delay_1ms(uint q)uint i,j;for(i=0;i<q;i+)for(j=0;j<120;j+);/*獨立按鍵處理函數*/ void key()static uchar key_new = 0,key_old = 0,key_value = 0,key_l;key_io = 0x0f;if(key_new = 0) /按鍵松開if(key_io = 0x0f)key_value +;else key_value = 0;if(key_value >= 5) /按鍵松開松手檢測key_value = 0;key
36、_new = 1;/按鍵松開后進入等待按鍵狀態(tài)key_can = 30;flag_lj_en = 0;else if(key_io != 0x0f) /按鍵按下key_value +;else key_value =0;if(key_value >= 5) /按鍵按下消抖key_value = 0;key_new = 0; /按鍵松開后進入等待松開按鍵狀態(tài) key_can = 20;if(key_new = 0) && (key_old = 1)key_l = (key_io | 0xf0); /矩陣鍵盤掃描key_io = key_l;switch(key_io)cas
37、e 0xee: key_can = 10; break; /得到按鍵值 case 0xde: key_can = 0; break; /得到按鍵值 case 0xbe: key_can = 11; break; /得到按鍵值 case 0x7e: key_can = 12; break; /得到按鍵值 case 0xed: key_can = 7; break; /得到按鍵值 case 0xdd: key_can = 8; break; /得到按鍵值 case 0xbd: key_can = 9; break; /得到按鍵值 case 0x7d: key_can = 13; break; /得
38、到按鍵值 case 0xeb: key_can = 4; break; /得到按鍵值 case 0xdb: key_can = 5; break; /得到按鍵值 case 0xbb: key_can = 6; break; /得到按鍵值 case 0x7b: key_can = 14; break; /得到按鍵值 case 0xe7: key_can = 1; break; /得到按鍵值 case 0xd7: key_can = 2; break; /得到按鍵值 case 0xb7: key_can = 3; break; /得到按鍵值 case 0x77: key_can = 15; break; /得到按鍵值 /write_sfm2(2,1,key_can); key_old = key_new; /*密碼還原*/void password_return()if(flag_200ms = 1)if(flag_lj_en = 1)flag_200ms = 0;flag_lj_en_value +;if(flag_lj_en_value > 13) /按下3秒鐘就自動密碼還原flag_lj_en_value = 0;flag_lj_en = 0;write_24c02_8(6,0,password_r
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 衡陽師范學院《馬克思主義哲學(下)》2023-2024學年第二學期期末試卷
- 電子科技大學中山學院《車輛建模與仿真》2023-2024學年第二學期期末試卷
- 甘肅省蘭州市第六十三中學2025屆高三3月期初測試化學試題含解析
- 武漢科技大學《數字化教學資源設計與開發(fā)(C)》2023-2024學年第二學期期末試卷
- 許昌職業(yè)技術學院《植物保健與和諧植?!?023-2024學年第二學期期末試卷
- 湖南吉利汽車職業(yè)技術學院《日本文學》2023-2024學年第二學期期末試卷
- 工程造價領域發(fā)展趨勢
- 工程教育基礎
- 廠房強化護欄施工方案
- 屋面設備基礎施工方案
- 2019年10月自考03706思想道德修養(yǎng)與法律基礎試題及答案含解析
- 無人機操控技術 課件全套 項目1-6 緒論-無人機自動機場
- 江蘇紅豆實業(yè)股份有限公司償債能力分析
- 四川省2023年普通高等學校高職教育單獨招生文化考試(中職類)數學試題(原卷版)
- 水力機械原理與設計課件
- 江蘇電子信息職業(yè)學院單招職業(yè)技能測試參考試題庫(含答案)
- 充電樁采購安裝投標方案(技術方案)
- 7.1開放是當代中國的鮮明標識課件-高中政治選擇性必修一當代國際政治與經濟(1)2
- 2024年浙江首考英語聽力原文解惑課件
- 民族團結教材
- 煤礦頂板管理技術培訓課件
評論
0/150
提交評論