基於ATMega16單片機的密碼鎖的設計

2021-01-10 電子產品世界

隨著科技的發展,安全問題越來越受人們關注,各種安全產品相繼問世,如指紋防盜,紅外防盜等,雖然這類產品的安全性較高,但其成本也同樣較高,攜帶安裝都不方便也同樣限制了其發展。本文利用ATMega 16單片機,通過4×3鍵盤和七段數碼管顯示,除實現了密碼鎖的密碼驗證、重新設置和輸入錯誤報警等基本功能外,還創新性的實現了鍵盤的重新定義。通過對鍵盤的重新定義可以有效的防止密碼被盜,同時也降低了成本,便於攜帶安裝。

一、設計目的、用途、功能

1.設計目的
隨著科技的進步,安全問題越來越受人們重視,市場上也相應的出來很多產品,如指紋防盜,紅外防盜等。最然其安全性能很高,但是成本也相對較高,也不方便攜帶和安裝。本設計的目的就是為了保證高安全性的前提下,實現降低成本,方便攜帶安裝。
2. 設計用途
由於本設計成本較低且安全性能穩定優良,可適用於家庭防盜、行李箱、車載行李箱等一些安全性能要求不高且需要便攜的產品上,其安全性能遠遠優於同等成本的安全性。本設計的鍵盤定義的思想可移植到自動提款機、公共場合的提款裝置等,可以防止用戶輸入密碼時被別人偷看、竊取等,增加用戶提款時的安全性。
3.實現功能
1)密碼設置功能:默認情況下,默認密碼為「6666」,鍵盤默認為
「 1 2 3
4 5 6
7 8 9
# 0 * 」
當鍵盤按下時,即為密碼輸入,每輸入一位,七段數碼管顯示「8」並左移一位。如果輸入正確,即顯示「PASS」;如果輸入錯誤,即顯示「ErOr」,輸入錯誤達到三次,鍵盤自動鎖死,無法再次輸入,並且蜂鳴器發出警報。輸入過程中按「*」可以刪除輸入錯誤的數字,同時顯示也右移一位。
2)鍵盤重新定義功能:當密碼輸入正確後再按下「#」,即進入選擇修改功能,再次輸入「#」即進入鍵盤重新定義功能。依次按下每個按鍵,即從0開始定義,直到9即定義結束(「*」「#」鍵無法被重新定義)。輸入過程中,每輸入一位,蜂鳴器響一聲,直到完全將「0~9」重新定義結束。此時數碼管顯示「PASS」,鍵盤即為重新定義後的鍵盤,再次輸入密碼時必須按照重新定義後的鍵盤輸入。同樣,輸入過程中,按「*」鍵可以刪除上一位輸入的數字。
3)功能復位:當有人輸入三次錯誤觸發蜂鳴器時,蜂鳴器會一直響,發出警報,直到其主人按下「reset」鍵,全部恢復默認。

二、硬體設計

1.硬體設計思路

1)鍵盤輸入:採用4×3式矩陣鍵盤輸入,三列從左往右依次對應PB0、PB1、PB2,四行從上往下依次對應PB4、PB5、PB6、PB7。
2)顯示:顯示採用共陽極七段數碼管顯示,四位數從右往左依次與PD0、PD1、PD2、PD3。七段數碼管的a b c d e f g對應埠PA0,PA1,PA2,PA3,PA4.PA5,PA6。
3)報警:當密碼輸入錯誤達到三次時,鍵盤被鎖,並且於埠PC0輸出高電平,驅動蜂鳴器持續響。
2.電路原理圖

三、軟體設計

1.程序設計思想
1)鍵盤掃描:
AVR課上學習的鍵盤掃描程序為了消抖,而進行了軟體消抖處理, 「delay_ms(10); //延時去抖」。由於對CPU調用了「delay函數」,而使CPU在這10ms內無法進行其他工作,因此而浪費了CPU,降低了CPU效率。鑑於以上缺陷,我們對鍵盤掃描程序做了很大改進,採用定時器中斷與比較中斷相結合的方式,在讀取按鍵是否按下的兩次確認之間的時間裡,CPU可以繼續進行其他工作,從而提高了CPU的效率。
2)七段數碼管的顯示
針對本實驗的實際情況:密碼通過和重新定義鍵盤通過時,七段數碼管顯示「PASS」,錯誤時顯示「ErOr」,因此為了提高程序運行的效率,採用指針變量輸出的方式,即將「PASS」和「ErOr」的顯示預存在存儲器中,當需要時,指針變量指到相應的存儲器顯示。對每輸入一位左移的顯示則採用動態掃描的方式。
3)蜂鳴器報警:
對PC7埠輸出高電平驅動蜂鳴器發出警報。

相關焦點

  • 基於狀態機的語音電子密碼鎖設計
    引言   隨著電子技術的發展,具有防盜報警、語音提示等功能的電子密碼鎖代替密碼量少、安全性差的機械式密碼鎖已是必然趨勢。目前大部分密碼鎖採用單片機進行設計,電路較複雜,性能不夠靈活。
  • 利用ATmega16L設計的溫度控制系統
    概述:一種基於ATmega16L單片機的溫度控制系統,闡述該系統的軟硬體設計方案。  本文主要介紹基於ATmega16L單片機的溫度控制系統的設計,具體包括爐溫的採集和控制、LCD顯示以及PC機繪製溫度變化的曲線圖等。硬體和軟體設計採用模塊化的思想,系統集成度較高。  2 系統的硬體設計  圖1為系統硬體的總體結構圖。
  • 示波器戴著用 鬼才工程師示波器手錶設計電路曝光
    ATmega系列是8位的AVR單片機 。ATxmega系列是mega8位的升級產品具有多個產品線AVR32就是32位的AVR單片機 AVR單片機的ROM容量可以從型號上看出,比如ATmega8/16/32/64/128的單片機,其ROM分別為8K、16K、32K、64K和128K。
  • AVR單片機的優勢特徵及未來發展展望
    1997年,由ATMEL公司挪威設計中心的A先生與V先生利用ATMEL公司的Flash新技術,共同研發出RISC精簡指令集的高速8位單片機,簡稱AVR。 AVR單片機的優勢特徵 單片機已廣泛地應用於軍事、工業、家用電器、智能玩具、可攜式智能儀表和機器人製作等領域,使產品功能、精度和質量大幅度提升,且電路簡單,故障率低,可靠性高,成本低廉。
  • avr單片機和stm32區別與優缺點分析
    摘要:avr單片機和stm32單片機是目前使用較廣泛的單片機,那麼avr單片機和stm32單片機有什麼區別呢?有什麼優劣勢呢?通用寄存器一共32個(R0~R31),前16個寄存器(R0~R15)都不能直接與立即數打交道,因而通用性有所下降。而在51系列中,它所有的通用寄存器(地址00~7FH)均可以直接與立即數打交道,顯然要優於前者。
  • 基於單片機的氣壓式高度計設計
    摘要:採用集成度高的壓阻式矽氣壓傳感器,運用模塊化設計方法完成了基於C8051F353單片機的數字式氣壓高度本氣壓式高度測量系統使用微型壓阻式傳感器,通過對靜壓的測量,經過模/數變換後由單片機進行數字濾波,函數解算出載體當前的絕對高度,具有較高精度和抗幹擾能力。1 高度測量系統的設計 大氣壓力在數值上等於所在海拔高度往上直到大氣上界整個空氣柱的重量,因此理想情況下,大氣壓力與海拔高度具有一一對應的關係。
  • 基於單片機及傳感器的機器人設計與實現
    摘要: 本設計基於單片機及多種傳感器,完成了一個自主式移動機器人的製作。單片機作為系統檢測和控制的核心,實現對機器人小車的智能控制。本文針對具有引導線環境下的路徑跟蹤這一熱點問題,基於單片機控制及傳感器原理,通過硬體電路製作和軟體編程,製作了一個機器人,實現了機器人的路徑跟蹤和自動糾偏的功能,並能探測金屬,實時顯示距離。
  • 基於單片機的溫度傳感器設計
    打開APP 基於單片機的溫度傳感器設計 發表於 2016-12-27 15:07:07 通過對AT89C2051單片機原理分析,研究了一種對環境溫度測量、控制的設計方案,實現了採用AT89C2051單片機編程達到控制溫度,精確測量的目的。
  • 基於單片機的角度測量儀的設計
    本文分析了基於AT89S51 單片機的角度測量的硬體組成、電路設計原理。給出了主函數的工作流程和原始碼。設計樣機已通過多種環境實驗的測試。  角度測量儀是某控制系統中瞄準裝置的關鍵部件。  1  硬體基本原理  首先,角度測量儀利用單片機讀取光電編碼器測出的角度值,再將角度值轉換成密位值並顯示在數碼屏上(注意: 密位(mil) 是一種角度單位,密位100 = 角度6°)。單片機判斷當前角度值的偏差範圍,給出控制信號點亮相應的發光二極體指示燈。
  • 基於單片機的大型LED顯示系統設計
    基於單片機的大型LED顯示系統設計 佚名 發表於 2020-03-08 13:38:00 隨著平板顯示技術的不斷更新,大型LED顯示系統利用發光二極體構成的點陣模塊或像素單元組成大面積顯示屏
  • 基於單片機的簡易多通道虛擬示波器的設計
    為了實時、準確地測量輸入波形的參數,本文採用自帶8路10位ADC的單片機ATmega16,結合簡單的外圍電路,即可將輸入波形實時傳送給PC機進行處理。通過PC機上虛擬儀器平臺LabVIEW開發的上位機軟體對波形進行顯示和處理,從而達到簡易虛擬示波器的效果。
  • 基於單片機的電動車36V鋰電池組保護電路設計方案
    針對目前電動車鋰電池組所用的保護電路大多都由分立原件構成,存在控制精度不夠高、技術指標低、不能有效保護鋰電池組等特點,本文中提出一種基於單片機的電動車36V鋰電池組(由10節3. 6 V鋰電池串聯而成)保護電路設計方案,利用高性能、低功耗的ATmega16L 單片機作為檢測和控制核心,用由MC34063構成的DC
  • 基於單片機的散體流量計的設計與開發
    利用單片機結合微計算技術與測量技術,組成智能化的測量儀表,可以解決許多傳統儀表不易完成的難題,同時可以簡化儀表電路、提高可靠性、加快新產品開發速度。比如2014年海軍潛艇學院的王宗亮,設計了一種V型氣體流量計,利用單片機對氣體的溫度、壓差和壓力進行測量與換算後顯示氣體的流量。
  • 基於單片機的無人機真空速測量系統設計
    摘要:為了測量無人機真空速,設計了基於單片機的無人機真空速本文介紹了一種基於C8051F352單片機的無人機真空速測量系統的設計,該系統測量結果的相對誤差小於4%,能夠滿足無人機飛行控制系統的精度要求。
  • 基於單片機設計的酒精氣體濃度探測儀
    基於STC12C5A16AD單片機設計的酒精氣體濃度探測儀,可用來檢測酒精氣體濃度,當酒精氣體濃度高於允許限定值時,發出報警。STC12C5A32AD這款單片機自身帶有8路ADCP1.0-P1.7口模數轉換功能;可以大量簡化硬體電路設計。
  • 基於Atmega128的智能教學無人車控制系統設計
    摘要:針對市場上大多數教學無人車設計採用單片機單一控制導致其功能擴展性弱、靈活度低等問題,設計了一種基於Atmega128單片機和無線通信的智能教學無人車控制系統,該系統包括PC機控制部分和無人車控制部分,通過PC控制端軟體可以經無線通信模塊實現對無人車的準確運動控制。
  • 一款基於51單片機的高頻頻率計設計
    摘要 基於51單片機設計了一款測試範圍在1 Hz~10 MHz的頻率計。系統通過峰值有效電路和有效值電路將正弦渡、方波和三角波轉化為直流信號送入單片機,通過編寫相應的程序計算出其有效值和峰峰值的比,實現自動檢測的目的,並由顯示電路顯示測量結果。該系統電路簡潔、軟體編寫簡單、調試難度低。
  • 基於單片機的主從紅外通信的系統設計
    本文設計了一種基於單片機PIC18F248的主從式紅外通信系統,主要設計了紅外接口電路以及主機和從機通信軟體流程。  系統硬體電路設計  在主從式紅外通信系統中,主機及從機的紅外發射電路相同,紅外線的載波頻率都為38KHz,在同一時間內,可以是主機發射,從機接收;或者從機發射,主機接收。
  • 基於51單片機的TFT液晶顯示設計
    1 硬體設計  本系統硬體電路的設計主要包括單片機最小系統電路, TFT液晶顯示電路, 時鐘電路, 設置電路以及溫度採集電路。其系統工作原理框圖如圖1所示。  一個單片機的最小系統包括外部晶振、電源、復位電路等, 這是保證單片機正常工作的必要條件。
  • 基於ATMEGA48單片機的儀表步進電機的細分控制
    儀表步進電機屬於步進電機中體積、功耗較小的類別,可以由單片機或專用晶片的引腳直接驅動,不需外接驅動器,因而在儀表中被用於指針的旋轉控制。  需求分析  本方案中使用的儀表具有如下特點和設計參數:  ●指針響應靈敏、走位準確,即收到驅動脈衝後不能丟步;  ●指針轉動平穩,即指針從當前位置到目標位置之間的走位要平穩,正、反轉都不能出現抖動;  ●兩相、步距角10o、轉動範圍300o。