鄧遠(yuǎn)杰
[摘 ?要:AT89S51單片機(jī)是AT89C51的替代產(chǎn)品,可以實(shí)現(xiàn)在線編程。AT89S51的主要特點(diǎn)包括:豐富的指令集合,與其他型號(hào)的51單片機(jī)可以完全兼容;內(nèi)部集成程序存儲(chǔ)單元,可以實(shí)現(xiàn)多次程序燒寫和擦除;具有雙向I/O接口;具有多個(gè)內(nèi)置定時(shí)器、中斷控制、異步串行接口等。可以設(shè)計(jì)睡眠和斷電兩種工作模式;具有耐高溫、耐高壓等惡劣環(huán)境工作的能力。
關(guān)鍵詞:AT89S51單片機(jī);防盜系統(tǒng);編程]
單片機(jī)需要設(shè)計(jì)外圍電路組成最小系統(tǒng)才能工作,單片機(jī)最小系統(tǒng)由單片機(jī)、時(shí)鐘電路和復(fù)位電路組成。首先需要將單片機(jī)的相應(yīng)供電引腳與電源連接,并通過(guò)復(fù)位電路完成對(duì)單片機(jī)工作狀態(tài)的初始化操作。復(fù)位電路的不僅在初始時(shí)刻發(fā)揮作用,當(dāng)單片機(jī)工作出現(xiàn)異常狀況時(shí),復(fù)位電路具有最高的優(yōu)先級(jí),可以將單片機(jī)進(jìn)行異常狀態(tài)的復(fù)位,使其重新進(jìn)入正常的工作狀態(tài)。另外,對(duì)于復(fù)位電路,可以設(shè)計(jì)為自動(dòng)復(fù)位或者按鍵復(fù)位兩種工作模式,按鍵復(fù)位電路必須對(duì)其設(shè)計(jì)上拉電阻,以獲取更高的邏輯電平。
然后需要設(shè)計(jì)單片機(jī)的時(shí)鐘電路,單片機(jī)內(nèi)部的工作時(shí)序必須由晶振產(chǎn)生,晶振的時(shí)鐘頻率決定了單片機(jī)的工作速度。晶振的功能類似于人類的心臟,只有晶振正常工作,單片機(jī)才能實(shí)現(xiàn)相應(yīng)的功能。如果需要為單片機(jī)設(shè)計(jì)額外的外部時(shí)鐘,則XTAL2應(yīng)懸空。
1 AT89S51管腳說(shuō)明
AT89S51使用40引腳雙列直插封裝形式,因?yàn)樵撎幚砥魇且环N高性能單片機(jī),受引腳數(shù)目的限制,所以有不少引腳具有第二功能。VCC(40):電壓輸出引腳,接+5V電壓。GND(20):接地。P0口(39~32):P0口包括8個(gè)開(kāi)漏的雙向輸入/輸出端口,每個(gè)引腳能夠接收8TTL門電流。當(dāng)P0口的引腳首次置1時(shí),表示該引腳被配置為高阻態(tài)。P0可以通過(guò)編程定義為外部數(shù)據(jù)的第八位,實(shí)現(xiàn)對(duì)外部數(shù)據(jù)的存儲(chǔ)。對(duì)單片機(jī)的Flash進(jìn)行編程時(shí),P0口進(jìn)行數(shù)據(jù)的原碼輸入,對(duì)單片機(jī)的Flash進(jìn)行校驗(yàn)時(shí),P0口作為數(shù)據(jù)的原碼輸出。
P1口(1~8):P1口包括8個(gè)內(nèi)部上拉的雙向輸入/輸出端口,每個(gè)引腳能吸收4TTL門電流。當(dāng)程序?qū)1口的引腳置1時(shí),該引腳電阻上拉為高電平,能夠作為外部輸入端口,而當(dāng)程序?qū)1口的引腳置為0時(shí),該引腳電阻下拉為低電平,此時(shí)將作為輸出端口。對(duì)單片機(jī)的Flash進(jìn)行編程或校驗(yàn)時(shí),P1口作為數(shù)據(jù)第八位進(jìn)行接收。
P2口(21~27):P2口包括8個(gè)內(nèi)部上拉的雙向輸入/輸出端口,每個(gè)引腳可接收4TTL門電流。當(dāng)程序?qū)2口的引腳寫“1”時(shí),該引腳電阻上拉為高電平,能夠作為外部輸入端口,P2口可以利用上拉電阻的優(yōu)勢(shì),在對(duì)外部地址進(jìn)行讀寫時(shí),輸出特殊寄存器內(nèi)容。對(duì)單片機(jī)的Flash進(jìn)行編程、校驗(yàn)時(shí),P2口可以作為第八位進(jìn)行數(shù)據(jù)接收。
P3口(10~17):P3口包括8個(gè)內(nèi)部上拉的雙向輸入/輸出端口,每個(gè)引腳可接收4TTL門電流。當(dāng)程序?qū)3口的引腳寫“1”時(shí),該引腳電阻上拉為高電平,能夠作為外部輸入端口,因?yàn)镻3口外部下拉為低電平,P3口將會(huì)輸出電流(ILL)。同時(shí),P3口也能
2 防盜系統(tǒng)方案設(shè)計(jì)
防盜報(bào)警系統(tǒng)以51單片機(jī)為處理核心,將熱釋電紅外傳感器與單片機(jī)連接,進(jìn)行盜情的實(shí)時(shí)監(jiān)測(cè)。通過(guò)時(shí)鐘電路,使單片機(jī)穩(wěn)定工作,一旦有人闖入觸發(fā)熱釋電傳感器,通過(guò)LED燈和蜂鳴器進(jìn)行聲光報(bào)警,同時(shí)撥打報(bào)警電話。對(duì)于防盜報(bào)警系統(tǒng)的硬件設(shè)計(jì),可以將其分為時(shí)鐘電路、復(fù)位電路、熱釋電紅外傳感器電路、報(bào)警電路等模塊,硬件部分設(shè)計(jì)時(shí),處理器使用單片機(jī)AT89S51,實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)功能的控制。安裝在監(jiān)測(cè)點(diǎn)的熱釋電傳感器探測(cè)人體輻射的紅外信號(hào)并傳輸給單片機(jī),單片機(jī)控制報(bào)警電路的LED燈和蜂鳴器,實(shí)現(xiàn)對(duì)盜情的自動(dòng)監(jiān)測(cè)。但報(bào)警不能一直持續(xù),需要設(shè)計(jì)報(bào)警自動(dòng)解除和手動(dòng)按鍵解除兩種功能。
2.1 時(shí)鐘電路編程
時(shí)鐘是單片機(jī)正常工作的前提,單片機(jī)的每次指令處理和運(yùn)算都是以時(shí)鐘的振蕩頻率為基準(zhǔn)。因此,單片機(jī)的工作狀態(tài)和工作速度都依賴于時(shí)鐘,其工作穩(wěn)定性也受制與時(shí)鐘的好壞。AT89S51單片機(jī)的振蕩器由反相放大電路組成,可以通過(guò)該電路產(chǎn)生時(shí)鐘。
通過(guò)對(duì)單片機(jī)的XTAL1和XTAL2兩個(gè)管腳接相應(yīng)的晶體振蕩器,實(shí)現(xiàn)對(duì)單片機(jī)工作頻率的控制。不同的振蕩方式,兩個(gè)管腳的配置方式也不同,如果使用外部器件驅(qū)動(dòng)單片機(jī)時(shí),兩個(gè)端口應(yīng)懸空。
2.2 復(fù)位電路編程
AT89S51單片機(jī)有專門的復(fù)位引腳,因此復(fù)位電路的設(shè)計(jì)只需要在相應(yīng)引腳進(jìn)行連接,完成單片機(jī)的復(fù)位操作。復(fù)位的作用是使單片機(jī)內(nèi)部的程序存儲(chǔ)器從某一地址重新執(zhí)行相關(guān)程序,實(shí)現(xiàn)從異常工作狀態(tài)轉(zhuǎn)為正常工作狀態(tài)。在單片機(jī)最初工作時(shí),內(nèi)部的程序并不能立即開(kāi)始執(zhí)行相應(yīng)的操作,而是需要一定的復(fù)位準(zhǔn)備時(shí)間。此時(shí)時(shí)鐘電路開(kāi)始振蕩,電路產(chǎn)生高電平便可以實(shí)現(xiàn)初始狀態(tài)的復(fù)位操作,使得單片機(jī)可以從某一固定地址開(kāi)始執(zhí)行程序。
復(fù)位電路分為自動(dòng)復(fù)位和按鍵復(fù)位兩種,本文設(shè)計(jì)的防盜報(bào)警系統(tǒng)使用按鍵完成相應(yīng)的復(fù)位操作。按鍵復(fù)位的好處是當(dāng)程序出現(xiàn)卡死、跑飛等異常情況時(shí),可以直接人為按鍵,給復(fù)位管腳手動(dòng)引入高電平,實(shí)現(xiàn)相應(yīng)的復(fù)位操作。將5V電壓通過(guò)按鍵與RST管腳連接,便可以實(shí)現(xiàn)手動(dòng)按鍵復(fù)位。當(dāng)完成復(fù)位操作后,單片機(jī)的相關(guān)引腳都會(huì)置為最初上電時(shí)的狀態(tài),并將程序從主函數(shù)開(kāi)始重新執(zhí)行。
參考文獻(xiàn)
[1]牛曉玲.單片機(jī)課堂教學(xué)探究[J].現(xiàn)代經(jīng)濟(jì)信息,2016(13).
[2]曹益豪.基于單片機(jī)的智能魚(yú)缸溫控系統(tǒng)設(shè)計(jì)[J].機(jī)電信息,2019(11).
[3]Microchip推出體積最小、成本最低的全新PIC32單片機(jī)[J].電子元器件應(yīng)用,2011(11).
[4]張海濤.基于51單片機(jī)的紅外車輛分離器設(shè)計(jì)[J].機(jī)電信息,2014(06).