本文我們來(lái)談一談51單片機(jī)的最小化應(yīng)用系統(tǒng)的問(wèn)題,相信你做了這個(gè)簡(jiǎn)單的最小系統(tǒng)試驗(yàn)以后,會(huì)對(duì)單片機(jī)逐漸感興趣起來(lái)的,單片機(jī)要正常運(yùn)行,必須具備一定的硬件條件,其中最主要的就是三個(gè)基本條件:1.電源正常;2.時(shí)鐘正常;3.復(fù)位正常。下面就以我們實(shí)驗(yàn)用的51單片機(jī)AT89S51為例介紹其硬件連接方法。
下圖就是AT89S51單片機(jī)構(gòu)成的最小系統(tǒng)(僅驅(qū)動(dòng)1個(gè)發(fā)光二極管)的電路,在AT89S51單片機(jī)的40個(gè)引腳中:電源引腳2根,晶振引腳2根,控制引腳4根,可編程輸入輸出引腳32根。
《51單片機(jī)的最小化應(yīng)用系統(tǒng)電路圖》
1、工作電源:電源是單片機(jī)工作的動(dòng)力源泉,廢話!沒(méi)有電源當(dāng)然不能工作啦:),對(duì)應(yīng)的接線方法為:40腳(VCC)電源引腳,工作時(shí)接+5V電源,20腳(GND)為接地線。
2、時(shí)鐘電路:時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)序脈沖,單片機(jī)所有運(yùn)算與控制過(guò)程都是在統(tǒng)一的時(shí)序脈沖的驅(qū)動(dòng)下的進(jìn)行的,時(shí)鐘電路就好比人的心臟,如果人的心跳停止了,人就。。。同樣,如果單片機(jī)的時(shí)鐘電路停止工作(晶振停振),那么單片機(jī)也就停止運(yùn)行了。當(dāng)采用內(nèi)部時(shí)鐘時(shí),連接方法如下圖所示,在晶振引腳XTAL1(19腳)和XTAL2(18腳)引腳之間接入一個(gè)晶振,兩個(gè)引腳對(duì)地分別再接入一個(gè)電容即可產(chǎn)生所需的時(shí)鐘信號(hào),電容的容量一般在幾十皮法,如30PF。
3、接著我們給單片機(jī)加一個(gè)指示燈。我們?cè)趩纹瑱C(jī)P1.7(8腳)上接一個(gè)發(fā)光二極管,這樣就可以用來(lái)做單片機(jī)驅(qū)動(dòng)發(fā)光二極管的簡(jiǎn)單實(shí)驗(yàn)了,圖中發(fā)光二極管負(fù)極對(duì)單片機(jī)引腳P1.7之間串接了一個(gè)560歐姆的限流電阻,防止發(fā)光二極管和單片機(jī)的引腳P1.7因?yàn)?a href="http://wenjunhu.com/tags/電流/" target="_blank">電流過(guò)大燒壞,使發(fā)光二極管和單片機(jī)都工作在安全狀態(tài)。
4、控制引腳EA接法。EA/VPP(31腳)為內(nèi)外程序存儲(chǔ)器選擇控制引腳,當(dāng)EA為低電位時(shí),單片機(jī)從外部程序存儲(chǔ)器取指令;當(dāng)EA接高電平時(shí),單片機(jī)從內(nèi)部程序存儲(chǔ)器取指令。。。AT89S51單片機(jī)內(nèi)部有4KB可反復(fù)擦寫1000次以上的程序存儲(chǔ)器,因此我們把EA接到+5V高電平,讓單片機(jī)運(yùn)行內(nèi)部的程序,我們就可以通過(guò)反復(fù)燒寫來(lái)驗(yàn)證我們的程序了。
5、復(fù)位電路:在復(fù)位引腳(9腳)腳持續(xù)出現(xiàn)24個(gè)振蕩器脈沖周期(即2個(gè)機(jī)器周期)的高電平信號(hào)將使單片機(jī)復(fù)位。如下圖所示電容C和電阻R構(gòu)成了單片機(jī)上電自動(dòng)復(fù)位電路,復(fù)位后,單片機(jī)從0000H單元開(kāi)始執(zhí)行程序,并初始化一些專用寄存器為復(fù)位狀態(tài)值,受影響的專用寄存器如下表所示:
至此,我們完成了51單片機(jī)的最小化應(yīng)用系統(tǒng)的連接,只要正確的燒寫程序,并接上+5V電源就可以了,單片機(jī)剩下的其他可以不接線懸空。
下面我們來(lái)寫一個(gè)驅(qū)動(dòng)發(fā)光二極管閃爍的程序,這是很簡(jiǎn)單的事情,只需要以一定的世界間隔,給p1.7高電平,然后低電平,如此重復(fù),我們就看到了發(fā)光2極管在閃爍,程序如下:
完整的源程序如下:
;******** 51單片機(jī)的最小化應(yīng)用系統(tǒng)主程序 ********
MAIN: CLRP1.7;主程序開(kāi)始,P1.7輸出低電平“0”,讓點(diǎn)亮發(fā)光二極管
ACALLDELAY ;調(diào)用延時(shí)子程序延時(shí)一段時(shí)間,讓發(fā)光二極管亮一段時(shí)間
SETB P1.7;P1.7輸出高電平“1”,熄滅發(fā)光二極管
ACALLDELAY ;調(diào)用延時(shí)子程序延時(shí)一段時(shí)間,讓發(fā)光二極管熄滅一段時(shí)間
AJMP MAIN;跳轉(zhuǎn)到程序開(kāi)頭重復(fù)執(zhí)行
;******** 51單片機(jī)的最小化應(yīng)用系統(tǒng)延時(shí)子程序 ********
DELAY:MOVR7,#255
Y1: MOVR6,#255
DJNZ R6,$
DJNZ R7,Y1
RET;延時(shí)子程序返回
END;程序結(jié)束
-
二極管
+關(guān)注
關(guān)注
147文章
9639瀏覽量
166490 -
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7492瀏覽量
163834 -
51單片機(jī)
+關(guān)注
關(guān)注
274文章
5702瀏覽量
123617
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論