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

正文內(nèi)容

基于單片機(jī)的電子密碼鎖的設(shè)計(jì)與仿真課程設(shè)計(jì)報(bào)告-閱讀頁

2024-09-14 14:29本頁面
  

【正文】 02芯片來完成。 鍵盤輸入模塊 由于本設(shè)計(jì)所用到的按鍵數(shù)量較多而不適合用獨(dú)立按鍵。本設(shè)計(jì)采用 4 4 觸點(diǎn)式鍵盤,分別有數(shù)字鍵,確定鍵,清除鍵和干擾鍵。 它與單片機(jī)的連接如圖如圖 3- 1所示, 圖 3- 1 按鍵圖 具體的功能設(shè)計(jì)如表 31 所示: 表 31 按鍵功能 按鍵 鍵名 功能說明 19 鍵 數(shù)字鍵 輸入密碼 S1 開鎖鍵 開始輸入密碼 S2 閉鎖鍵 開鎖后,閉鎖 S3 重置密碼鍵 重新設(shè)定密碼 清除 清除鍵 清除上一位輸入 確認(rèn) 確認(rèn)鍵 操作確認(rèn) S4 電子信息工程課程設(shè)計(jì) 13 密碼存儲電路 由 52 單片機(jī)掉電后會丟失數(shù)據(jù)存儲器里的數(shù)據(jù),因此必須外加掉電存儲電路,由 AT24C02 芯片來 實(shí)現(xiàn)。第 4腳和 8腳分別為電源、地線。第 6腳 SCL為串行時(shí)鐘輸入線,與單片機(jī) 相連。當(dāng) 8XX51 單片機(jī)的復(fù)位引腳 RST 出現(xiàn) 5ms 以上的高電平時(shí)單片機(jī)就完成了復(fù)位操作。因此要求復(fù)位后能脫離復(fù)位狀態(tài)。上電復(fù)位要求接通電源后,自動實(shí)現(xiàn)復(fù)位操作。電路圖如 圖 3- 3 所示: 顯示電路 顯示部分由液晶顯示器 1602 完成。當(dāng)密碼輸入完成時(shí),按下確認(rèn)鍵,根據(jù)輸入密碼 的正確與否, LCD 上顯示對應(yīng)的狀態(tài)。通過 LCD顯示屏,可以清楚地判斷出密碼鎖所處的狀態(tài)。密碼輸入正確時(shí),不發(fā)聲直接輸出開鎖信號。警報(bào)到達(dá)一定時(shí)間后,自動回到閉鎖狀態(tài)。 對應(yīng)電路圖如圖 3- 5所示: 圖 3- 5 警報(bào)電路 狀態(tài)顯示及繼電器控制電路 狀態(tài)顯示及繼電器控制電路,主要用于顯示密碼鎖的開鎖閉鎖狀態(tài)。同時(shí),利用 口控制繼電器的通斷,實(shí)現(xiàn)弱點(diǎn)控制強(qiáng)電。 對應(yīng)電路圖如圖 3- 6所示: 第五章 軟件設(shè)計(jì) 軟件設(shè)計(jì)方案 主要完成,開始時(shí)液晶顯示初始狀態(tài)。輸入密碼輸入過程中可以進(jìn)行退格,輸入完成后按下確認(rèn)鍵,系統(tǒng)會將所輸入與系統(tǒng)密碼進(jìn)行比對。按下 S2 選擇上鎖,鎖重新回到閉鎖狀態(tài),開鎖信號滅, LCD 回到初始化狀態(tài)。在修改密碼前要輸入正確舊的密碼。期間操作出現(xiàn)失誤,如兩次新密碼輸入不相同,或者密碼位數(shù)不到 8位時(shí),系統(tǒng)會返回鎖開前即選擇重新設(shè)密碼前的狀態(tài)。一段時(shí)間后,進(jìn)入閉鎖狀態(tài)。如果在規(guī)定次數(shù)以內(nèi)密碼輸入正確,則鎖開,且錯(cuò)誤次數(shù)清空,不會影響到下一次的開鎖。 圖 3- 6狀態(tài)顯示及繼電器控制電路 電子信息工程課程設(shè)計(jì) 16 軟件設(shè)計(jì)總流程圖 圖 5- 1 密碼鎖的總流程圖 電子信息工程課程設(shè)計(jì) 17 具體功能軟件實(shí)施 鍵盤掃描 鍵盤設(shè)計(jì)應(yīng)用編程式掃描方式,利用 CPU完成其它工作的空余時(shí)間來調(diào)用鍵盤掃描子程序,響應(yīng)鍵盤輸入的要求。掃描程序包括: ; ,取得閉合鍵的行、列值; ,如未釋放繼續(xù)等待; ,同時(shí)轉(zhuǎn)去執(zhí)行該閉合鍵的功能。 uchar col_code。 if(P1!=0xf0) { delayms(200)。 row_code=0xfe。 if(P1!=row_code) { col_code=(P1amp。 beep()。 } row_code=((row_code1)|0x01)。 } 電子信息工程課程設(shè)計(jì) 18 實(shí)現(xiàn)流程圖如下: 開 始調(diào) 用 按 鍵 查詢 子 程 序有 鍵 按 下 嗎延 時(shí) 消 抖確 實(shí) 有 鍵按 下 嗎送 列 掃 描 字讀 行 線 狀 態(tài)第 0 行 按 下第 1 行 按 下第 2 行 按 下第 3 行 按 下修 改 列 號4 列 掃 描 完YY延 時(shí) 消 抖NN鍵 號 為 0 0NYNNNY鍵 號 為 0 4鍵 號 為 0 8鍵 號 為 1 2相 加 計(jì) 算 鍵 號YYY調(diào) 用 按 鍵 查 詢 子 程 序按 鍵 釋 放 嗎返 回YNN 圖 5- 2 鍵盤掃描流程圖 按鍵消抖 設(shè)計(jì)采用的是機(jī)械觸點(diǎn)式按鍵。抖動時(shí)間的長短與開關(guān)的機(jī)械特性有關(guān),一般為 5 ~10 ms。既按鍵一次按下或釋放被錯(cuò)誤的認(rèn)為是多次操作,這個(gè)是不允許出現(xiàn)的,為了克服按鍵觸點(diǎn)機(jī)械抖動所導(dǎo)致的檢測誤判,必須采取去抖 圖 53 機(jī)械抖動原理 電子信息工程課程設(shè)計(jì) 19 動措施,由于按鍵多幾考慮軟件去抖。 液晶顯示 使用 1602 的的一般流程基本是: A:初始化 初始化里面一般有設(shè)置顯示行、清屏、設(shè)置光標(biāo)的開關(guān)、光標(biāo)的閃爍、設(shè)置起始地址、 設(shè)定顯示屏或光標(biāo)移動方向指令 。 基本操作時(shí)序: 讀狀態(tài) 輸入: RS=L, RW=H, E=H 輸出: DB0~ DB7=狀態(tài)字 寫指令 輸入: RS=L, RW=L, E=下 降沿脈沖, DB0~ DB7=指令碼 輸出:無 讀數(shù)據(jù) 輸入: RS=H, RW=H, E=H 輸出: DB0~ DB7=數(shù)據(jù) 寫數(shù)據(jù) 輸入: RS=H, RW=L, E=下降沿脈沖, DB0~ DB7=數(shù)據(jù) 輸出:無 C:送顯示 根據(jù) LCD1602 datasheet 編寫以下 LCD 顯示相關(guān)控制及顯示程序: void Write_LCD_Command(uchar cmd)/*送指令 { RS = 0。 EN = 0。 Delaymms(1)。 Delaymms(1)。 } void Write_LCD_Data(uchar dat)/*送數(shù)據(jù) { RS = 1。 EN = 0。 Delaymms(1)。 Delaymms(1)。 } void Initialize_LCD()/*初始化 { Write_LCD_Command(0x38)。 Write_LCD_Command(0x06)。 } void lcm_setxy(uchar x,uchar y)/*選擇顯示位置 { if(y==1) Write_LCD_Command(x|0x80)。 } void lcm_write_string(uchar *string)/*輸入顯示內(nèi)容 { uchar i=0。\039。 i++。 24C02 通過 SDA和 SCL 兩根口線可以實(shí)現(xiàn)與單片機(jī)的 I2C 通信。如密碼讀取,密碼存入等,由于程序過多,具體程序見附錄程序中 24C02 相關(guān)程序。密碼輸電子信息工程課程設(shè)計(jì) 22 入成功之后,鎖開,根據(jù) LCD 提示選擇回到鎖定狀態(tài)或者重新設(shè)置密碼。首先輸入舊密碼一次,如果正確便進(jìn)行密碼的修改再輸入新的密 碼兩次,兩次的密碼進(jìn)行比較,如 果兩次密碼相同密碼修改成功,不同就會從新輸入新的密碼,再進(jìn)行比較,相同 之后提示密碼設(shè)置成功。 第六章 仿 真與調(diào) 試 硬件調(diào)試 利用 proteus畫好相應(yīng)的硬件流程圖,注意液晶顯示器 LCD1602的各個(gè)引腳,尤其與單片機(jī)的接口,在硬件調(diào)試的測試軟件中要對它的控制引腳進(jìn)行定義。 此次制作中,畫出 PCB 板后,將 LCD 插入對應(yīng)位置,通電后發(fā)現(xiàn) LCD 顯示非常不明顯,通過調(diào)節(jié) VEE 端口的可變電阻器調(diào)節(jié)液晶顯示偏壓達(dá)到比較好的效果。也正是因?yàn)橛?16 個(gè)按鍵,所以他們之間的連接線比較多,行線、列線的交點(diǎn)是這部分的關(guān)鍵。 出于方便經(jīng)濟(jì)和可移植性考慮,實(shí)際操作過程中我們選擇的是外接成品的鍵盤電路。 電子信息工程課程設(shè)計(jì) 23 此次電路中采用有源蜂鳴器用于按鍵聲和報(bào)警功能。有源蜂鳴器應(yīng)注意其 + 、 管腳。 檢測其它元器件的性能是否能夠正常工作,如電阻、電容、 LED、 780繼電器,開關(guān)等器件。由于電路模擬的結(jié)果并不能完全準(zhǔn)確的模擬實(shí)際電路,所以這里的調(diào)試主要就是針對實(shí)際電路中出現(xiàn)的問題或不穩(wěn)定情況進(jìn)行調(diào)試。應(yīng)特別注意電源的檢查,防止電源的短路和極性錯(cuò)誤,并重點(diǎn)檢查各連接線間是否存在相互短路的情況。在調(diào)試過程中,對各元件電源檢查的過程中,應(yīng)逐個(gè)加電,分析電路,在保證 電源連接正確的情況下再加電測試,以防電路連接錯(cuò)誤使得電源短路造成對電路的損壞。 本電路的各設(shè)計(jì)及最終效果都是在 Keil 和 Proteus 仿真軟件的輔助下得以形成的,都在在 Proteus 中仿真得以通過了,達(dá)到了預(yù)期效果,也就是說電路在邏輯上是行的通的。程序編寫過程中,涉及到各主要芯片的數(shù)據(jù)手冊的閱讀,以及對整個(gè)程序流程 的把握 調(diào)試過程如圖 6 63 所示。在過程中讓我進(jìn)一步深刻的學(xué)習(xí)各種軟件的利用以及各種軟件給我們帶來的便利。 通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理 論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實(shí)際動手能力和獨(dú)立思考的能力。 所以還得繼續(xù)努力,進(jìn)一步提升自己。因此,我們在設(shè)計(jì)前必須做好充分的準(zhǔn)備,認(rèn)真查找詳細(xì)的資料,為我們設(shè)計(jì)的成功打下堅(jiān)實(shí)的基礎(chǔ)。 在這次課程設(shè)計(jì)過程中,我們遇到了很多問題。這個(gè)過程是相當(dāng)困難的,主要想實(shí)現(xiàn)各既定效果,搞清楚復(fù)雜的邏輯關(guān) 系,利用程序去實(shí)現(xiàn)各種邏輯關(guān)系。經(jīng)過這次課程設(shè)計(jì),我們學(xué)會了怎樣去利用標(biāo)準(zhǔn),利用規(guī)范去減小自己在排錯(cuò)過程中的復(fù)雜程度。 電子信息工程課程設(shè)計(jì) 26 參考資料 【 1】《數(shù)字電路實(shí)驗(yàn)》 主編 夏桂書 中國民航飛行學(xué)院 【 2】《數(shù)字電子技術(shù)基礎(chǔ)》 主編 閻 石 高等教育出版社 【 3】《電子技術(shù)實(shí)驗(yàn)與課程設(shè)計(jì)》 主編 李震梅 機(jī)械工業(yè)出版社 【 4】《單片機(jī)應(yīng)用程 序設(shè)計(jì)技術(shù)》 主編 周航慈 北京航空航天大學(xué)出版社 【 5】《單片機(jī)原理及及應(yīng)用》 主編 王迎旭 機(jī)械工業(yè)出版社 電子信息工程課程設(shè)計(jì) 27 附 錄Ⅰ 硬件原理圖 附 錄Ⅱ PCB 圖 電子信息工程課程設(shè)計(jì) 28 附 錄Ⅲ 源程序 /***************************************************/ /*函數(shù)名稱:定義頭文件 /***************************************************/ include include include include /***************************************************/ /*函數(shù)名稱:定義向量 /***************************************************/ define uchar unsigned char define C02_write 0xa0 define C02_read 0xa1 define no0 0x28 define no1 0x14 define no2 0x24 define no3 0x44 define no4 0x12 define no5 0x22 define no6 0x42 define no7 0x11 define no8 0x21 define no9 0x41 define enter 0x88 define backspace 0x81 define s1 0x18 define s2 0x48 define s3 0x82 define s4 0x84 define NOP4() {_nop_()。_nop_()。} /***************************************************/ /*函數(shù)名稱:定義數(shù)組 /***************************************************/ define lcm_write_cmd_add XBYTE[0x80FF] define lcm_write_data_add XBYTE[0x81FF] define lcm_read_busy_add XBYTE[0x82FF] define lcm_read_data_add XBYTE[0x83FF] uchar idata key_code[]={no0,no1,no3,no4,no5,no6,no7,no8,no9}。 uchar idata temp1_password[8]={0,0,0,0,0,0,0,0}。//輸入的密碼 uchar idata temp3_password[8]={0,0,0,0,0,0,0,0}。//用于 2 次密碼比較 //uchar Read_Current()
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1