|
一、教學(xué)目的:掌握單片機(jī)的引腳功能 二、教學(xué)重點(diǎn):?jiǎn)纹瑱C(jī)的P0、P1、P2、P3口的使用和區(qū)別 三、教學(xué)步驟: (1) 單片機(jī)(AT89S51)外觀 
(2) 單片機(jī)(AT89S51)的引腳功能圖 
(3) 51系列單片機(jī)8031、8051及89c51/89s51均采用40Pin封裝的雙列直接DIP結(jié)構(gòu)。上圖是它們的引腳配置:40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用,F(xiàn)在我們對(duì)這些引腳的功能加以說(shuō)明: 1、電源引腳 Vcc 40腳 正電源腳,工作電壓為5V,另有AT89LV51工作電壓則是2.7-6V, 引腳功能一樣。 GND 20 接地端 2.外接晶體引腳
Pin19:時(shí)鐘XTAL1腳, Pin18:時(shí)鐘XTAL2腳, XTAL1是片內(nèi)振蕩器的反相放大器輸入端,XTAL2則是輸出端,使用外部振蕩器時(shí),外部振蕩信號(hào)應(yīng)直接加到XTAL1,而XTAL2懸空。內(nèi)部方式時(shí),時(shí)鐘發(fā)生器對(duì)振蕩脈沖二分頻,如晶振為12MHz,時(shí)鐘頻率就為6MHz。晶振的頻率可以在1MHz-24MHz內(nèi)選擇。電容取30PF左右。 型號(hào)同樣為AT89C51的芯片,在其后面還有頻率編號(hào),有12,16,20,24MHz可選。大家在購(gòu)買(mǎi)和選用時(shí)要注意了。如AT89C51 24PC就是最高振蕩頻率為24MHz,40P6封裝的普通商用芯片。 3.復(fù)位 RST 9 在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期(24個(gè)振蕩周期)以上的高電平出現(xiàn)在此引腳時(shí),將使單片機(jī)復(fù)位,只要這個(gè)腳保持高電平,51芯片便循環(huán)復(fù)位。復(fù)位后P0-P3口均置1引腳表現(xiàn)為高電平,程序計(jì)數(shù)器和特殊功能寄存器SFR全部清零。當(dāng)復(fù)位腳由高電平變?yōu)榈碗娖綍r(shí),芯片為ROM的0000H處開(kāi)始運(yùn)行程序。常用的復(fù)位電路如下圖所示。 
復(fù)位操作不會(huì)對(duì)內(nèi)部RAM有所影響。當(dāng)8051通電,時(shí)鐘電路開(kāi)始工作,在RESET引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。什么叫復(fù)位?復(fù)位是單片機(jī)重新執(zhí)行程序代碼的意思。 8051的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,見(jiàn)下圖。此外,RESET/Vpd還是一復(fù)用腳,Vcc掉電期間,此腳可接上備用電源, 以保證單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟失。

輸入輸出(I/O)引腳: Pin39-Pin32為P0.0-P0.7輸入輸出腳,稱為P0口,是一個(gè)8位漏極開(kāi)路型雙向I/O口。內(nèi)部不帶上拉電阻,當(dāng)外接上拉電阻時(shí),P0口能以吸收電流的方式驅(qū)動(dòng)八個(gè)LSTTL負(fù)載電路。通常在使用時(shí)外接上拉電阻,用來(lái)驅(qū)動(dòng)多個(gè)數(shù)碼管。 在訪問(wèn)外部程序和外部數(shù)據(jù)存儲(chǔ)器時(shí),P0口是分時(shí)轉(zhuǎn)換的地址(低8位)/數(shù)據(jù)總線,不需要外接上拉電阻。 Pin1-Pin8為P1.0-P1.7輸入輸出腳,稱為P1口,是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/0口。P1口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。 通常在使用時(shí)外不需要外接上拉電阻,就可以直接驅(qū)動(dòng)發(fā)光二極管。端口置1時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。 我們現(xiàn)在講一個(gè)它的輸出功能吧,在單片機(jī)工作時(shí),我們 可以通過(guò)用指令控制單片機(jī)的引腳輸出高電平或者低電平。如: 指令CLR ,清零的意思。 CLR P1.0 ;讓單片機(jī)從第一腳輸出低電平。 指令 SETB,置1的意思。 SETB P1.0 ;讓單片機(jī)從第一個(gè)腳輸出高電平。 請(qǐng)問(wèn)讓第8個(gè)腳輸出低電平的指令如何寫(xiě)? Pin21-Pin28為P2.0-P2.7輸入輸出腳,稱為P2口,是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P2口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。端口置1時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對(duì)內(nèi)部Flash程序存儲(chǔ)器編程時(shí),接收高8位地址和控制信息。在訪問(wèn)外部程序和16位外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口送出高8位地址。而在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí)其引腳上的內(nèi)容在此期間不會(huì)改變。 Pin10-Pin17為P3.0-P3.7輸入輸出腳,稱為P3口,是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P2口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載,這8個(gè)引腳還用于專(zhuān)門(mén)的第二功能。端口置1時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。 對(duì)內(nèi)部Flash程序存儲(chǔ)器編程時(shí),接控制信息。 P1-3端口在做輸入使用時(shí),因內(nèi)部有上接電阻,被外部拉低的引腳會(huì)輸出一定的電流。 除此之外P3端口還用于一些專(zhuān)門(mén)功能,具體請(qǐng)看下表。 |