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

正文內(nèi)容

電子信息工程-基于單片機的十位數(shù)字密碼鎖電路設計-資料下載頁

2024-12-06 03:30本頁面

【導讀】單片機廣泛應用于生活生產(chǎn)中的各個自動控制領域,單片機的應用有利于產(chǎn)品的小型化、智能。本文從經(jīng)濟實用的角度出發(fā),從加深對單片機理論的理解和熟練電子設計過程的角度出發(fā),報提示的十位數(shù)字密碼鎖。經(jīng)實驗證明,該密碼鎖具有設計合理,簡單易行,成本低,安全實用等。特點,適合居家住宅、辦公用鎖等要求,具有較高實用價值。

  

【正文】 果為不正確,則顯示 FAIL。一段時間后返回主程序開始等待新一次的密碼輸入。 在整個過程中外中斷 0 都是開放的,可以刪除一位密碼。 主程序流 程圖如圖 41所示: 成都大學學士學位論文 ( 設計) 17 開始 LCD 初始化 設置初始密碼 調(diào)用顯示 w e l c o m e 程序 調(diào)用鍵盤掃描程序 調(diào)用按鍵識別程序 鍵碼入棧 調(diào)用鍵盤掃描程序 鍵碼出棧 是否為功能鍵 是否已輸入十位 比較密碼是否正確 允許開鎖和修改密碼 調(diào)用顯示“ OK ”程序 延時 10 秒 是否已輸入十位 存儲 顯示 調(diào)用顯示“ F A I L ”程序 延時 2S 按下改密碼鍵執(zhí)行改密碼程序 否 是 否 是 否 是 否 是 有鍵按下 無鍵按下 按鍵釋放 按鍵未放 圖 41 主程序流程圖 密碼刪除 和密碼修改程序 密碼 刪除是刪除上一位輸入的密碼,密碼輸入時會有一個寄存器或一個存儲單元來記錄密碼位數(shù),這個位數(shù)的初始值為 10,表示一共要輸入十位密碼,每輸入一位密碼此值減一。同時,在密碼輸入時有一個地址指針,指向輸入的密碼臨時要存儲的位置,因此要實現(xiàn)密碼刪除也很簡單,因為用外中斷 0 來實現(xiàn)密碼刪除,所以在外中斷 0 的中斷服務程序里面將待輸入密碼位數(shù)加 1,把存儲地址減一即下一次輸入時覆蓋即可。 同時在顯示器上把光標前顯示的一位數(shù)值寫入空格,并將光標移到空格的左邊,下一次輸入時及在此空格上顯示下一次輸入的數(shù)值。 修改密碼其實就是一個存儲的過程,此設計中修改密碼通過外中斷 1 來完成的。即再外中斷 1的中斷服務程序中調(diào)用鍵盤掃描和查詢識別程序,輸入十位數(shù)字后將它們覆蓋存儲在密碼存儲區(qū)域,即實現(xiàn)了密碼修改。輸入新密碼部分這部分程序和主程序里面的輸入密碼程序類似,都是一位一位成都大學學士學位論文 ( 設計) 18 的輸入密碼并臨時存儲,輸入完后接到確認鍵命令時,把輸入的十位密碼存儲于固定密碼存儲區(qū)域(覆蓋舊密碼)。這樣就實現(xiàn)了密碼修改。還有就是,當修 改密碼不成功時調(diào)用顯示“ FAIL”子程序在顯示器上顯示 FAIL表示未能修改成功,修改成功時調(diào)用顯示“ OK”子程序在顯示器上顯示 OK 表示修改密碼成功。 刪除密碼和修改密碼流程圖如圖 42所示。 外中斷 0 服務程序 是否已有輸入 存儲地址指針減 1 需輸入位數(shù)加 1 光標左移 1 位 寫入空格鍵 光標左移 1 位 中斷返回 是 否 外中斷 1 服務程序 調(diào)用顯示 c r e a t e 程序 調(diào)用鍵盤掃描程序 調(diào)用按鍵識別程序 鍵碼入棧 調(diào)用鍵盤掃描程序 鍵碼出棧 是否為功能鍵 是否已輸入十位 修改密碼 調(diào)用顯示“ OK ”程序 中斷返回 有鍵按下 無鍵按下 按鍵釋放 按鍵未放 是 否 是 否 調(diào)用顯示“ F A I L ”程序 是否已輸入十位 存儲 顯示 否 是 累加器 A 出棧 累加器 A 入棧 圖 42 刪除密碼 (左) 和修改密碼流程圖 (右) 鍵盤掃描和按鍵識別 程序 辨別鍵盤中有無鍵按下,由單片機 I/O 口向鍵盤送全掃描字,然后讀入行線狀態(tài)來判斷。方法是: 先 向 P1口 輸出全掃描字 0F0H,把全部 行 線置為低電平,然后將 P1口狀態(tài) 讀入累加器 A中 并 將低四 位屏蔽( 和 0F0H做與運算 )保留列線狀態(tài) 后將此時的值存起來,再對 P1口輸出全掃描字 0FH把全部列線置為低電平,并再次將 P1口狀態(tài)讀入累加器 A中,同理再將此讀入值 的 高四位屏蔽 (與0FH做與運算) 保留行線狀態(tài),最后將前后兩次獲得的值通過或運算(列線狀態(tài)和行線狀態(tài)合并)后,判斷此值是否等于 0FFH,如果不等于 0FFH則可以判定有按鍵按下( 總會有一根 列( 行 ) 線電平被拉至低電平從而使 列( 行 ) 線不全為 1) 。 否則則可判定無鍵按下。 檢查到有鍵按下后就轉(zhuǎn)到 按鍵識別 程序 。 此次設計將 P1口的低四位作為行線,高四位作為 列線,成都大學學士學位論文 ( 設計) 19 按鍵識別就是通過向 P1口送列掃描字 逐列掃描, 并記錄下當前列號, 掃描字的初始值為 11110111,開始掃描時將掃描字向左循環(huán)移一位送入 P1口,使第 0列置零其他列和行都是高電平,然后從第 0行開始逐行檢測各行的電平狀態(tài),如果檢測到某一行為低電平,那么按下的鍵就在當前掃描的列與此行 交點處,此按鍵的鍵碼值 =行 號 4+列 號 。通過這樣的方法逐列掃描進而計算出按鍵鍵碼。 P 1 = 0 F 0 H 置行線低電平 讀 P1 口送入累加器 A A a n l 0 F 0 H (保留列線狀態(tài)) A 中內(nèi)容送 B 保存 P 1 = 0 F H 置列線低電平 讀 P1 口送入累加器 A A a n l 0 F H (保留行線狀態(tài)) A= A o r l B 返回 R 2 = 1 1 1 1 0 1 1 1 初始化掃描碼 掃描碼循環(huán)左移一位存入 R2 掃描碼送入累加器 A 送掃描碼給 P1 口 P1 口狀態(tài)讀入累加器 A A o r l 0 F 0 H 屏蔽列線狀態(tài) A = 0 F F H ? A C C . 0 = 1 ? A C C . 1 = 1 ? A C C . 2 = 1 ? 行地址 =3 A= 行地址 4 A = A + 列地址 返回 不在此列列地址加 1 是 否 列地址 =4 ? 否 是 是 是 是 行地址 =0 行地址 =1 行地址 =2 否 否 否 列地址( R4 ) =0 圖 43 鍵盤掃描(左)和按鍵識別(右)程序流程圖 密碼比較 和顯示 程序 密碼比 較是通過邏輯運算來完成的。將輸入的十位密碼按對應順序與正確的密碼依次做異或運算,如果輸入某位密碼與相應的正確密碼相同的話,那么做異或運算后的結果應該為 0,不相同則成都大學學士學位論文 ( 設計) 20 為 1,因此,將相對應的十對密碼(輸入的密碼和正確的密碼)做異或運算的十個結果做或運算得到最終結果,如果有一個密碼沒輸入正確那么最終比較結果就會為 1,十個密碼全部正確,最終比較結果為 0。比較完后將此結果送到 , 1,按下開鎖鍵后驅(qū)動開鎖指示發(fā)個二極管 D1 點亮,并且蜂鳴器不會鳴響。否則的話, 口將是高電平,按 下開鎖鍵后開鎖指示發(fā)光二極管不會亮,并且蜂鳴器會鳴響。 密碼比較相對比較簡單,這里就不在詳細介紹了,具體程序段詳見附錄中的程序代碼。 密碼顯示以及界面字符顯示就是向 1602 液晶顯示器寫指令或數(shù)據(jù)的過程。 1602 液晶顯示器是靜態(tài)顯示,它只有 11條指令,第三章中已作了詳細介紹,使用比較簡單。這里以顯示“ OK”子程序 為例介紹一下顯示的具體操作過程。如圖 44 所示 ,左邊為寫命令子程序流程,中間是些數(shù)據(jù)子程序流程,右邊是顯示“ OK”子程序流程圖。 累加器 A= 0 1 H ( 清屏 指令 ) 調(diào)用 寫 數(shù)據(jù) 子程序 累加 器 A= 8 7H ( 設置 地址 從 第一 行 第 8 列 開始 顯示 ) 調(diào)用 檢查 忙 子程序 E= 0 返回 調(diào)用 寫 指令 程序 將 O 的 ASC Ⅱ 碼 送 入 A 將 K 的 ASC Ⅱ 碼 送 入 A 調(diào)用 寫 數(shù)據(jù) 子程序 RS = 0 RW = 0 E= 1 A 中 指令 送 P2 口 E= 0 延時 返回 調(diào)用 檢查 忙 子程序 E= 0 RS = 1 RW = 0 E= 1 A 中 數(shù)據(jù) 送 P2 口 E= 0 延時 返回 圖 44 寫 命令 (左) 和寫數(shù)據(jù) (中) 及顯示“ OK” (右) 程序流程 圖 其他顯示 程序,如顯示“ WELCOME”、“ FAIL”等子程序都與 44中顯示“ OK”子程序類似,輸入時顯示密碼更簡單,因為 一次 只顯示一個字符 。整個完整的軟件程序見附錄。 成都大學學士學位論文 ( 設計) 21 第 5 章 調(diào)試仿真 用 Keil 軟件進行編譯、連接 Keil uVision2 IDE 是美國 Keil Software 公司出品的 51 系列單片機 C 語言 集成 開發(fā)系統(tǒng),使用接近于傳統(tǒng) c 語言的語法來開發(fā), 易學易用, 而且大大的提高了工作效率和項目開發(fā)周期 ,他還能嵌入?yún)R編,您可以在關鍵的 位置嵌入,使程序達到接近于匯編的工作效率。 Keil uVision2 IDE 軟件 提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全 Windows 界面,使您能在很短的時間內(nèi)就能學會使用 它 來開發(fā)您的單片機 應用程序 。 另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到 Keil uVision2 IDE 生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。 另外, Keil uVision2 IDE 支持 C 語言程序,也 支持 匯編語言程序。 首先用 Keil建立項目文件,在對匯編程序進行編譯之前先將程序文件用 .asm存盤。然后將 asm程序文件添加到建立的項目中。 由于是匯編語言程序,注意把項目中自動添加的 文件刪除,否則編譯時會出錯。在編譯、連接前注意選擇 Project菜單下的 Options for Target‘ Target1’命令,選擇 Output選項卡,在 Create Executable選項前打鉤,以選擇生成可執(zhí)行文件 HEX文件。 然后選擇 Project菜單下的 Built Target命令進行編譯、連接。編譯、連接情況如圖 51. 圖 51 編譯、連接顯示圖 當項目編譯、連接成功后,就可以 運行它來觀察結果,如果有程序有錯誤,在下面的 Build 選項卡中會顯示錯誤 或者警告提示,可以根據(jù)提示修改程序。另外還可以用 Debug菜單下的 Start/Stop Debug Session命令啟動各種方式的運行過程,用 Debug下的 Go可以聯(lián)系運行, Step單步運行(包括子函數(shù)), Step Over單步運行但子函數(shù)一步完成 ??梢杂?View菜單調(diào)出各種輸出窗口觀察結果。最后 Stop running命令停止運行,再用 Start/Stop Debug Session命令 結束 運行調(diào)試。 成都大學學士學位論文 ( 設計) 22 用 Proteus 軟件進行仿真 Proteus簡介 Proteus 軟件是英國 Labcenter electronics 公司出版的 EDA 工具軟件。它不僅具有其它 EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的 工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。 Proteus 是世界上著名的 EDA 工具 (仿真軟件 ),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到 PCB 設計,真正實現(xiàn)了從概念到產(chǎn)品的完整設計。是目前世界上唯一將電路仿真軟件、 PCB 設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持 805 HC1 PIC10/12/16/18/24/30/DsPIC3 AVR、 ARM、 8086和 MSP430等, 2021年即將增加 Cortex和 DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持 IAR、 Keil和 MPLAB等多種 編譯器 。 1. Proteus軟件具有其它 EDA工具軟件(例: multisim)的功能。這些功能是: ( 1)原理布圖 。 ( 2) PCB自動或人工布線 ( 3) SPICE電路仿真 2. 革命性的特點 : ( 1)互動的電路仿真 用戶甚至可以實時采用諸如 RAM, ROM,鍵盤,馬達, LED, LCD, AD/DA,部分 SPI 器件,部分IIC器件。 ( 2)仿真處理器及其外圍電路 可以仿真 51系列、 AVR、 PIC、 ARM、等常用主流單片機。還可以直接在基于原理圖的虛擬原型 上編程,再配合顯示及輸出,能看到運行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等, Proteus建立了完備的電子設計開發(fā)環(huán)境。 3. 資源豐富 : ( 1) Proteus 可提供的仿真元器件資源:仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件,有 30多個元件庫。 ( 2) Proteus 可提供的仿真儀表資源 :示波器、邏輯分析儀、虛擬終端、 SPI 調(diào)試器、 I2C 調(diào)試器、信號發(fā)生器、模式發(fā)生器、交直流電壓表、交直流電流表。理論上同一種儀器可以在一個電路中 隨意的調(diào)用。 ( 3)除了現(xiàn)實存在的儀器外, Proteus還提供了一個圖形顯示功能,可以將線路上變化的信號,以圖形的方式實時地顯示出來,其作用與示波器相似,但功能更多。這些虛擬儀器儀表具有理想的參數(shù)指標,例如極高的輸入阻抗、極低的輸出阻
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1