近年來(lái)隨著計(jì)算機(jī)科學(xué)技術(shù)的飛速發(fā)展,代表這場(chǎng)高技術(shù)新成果的智能大廈在各地相繼建起。智能大廈是在現(xiàn)代建筑物內(nèi)集4C于一身,建立一個(gè)由計(jì)算機(jī)系統(tǒng)管理的一體化集成系統(tǒng),這種智能大廈內(nèi)部設(shè)施具備5A功能。智能密碼鎖監(jiān)控系統(tǒng)正是為應(yīng)用于其中的安全監(jiān)控自動(dòng)化(Safety Automation,SA)而研制的,智能密碼鎖采用單片機(jī)技術(shù),相比傳統(tǒng)機(jī)械鎖,他具有不可復(fù)制性,有著更高的安全性和方便性。該系統(tǒng)是集信號(hào)檢測(cè)、傳輸、處理與控制、管理為一體的控制系統(tǒng);是應(yīng)用先進(jìn)計(jì)算機(jī)技術(shù)與現(xiàn)代微電子技術(shù)開(kāi)發(fā)組成的分布式網(wǎng)絡(luò)型監(jiān)控系統(tǒng);能夠有效地提高安全性能和管理效率。 本文以AT89C2051單片機(jī)為核心設(shè)計(jì)此系統(tǒng)及其密碼鎖的各部分功能電路,能夠正常地實(shí)現(xiàn)所要求的功能,抗干擾性能好、安全性強(qiáng)。
1 芯片ATMEL AT89C2051的介紹
AT89C2051單片機(jī)是美國(guó)ATMEL公司的,如圖l所示,他與Intel公司MCS-51系列單片機(jī)兼容,采用CMOS工藝制造,節(jié)電性能好。AT89C2051提供了以下的標(biāo)準(zhǔn)功能:片內(nèi)含2kB字節(jié)的可重編程閃速存儲(chǔ)器E2PROM和128B的內(nèi)部RAM、15根I/O引線、2個(gè)16b定時(shí)器/計(jì)數(shù)器、1個(gè)五向量?jī)杉?jí)中斷結(jié)構(gòu)、1個(gè)全雙工串行口、1個(gè)精密模擬比較器以及片內(nèi)振蕩器和時(shí)鐘電路。另外還具有低功耗空載的特點(diǎn)和掉電保存方式供選用。20腳雙列直插封裝也能達(dá)到體積的要求,是對(duì)嵌入式控制應(yīng)用提供的一個(gè)高度靈活和成本低的解決方案。控制系統(tǒng)的設(shè)計(jì)充分利用了AT89C2051的上述優(yōu)點(diǎn)和功能,加以必要的輔助硬件電路。
P1口是一個(gè)8 b雙向I/O口。當(dāng)P1口引腳寫入“1”時(shí),可用作輸入端;P1口輸出緩沖區(qū)可吸收20mA電流并能直接驅(qū)動(dòng)LED顯示。在智能密碼鎖控制器中,P1口P1.0~P1.6用來(lái)作為鍵盤輸入接口接收鍵盤輸入數(shù)據(jù),P1.7用來(lái)輸出單片機(jī)正常工作狀態(tài);當(dāng)智能密碼鎖控制器需要閃速編程和程序校驗(yàn)的時(shí)候,P1口將用來(lái)接收代碼數(shù)據(jù)。P3口除P3.6用于固定片內(nèi)比較器的輸出信號(hào)并作為一個(gè)通用I/O引腳不可訪問(wèn)外,其余7位都是帶有內(nèi)部上拉電阻的雙向I/O引腳。P3口還用來(lái)實(shí)現(xiàn)AT89C2051的各項(xiàng)功能,如表1所示。
智能密碼鎖控制器中,P3口除用來(lái)實(shí)現(xiàn)表1所示的功能外,還要輸出聲/光告警控制信號(hào);輸出智能密碼鎖開(kāi)鎖控制信號(hào);在智能密碼鎖控制器需要閃速存儲(chǔ)器編程和程序校驗(yàn)的時(shí)候,P3口將用來(lái)接收相應(yīng)的控制信號(hào)。
RST復(fù)位輸入,電路圖上也作RES。RST一旦變成高電平,所有的I/O引腳就復(fù)位到“1”。當(dāng)振蕩器(時(shí)鐘)正在運(yùn)行時(shí),持續(xù)給出RST引腳2個(gè)機(jī)器周期的高電平便可完成復(fù)位。每個(gè)機(jī)器周期需12個(gè)振蕩器或時(shí)鐘周期。XTALl作為振蕩器反相放大器的輸入和內(nèi)部時(shí)鐘發(fā)生器的輸人;XTAL2作為振蕩器反相放大器的輸出。
RAM在AT89C2051內(nèi)部由工作寄存器、位尋址和數(shù)據(jù)緩沖區(qū)組成。AT89C2051Flash單片機(jī)的一個(gè)特點(diǎn)就是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分為不同的存儲(chǔ)空間,這一特性使得可以用8b地址來(lái)訪問(wèn)數(shù)據(jù)存儲(chǔ)器,這樣可提高8bCPU的存儲(chǔ)和處理速度。
程序存儲(chǔ)器只可讀不可寫,用于存放編好的程序和表格常數(shù)。AT89C2051沒(méi)有采用程序存儲(chǔ)器分區(qū)的方法,可尋址的內(nèi)部和外部程序存儲(chǔ)器的地址空間是統(tǒng)一的。本系統(tǒng)硬件應(yīng)用電路中只用到了AT89C2051片內(nèi)的2kB的E2PROM作為程序存儲(chǔ)器。
數(shù)據(jù)存儲(chǔ)器在物理和邏輯上都分為2個(gè)地址空間,一個(gè)為內(nèi)部數(shù)據(jù)存儲(chǔ)器空間,一個(gè)為外部數(shù)據(jù)存儲(chǔ)器空間。本系統(tǒng)硬件應(yīng)用電路中只用到了AT89C2051片內(nèi)的128B的RAM作為內(nèi)部數(shù)據(jù)存儲(chǔ)器,采用直接尋址方式或間接尋址方式對(duì)此低128B的RAM進(jìn)行訪問(wèn)。在低128B的RAM中的最低32個(gè)單元(00H一1FH)是4個(gè)通用工作寄存器組。
(1)功能寄存器 AT89C2051片內(nèi)的I/O鎖存器、定時(shí)器、串行口通信緩沖器以及各種控制寄存器和狀態(tài)寄存器都以特殊功能寄存器的形式出現(xiàn),他們離散的分布于80H-FFH的地址空間范圍內(nèi),屬于內(nèi)部數(shù)據(jù)存儲(chǔ)器,只能采用直接尋址方式進(jìn)行訪問(wèn)。 (2)串行接口 引腳與P3.0(RXD串行接收)、P3.1(TXD串行發(fā)送)I/O端口引腳復(fù)用,數(shù)據(jù)緩沖區(qū)采用雙緩沖結(jié)構(gòu);可以工作于同步方式或異步通信方式,在工作于異步通信方式時(shí),具有全雙工的操作功能,即可以同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收。AT89C2051的串行口有4種不同的工作方式,由串行口控制寄存器SCON中的方式選擇位定義;另外串口發(fā)送及接收的狀態(tài)控制位也由SCON的對(duì)應(yīng)控制位進(jìn)行選擇。
(3)中斷結(jié)構(gòu) AT89C2051可以提供5個(gè)中斷源:2個(gè)外部中斷,由INT0,INTl(P3.2,P3.3)輸入,2個(gè)定時(shí)器溢出中斷(由片內(nèi)的2個(gè)16位定時(shí)器/計(jì)數(shù)器在溢出時(shí)觸發(fā))和1個(gè)串行口中斷。AT89C2051中的中斷分為2個(gè)優(yōu)先級(jí),在專用寄存器(SFR)區(qū)中有一個(gè)中斷優(yōu)先級(jí)寄存器(IP),IP的每一位對(duì)應(yīng)于一個(gè)中斷源,可決定中斷源的優(yōu)先級(jí);AT89C2051中的IE(中斷允許寄存器)管理每個(gè)中斷源的中斷和禁止。處理中斷的結(jié)構(gòu)是低優(yōu)先級(jí)中斷能夠被高優(yōu)先級(jí)中斷所中斷,但不能被另一個(gè)低優(yōu)先級(jí)中斷所中斷;高優(yōu)先級(jí)中斷不能被任何其他中斷源所中斷。當(dāng)同時(shí)收到2個(gè)不同優(yōu)先級(jí)的中斷請(qǐng)求時(shí),高優(yōu)先級(jí)中斷請(qǐng)求先得到服務(wù)。如果同時(shí)收到幾個(gè)同一優(yōu)先級(jí)的中斷請(qǐng)求,則由內(nèi)部的查詢順序來(lái)決定哪一個(gè)請(qǐng)求得到服務(wù),相當(dāng)于在每個(gè)優(yōu)先級(jí)內(nèi)還同時(shí)存在另一個(gè)輔助優(yōu)先結(jié)構(gòu)。
(4)定時(shí)器/計(jì)數(shù)器 AT89C2051內(nèi)含2個(gè)16 b的定時(shí)器/計(jì)數(shù)器T0和T1,可以分別作定時(shí)器或計(jì)數(shù)器使用。當(dāng)使用于定時(shí)器方式時(shí),定時(shí)器的輸入來(lái)自內(nèi)部時(shí)鐘發(fā)生電路,每過(guò)一個(gè)機(jī)器周期,定時(shí)器加1,而一個(gè)機(jī)器周期包含有12個(gè)振蕩周期,即定時(shí)器的頻率為晶振頻率的1/12,若采用11.059 2MHz的晶振,定時(shí)器的頻率即為0.921 6MHz。
若在計(jì)數(shù)器工作方式,計(jì)數(shù)器對(duì)外部事件計(jì)數(shù),計(jì)數(shù)脈沖來(lái)自外部輸入引腳,當(dāng)外部輸入引腳發(fā)生“1”和“o”的負(fù)跳變時(shí),計(jì)數(shù)器加1。由于對(duì)外部事件的檢測(cè)需要2個(gè)機(jī)器周期(24個(gè)振蕩周期),所以計(jì)數(shù)頻率最高為晶振頻率的1/24。
2 硬件設(shè)計(jì)
采用AT89C2051單片機(jī)的智能監(jiān)控系統(tǒng)電路結(jié)構(gòu)框圖如圖2所示。
下面逐一介紹電子門鎖控制器的部分單元電路。
2.1 鍵盤接口
智能密碼鎖控制器共12個(gè)按鍵,包括0~9共10個(gè)數(shù)字鍵、1個(gè)“#”清零鍵以及1“*”確認(rèn)鍵。采用3×4行列式鍵盤形式,由I/O口線組成行、列結(jié)構(gòu),按鍵設(shè)置在行列的交點(diǎn)上,以節(jié)省I/O口線。智能密碼鎖控制器工作時(shí),并不經(jīng)常需要鍵輸入,因此,為了進(jìn)一步提高CPU效率,采用中斷掃描工作方式。即只有在鍵盤有鍵按下時(shí),才執(zhí)行鍵盤掃描,執(zhí)行該鍵功能程序。中斷掃描工作方式的鍵盤接口如圖3所示。
該鍵盤直接由AT89C2051的P1口的高、低字節(jié)構(gòu)成3X4行列式鍵盤。鍵盤的列線與r工口的1氏4位相接,鍵盤的行線通過(guò)二極管接到P1口的高3位。因此,P1.4~P1.6作鍵輸入線,P1.0~P1.3作掃描輸出線。初始化時(shí),使P1.0~P1.3置零。當(dāng)有鍵按下時(shí),INTO端為低電平有效,向CPU發(fā)出中斷申請(qǐng),CPU響應(yīng)中斷請(qǐng)求,進(jìn)入鍵盤中斷服務(wù)程序。在鍵盤中斷服務(wù)程序中除完成鍵識(shí)別、鍵功能處理外,還要進(jìn)行消除鍵抖動(dòng)影響、多次重復(fù)執(zhí)行鍵功能操作等措施。
按鍵中斷服務(wù)程序流程圖如圖4所示。
2.2 其他輔助電路
其他輔助電路包括穩(wěn)壓電源電路、微處理器監(jiān)控電路、時(shí)鐘電路等。
(1)穩(wěn)壓電源電路
采用三端穩(wěn)壓集成電路塊CW7805給密碼鎖控制器電路供電。CW78M05三端正穩(wěn)壓器具有內(nèi)部過(guò)流、熱過(guò)載和輸出晶體管安全區(qū)保護(hù)功能,電路使用安全可靠,供電輸出電壓+5V,最大輸出電流0.5A,電路圖如圖5所示。
(2)微處理器監(jiān)控復(fù)位電路
單片機(jī)應(yīng)用系統(tǒng)工作時(shí),會(huì)經(jīng)常要求進(jìn)入復(fù)位工作狀態(tài),所以系統(tǒng)的復(fù)位電路必須保證能正確、可靠地工作。單片機(jī)的復(fù)位是靠外部電路實(shí)現(xiàn)的,在時(shí)鐘電路工作后,只要在單片機(jī)的RST引腳上出現(xiàn)24個(gè)時(shí)鐘振蕩脈沖(2個(gè)機(jī)器周期)以上的高電平,單片機(jī)便可實(shí)現(xiàn)初始化狀態(tài)復(fù)位。為了保證密碼鎖控制器電路可靠地復(fù)位,通常使RST引腳保持18ms以上的高電平。采用專用的微處理器監(jiān)控集成電路芯片Maxim708可以方便地得到梢竊電源電壓監(jiān)控功能、200 ms的復(fù)位脈沖寬度和人工復(fù)位輸入功能,大大提高了復(fù)位電路的抗干擾性和工作可靠性,電路圖如圖6所示。
(3)時(shí)鐘電路
AT89C2051單片機(jī)有一個(gè)片內(nèi)的振蕩器電路,由一個(gè)單級(jí)反相器組成,可用來(lái)作為CPU的時(shí)鐘源。如果采用內(nèi)部的振蕩電路,則要在單片機(jī)的引腳XTAL1和XTAL2之間連一個(gè)石英晶體諧振器,并接2個(gè)電容到地,即可組成完整的并聯(lián)諧振電路輸出時(shí)鐘信號(hào)。
當(dāng)采用外部振蕩器時(shí),XTALl端直接與外部振蕩器的信號(hào)相連,XTAL2端懸空不用,電路圖如圖7所示。
3 編程時(shí)所要注意的問(wèn)題
系統(tǒng)要求的各項(xiàng)功能要由軟件編程來(lái)實(shí)現(xiàn)。實(shí)際的智能密碼鎖監(jiān)控系統(tǒng)含有較多單個(gè)的密碼鎖,因此,系統(tǒng)的軟件設(shè)計(jì)功能較多而復(fù)雜,而且層次比較多。因此在設(shè)計(jì)上首先采用了計(jì)算機(jī)多任務(wù)處理的先進(jìn)技術(shù),前臺(tái)完成命令響應(yīng)、各模塊調(diào)用以及實(shí)時(shí)密碼鎖狀態(tài)的動(dòng)態(tài)圖形化顯示等,后臺(tái)負(fù)責(zé)實(shí)時(shí)監(jiān)視門鎖控制器發(fā)送的密碼鎖狀態(tài)變化事件、定時(shí)巡檢現(xiàn)場(chǎng)的密碼鎖控制器、報(bào)警處理等;在編程技術(shù)上采用先進(jìn)的VCL組件開(kāi)發(fā)技術(shù),應(yīng)用多線程技術(shù)進(jìn)行多任務(wù)處理;其次,采用模塊化程序設(shè)計(jì),把一個(gè)大的程序劃分為若干個(gè)小的功能模塊,每個(gè)模塊之間既相互獨(dú)立又相互聯(lián)系,這樣可以提高軟件的可維護(hù)性、可讀性、可靠性和高效性。
4 結(jié) 語(yǔ)
本文簡(jiǎn)單地對(duì)密碼鎖監(jiān)控系統(tǒng)的系統(tǒng)總體結(jié)構(gòu)和硬件電路進(jìn)行了描述,并以AT89C2051單片機(jī)為核心,完成主要的硬件電路設(shè)計(jì)。同時(shí),就實(shí)現(xiàn)電路功能的軟件編程要注意的問(wèn)題做了說(shuō)明。
責(zé)任編輯:gt
-
單片機(jī)
+關(guān)注
關(guān)注
6065文章
44940瀏覽量
647975 -
監(jiān)控系統(tǒng)
+關(guān)注
關(guān)注
21文章
4042瀏覽量
181493
發(fā)布評(píng)論請(qǐng)先 登錄
基于AT89C2051的防盜自動(dòng)報(bào)警電子密碼鎖系統(tǒng)的設(shè)計(jì)
基于AT89C2051單片機(jī)設(shè)計(jì)電子密碼鎖方案
基于AT89C2051單片機(jī)的防盜自動(dòng)報(bào)警電子密碼鎖系統(tǒng)的設(shè)
AT89C2051單片機(jī)的比較器的應(yīng)用
AT89C2051微控制器控制硬件電路組成的多功能電子密碼鎖

AT89c2051單片機(jī)介紹

基于單片機(jī)的電子密碼鎖的設(shè)計(jì)與仿真
基于AT89C2051單片機(jī)的防盜自動(dòng)報(bào)警電子密碼鎖系統(tǒng)的設(shè)計(jì)
基于AT89C2051單片機(jī)的GPS時(shí)鐘系統(tǒng)
采用AT89C2051和AT89S52單片機(jī)實(shí)現(xiàn)紅外遙控電子密碼鎖的設(shè)計(jì)

由AT89C2051單片機(jī)組成的智能鎖的結(jié)構(gòu)、特點(diǎn)、作用和工作原理

評(píng)論