總體設(shè)計(jì)思路 1、系統(tǒng)設(shè)計(jì)要求 實(shí)現(xiàn)密碼設(shè)置、密碼修改、鍵盤輸入、屏幕顯示、警報(bào)響應(yīng) 功能模塊包含:密碼存儲(chǔ)模塊、輸入模塊、顯示模塊、報(bào)警模塊 各模塊功能: 輸入模塊:分為密碼輸入按鍵與功能按鍵,用于完成密碼鎖輸入功能。 密碼存儲(chǔ)模塊:用于完成掉電存儲(chǔ)功能,使修改的密碼斷電后仍能保存。 顯示模塊:用于完成對(duì)系統(tǒng)狀態(tài)顯示及操作提示功能。 報(bào)警模塊:完成密碼輸入錯(cuò)誤達(dá)上限時(shí)警報(bào)功能 2實(shí)現(xiàn)方案 主芯片使用89c51芯片,存儲(chǔ)部件使用AT24C02,LCD顯示器用于顯示作用,報(bào)警部分用到的是蜂鳴器 輸入模塊: 3*4矩陣式鍵盤輸入,占用p1(0-7),用鍵盤掃描程序檢測(cè)按鍵被按下并執(zhí)行相應(yīng)操作,屏幕平常顯示當(dāng)前時(shí)間,按下解鎖鍵,屏幕顯示輸入密碼,密碼正確則將連有電磁繼電器的端口置1,0,通過電流吸合或彈開銜鐵,來模擬開鎖過程。連續(xù)5次輸錯(cuò)蜂鳴器報(bào)警!(中斷,定時(shí)器,邏輯控制均由內(nèi)部代碼控制) 密碼存儲(chǔ)模塊: 器材:AT24C02。AT24C02是一個(gè)2K位串行CMOS E2PROM, 內(nèi)部含有256個(gè)8位字 節(jié)。AT24C02有一個(gè)8字節(jié)頁(yè)寫緩沖器。該器件通過IIC總線接口進(jìn)行操作,有一個(gè)專門的寫保護(hù)功能。在單片機(jī)上的應(yīng)用廣泛, 可以實(shí)現(xiàn)掉電數(shù)據(jù)不丟失功能。 管腳圖: 管腳功能: 管腳名稱 | 功能 | A0、A1、A2 | 器件地址選擇 | SDA | 串行數(shù)據(jù)、地址 | SCL | 串行時(shí)鐘 | WP | 寫保護(hù) | VCC | +1.8V~6.0V工作電壓 | VSS | 地 |
SCL 串行時(shí)鐘 AT24C02串行時(shí)鐘輸入管腳用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時(shí)鐘,這是一個(gè)輸入管腳。 SDA 串行數(shù)據(jù)/地址 AT24C02 雙向串行數(shù)據(jù)/地址管腳用于器件所有數(shù)據(jù)的發(fā)送或接收,SDA 是一個(gè)開漏輸出管腳,可與其它開漏輸出或集電極開路輸出進(jìn)行線或(wire-OR)。 A0、A1、A2 器件地址輸入端 這些輸入腳用于多個(gè)器件級(jí)聯(lián)時(shí)設(shè)置器件地址,當(dāng)這些腳懸空時(shí)默認(rèn)值為0。當(dāng)使用AT24C02 時(shí)最大可級(jí)聯(lián)8個(gè)器件。如果只有一個(gè)AT24C02被總線尋址,這三個(gè)地址輸入腳(A0、A1、A2 )可懸空或連接到Vss。 WP 寫保護(hù) 如果WP管腳連接到Vcc,所有的內(nèi)容都被寫保護(hù)只能讀。當(dāng)WP管腳連接到Vss 或懸空允許器件進(jìn)行正常的讀/寫操作 AT24C02的器件地址: 顯示模塊: 器件:LCD1602 接口: LCD1602是很多單片機(jī)愛好者較早接觸的字符型液晶顯示器,它的主控芯片是HD44780或者其它兼容芯片。與此相仿的是LCD12864液晶顯示器,它是一種圖形點(diǎn)陣顯示器,能顯示的內(nèi)容比LCD1602要豐富得多,除了普通字符外,還可以顯示點(diǎn)陣圖案,帶有漢字庫(kù)的還可以顯示漢字,它的并行驅(qū)動(dòng)方式與LCD1602相差無幾,所以,在這里花點(diǎn)時(shí)間是值得的。 一般來說,LCD1602有16條引腳,據(jù)說還有14條引腳的,與16腳的相比缺少了背光電源A(15腳)和地線K(16腳)。這塊LCD1602的型號(hào)是HJ1602A,它有16條引腳。如圖: 它的16條引腳定義如下: 引腳號(hào) | 符號(hào) | 引腳說明 | 引腳號(hào) | 符號(hào) | 引腳說明 | 1 | VSS | 電源地 | 9 | D2 | 數(shù)據(jù)端口 | 2 | VDD | 電源正極 | 10 | D3 | 數(shù)據(jù)端口 | 3 | VO | 偏壓信號(hào) | 11 | D4 | 數(shù)據(jù)端口 | 4 | RS | 命令/數(shù)據(jù) | 12 | D5 | 數(shù)據(jù)端口 | 5 | RW | 讀/寫 | 13 | D6 | 數(shù)據(jù)端口 | 6 | E | 使能 | 14 | D7 | 數(shù)據(jù)端口 | 7 | D0 | 數(shù)據(jù)端口 | 15 | A | 背光正極 | 8 | D1 | 數(shù)據(jù)端口 | 16 | K | 背光負(fù)極 |
對(duì)這個(gè)表的說明: 1. VSS接電源地。 2. VDD接+5V。 3. VO是液晶顯示的偏壓信號(hào),可接10K的3296精密電位器。或同樣阻值的RM065/RM063藍(lán)白可調(diào)電阻。 4. RS是命令/數(shù)據(jù)選擇引腳,接單片機(jī)的一個(gè)I/O,當(dāng)RS為低電平時(shí),選擇命令;當(dāng)RS為高電平時(shí),選擇數(shù)據(jù)。 5. RW是讀/寫選擇引腳,接單片機(jī)的一個(gè)I/O,當(dāng)RW為低電平時(shí),向LCD1602寫入命令或數(shù)據(jù);當(dāng)RW為高電平時(shí),從LCD1602讀取狀態(tài)或數(shù)據(jù)。如果不需要進(jìn)行讀取操作,可以直接將其接VSS。 6. E,執(zhí)行命令的使能引腳,接單片機(jī)的一個(gè)I/O。 7. D0—D7,并行數(shù)據(jù)輸入/輸出引腳,可接單片機(jī)的P0—P3任意的8個(gè)I/O口。如果接P0口,P0口應(yīng)該接4.7K—10K的上拉電阻。如果是4線并行驅(qū)動(dòng),只須接4個(gè)I/O口。 8. A背光正極,可接一個(gè)10—47歐的限流電阻到VDD。 9. K背光負(fù)極,接VSS。 報(bào)警模塊: 器件:蜂鳴器 每按下一個(gè)鍵蜂鳴器就響一下,當(dāng)密碼錯(cuò)誤時(shí)發(fā)出警報(bào)聲報(bào)警 |