第2章(修改)._第1頁
第2章(修改)._第2頁
第2章(修改)._第3頁
第2章(修改)._第4頁
第2章(修改)._第5頁
已閱讀5頁,還剩65頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、42.180C51單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn)單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn)42.280C51單片機(jī)引腳及其功能單片機(jī)引腳及其功能42.380C51單片機(jī)的內(nèi)部存儲(chǔ)器單片機(jī)的內(nèi)部存儲(chǔ)器42.480C51單片機(jī)的單片機(jī)的并行并行I/0口口42.580C51單片機(jī)的單片機(jī)的時(shí)鐘與定時(shí)時(shí)鐘與定時(shí)42.680C51單片機(jī)的單片機(jī)的系統(tǒng)系統(tǒng)復(fù)位復(fù)位返回返回第第2章章 80C51單片機(jī)的結(jié)構(gòu)和原理單片機(jī)的結(jié)構(gòu)和原理42.780C51單片機(jī)的低功耗工作方式單片機(jī)的低功耗工作方式2.1 2.1 80C51單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn)單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn):2.1.1 80C512.1.1 80C51單片機(jī)的基本組成單片機(jī)

2、的基本組成:2.1.2 80C512.1.2 80C51單片機(jī)芯片內(nèi)部結(jié)構(gòu)單片機(jī)芯片內(nèi)部結(jié)構(gòu)返回返回2.1.1 80C512.1.1 80C51單片機(jī)的基本組成單片機(jī)的基本組成返回返回80C51單片機(jī)結(jié)構(gòu)框圖單片機(jī)結(jié)構(gòu)框圖 如如 圖圖2-1所示所示89C51CPU振蕩器和時(shí)序振蕩器和時(shí)序OSC64KB 總線總線擴(kuò)展控制器擴(kuò)展控制器數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器256B RAM/SFR216位位定時(shí)器定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器可編程可編程I/O程序存儲(chǔ)器程序存儲(chǔ)器4KB FLASH ROM可編程全雙工可編程全雙工串行口串行口外中斷外中斷內(nèi)中斷內(nèi)中斷控制控制并行口并行口串行通信串行通信外部時(shí)鐘源外部時(shí)鐘源外部事件

3、計(jì)數(shù)外部事件計(jì)數(shù) 五個(gè)中斷源,其中包括兩個(gè)優(yōu)先級嵌套中斷五個(gè)中斷源,其中包括兩個(gè)優(yōu)先級嵌套中斷由圖由圖2.1可以看出,單片機(jī)內(nèi)部主要包含下列幾個(gè)部件:可以看出,單片機(jī)內(nèi)部主要包含下列幾個(gè)部件: 一個(gè)一個(gè)8位位CPU; 一個(gè)時(shí)鐘電路;一個(gè)時(shí)鐘電路; 4KB程序存儲(chǔ)器;程序存儲(chǔ)器; 256B數(shù)據(jù)存儲(chǔ)器;數(shù)據(jù)存儲(chǔ)器; 兩個(gè)兩個(gè)16位定時(shí)位定時(shí)/計(jì)數(shù)器;計(jì)數(shù)器; 64K擴(kuò)展總線控制電路;擴(kuò)展總線控制電路; 四個(gè)四個(gè)8-bit并行并行I/O端口;端口; 一個(gè)可編程串行接口;一個(gè)可編程串行接口;2.1.2 80C51單片機(jī)芯片內(nèi)部邏輯結(jié)構(gòu)單片機(jī)芯片內(nèi)部邏輯結(jié)構(gòu)端端 口口0 0 驅(qū)驅(qū) 動(dòng)動(dòng) 器器端端 口口2

4、 2 驅(qū)驅(qū) 動(dòng)動(dòng) 器器R RA AM M(1 12 28 8 8 8 )端端 口口0 0 鎖鎖 存存 器器端端 口口2 2 鎖鎖 存存 器器R RO OM M(4 4K K 8 8 )程程 序序 地地 址址 寄寄 存存 器器緩緩 沖沖 器器P PC C加加1 1 寄寄 存存 器器程程 序序 計(jì)計(jì) 數(shù)數(shù) 器器P PC C數(shù)數(shù) 據(jù)據(jù) 指指 針針D DP PT TR R堆堆 棧棧 指指 示示 器器S SP PP PC CO ON NS SC CO ON NT TM MO OD DT TC CO ON NT TH H0 0T TL L0 0T TH H1 1T TL L1 1S SB BU UF F(

5、T TX X )S SB BU UF F(R RX X)I IE E中中 斷斷 、 串串 行行 口口 和和 定定 時(shí)時(shí) 器器R RA AM M地地 址址寄寄 存存 器器A AC CC CB B寄寄 存存 器器A AL LU U狀狀 態(tài)態(tài) 寄寄 存存 器器暫暫 存存 器器2 2暫暫 存存 器器1 1定定 時(shí)時(shí)與與控控 制制指指 令令寄寄 存存器器端端 口口1 1 鎖鎖 存存 器器端端 口口3 3鎖鎖 存存 器器端端 口口1 1 驅(qū)驅(qū) 動(dòng)動(dòng) 器器端端 口口3 3驅(qū)驅(qū) 動(dòng)動(dòng) 器器X XT TA AL L1 1X XT TA AL L2 2P P0 0. .0 0P P0 0. .7 7P P2 2.

6、 .0 0P P2 2. .7 7P P1 1. .0 0P P1 1. .7 7P P3 3. .0 0P P3 3. .7 7A AL LE ER RS ST TPSENEAV Vc cc cV Vs ss s( 5 5V V)圖圖2.2 80C51單片機(jī)芯片內(nèi)部邏輯結(jié)構(gòu)圖單片機(jī)芯片內(nèi)部邏輯結(jié)構(gòu)圖80C51單片機(jī)芯片內(nèi)部的邏輯結(jié)構(gòu)如圖單片機(jī)芯片內(nèi)部的邏輯結(jié)構(gòu)如圖2.2所示。所示。 通道通道0驅(qū)動(dòng)器驅(qū)動(dòng)器通道通道2驅(qū)動(dòng)器驅(qū)動(dòng)器RAM地址地址寄存器寄存器RAM通 道通 道 0鎖存器鎖存器通 道通 道 2鎖存器鎖存器ROM/EPROMB寄存器寄存器程序地址寄存器程序地址寄存器緩沖器緩沖器PC遞增

7、器遞增器程序計(jì)數(shù)器程序計(jì)數(shù)器PCDPTR指針指針VCCGNDP1.0P1.7堆棧指針堆棧指針SPACCTMP2PSW通道通道3鎖存器鎖存器通道通道1鎖存器鎖存器通道通道1驅(qū)動(dòng)器驅(qū)動(dòng)器通道通道3驅(qū)動(dòng)器驅(qū)動(dòng)器TMP1SCON TMODPCONTCONTL0TH1TH0TL1IESBUF(TX/RX)IP中斷、串行口和定時(shí)器邏輯中斷、串行口和定時(shí)器邏輯振蕩器振蕩器P3.0P3.7RSTALEPSENXTAL2XTAL1ALU(+5V)指指令令寄寄存存器器定時(shí)定時(shí)和和控制控制邏輯邏輯指指令令譯譯碼碼器器P0.0P0.7P2.0P2.7EA1. CPU 運(yùn)算器電路運(yùn)算器電路控制器電路控制器電路ALUAC

8、CB寄存器寄存器狀態(tài)寄存器狀態(tài)寄存器暫存器暫存器1和暫存器和暫存器2功能:進(jìn)行功能:進(jìn)行算術(shù)運(yùn)算和算術(shù)運(yùn)算和邏輯運(yùn)算邏輯運(yùn)算程序計(jì)數(shù)器程序計(jì)數(shù)器PCPC加加1寄存器寄存器指令寄存器指令寄存器指令譯碼器指令譯碼器數(shù)據(jù)指針數(shù)據(jù)指針DPTR、堆棧指針、堆棧指針SP緩沖器以及定時(shí)與控制電路緩沖器以及定時(shí)與控制電路功能:完成功能:完成指揮控制工指揮控制工作,協(xié)調(diào)單作,協(xié)調(diào)單片機(jī)各部分片機(jī)各部分正常工作。正常工作。 2. 定時(shí)器定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器T0、T14. 并行并行I/O口口定時(shí)控制、延時(shí)以及對外部事件的計(jì)數(shù)和檢測等。定時(shí)控制、延時(shí)以及對外部事件的計(jì)數(shù)和檢測等。3. 存儲(chǔ)器存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器:數(shù)據(jù)存儲(chǔ)

9、器:4個(gè)個(gè)8位的位的I/O口(口(P0、P1、P2和和P3),每一條),每一條I/O線都能獨(dú)線都能獨(dú)立地用作輸入或輸出。立地用作輸入或輸出。主要特點(diǎn):尋址空間是相互獨(dú)立的,物理結(jié)構(gòu)也不相同。主要特點(diǎn):尋址空間是相互獨(dú)立的,物理結(jié)構(gòu)也不相同。程序存儲(chǔ)器:程序存儲(chǔ)器:用以存放可以讀用以存放可以讀/寫的數(shù)據(jù),如運(yùn)算的中間結(jié)寫的數(shù)據(jù),如運(yùn)算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù)等。果、最終結(jié)果以及欲顯示的數(shù)據(jù)等。用以存放程序、一些原始數(shù)據(jù)和表格。用以存放程序、一些原始數(shù)據(jù)和表格。P0口為三態(tài)雙向口,能帶口為三態(tài)雙向口,能帶8個(gè)個(gè)TTL門電路,門電路,P1、P2和和P3口口為準(zhǔn)雙向口為準(zhǔn)雙向口(輸出非三態(tài)

10、輸出非三態(tài)),負(fù)載能力為,負(fù)載能力為4個(gè)個(gè)TTL門電路。門電路。 8. 總線總線5. 串行串行I/O口口一個(gè)采用通用異步工作方式的全雙工串行通信接口,可以同一個(gè)采用通用異步工作方式的全雙工串行通信接口,可以同時(shí)發(fā)送和接收數(shù)據(jù)??蓪?shí)現(xiàn)單片機(jī)與單片機(jī)或其它微機(jī)之間時(shí)發(fā)送和接收數(shù)據(jù)??蓪?shí)現(xiàn)單片機(jī)與單片機(jī)或其它微機(jī)之間串行通信。串行通信。6. 中斷控制系統(tǒng)中斷控制系統(tǒng)80C51共有共有5個(gè)中斷源,即外中斷個(gè)中斷源,即外中斷2個(gè),定時(shí)個(gè),定時(shí)/計(jì)數(shù)中斷計(jì)數(shù)中斷2個(gè),個(gè),串行中斷串行中斷1個(gè)。分為高級和低級兩個(gè)優(yōu)先級別。個(gè)。分為高級和低級兩個(gè)優(yōu)先級別。7. 時(shí)鐘電路時(shí)鐘電路80C51芯片內(nèi)部有時(shí)鐘電路,但

11、晶體振蕩器和微調(diào)電容必須芯片內(nèi)部有時(shí)鐘電路,但晶體振蕩器和微調(diào)電容必須外接。時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)鐘脈沖序列,振蕩器的頻率外接。時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)鐘脈沖序列,振蕩器的頻率范圍為范圍為1.2MHz12MHz,典型取值為,典型取值為6MHz。通過總線連接起來,從而構(gòu)成一個(gè)完整的單片機(jī)。通過總線連接起來,從而構(gòu)成一個(gè)完整的單片機(jī)。采用總線結(jié)構(gòu)減少了單片機(jī)的連線和引腳,提高了集成度和采用總線結(jié)構(gòu)減少了單片機(jī)的連線和引腳,提高了集成度和可靠性。可靠性。 2.2 80C51單片機(jī)的信號引腳單片機(jī)的信號引腳2 . 3/0 PINT6 . 3/PWR3 . 3/1 PINT0 . 1P1 . 1P2 .

12、1P3 . 1P4 . 1P5 . 1P6 . 1P7 . 1PPDVRST/0 . 3/PRXD1 . 3/PTXD4 . 3/0 PT5 . 3/1 PT7 . 3/ PRD2XTAL1XTALVss1234567891011121314151617181920Vcc0 . 0P1 . 0P2 . 0P3 . 0P4 . 0P5 . 0P6 . 0P7 . 0PVppEA/PROGALE/PSEN7 . 2P6 . 2P5 . 2P4 . 2P3 . 2P2 . 2P1 . 2P0 . 2P21222324252627282930313233343536373839408031805187

13、51VccVssPDVRST/1XTAL2XTALVppEA /PSENPROGALE/P3口第二功能P0口P1口P2口地址數(shù)據(jù)總線地址總線803180518751圖圖2.3 80C51單片機(jī)引腳圖及邏輯符號單片機(jī)引腳圖及邏輯符號 圖圖2.3為為80C51系列單片機(jī)引腳圖及邏輯符號,它們?yōu)橄盗袉纹瑱C(jī)引腳圖及邏輯符號,它們?yōu)闃?biāo)準(zhǔn)的標(biāo)準(zhǔn)的40腳腳DIP(雙列直插雙列直插)封裝。封裝。 地址鎖存允許地址鎖存允許ALE/PROG(編程脈沖編程脈沖) 電源引腳電源引腳Vcc和和Vss Vcc:電源端,接:電源端,接5V。時(shí)鐘電路引腳時(shí)鐘電路引腳XTAL1和和XTAL2XTAL1:若使用內(nèi)部時(shí)鐘時(shí)接外部晶

14、振和微調(diào)電容的一端,:若使用內(nèi)部時(shí)鐘時(shí)接外部晶振和微調(diào)電容的一端,若使用外部若使用外部TTL時(shí)鐘時(shí),該引腳必須接地。時(shí)鐘時(shí),該引腳必須接地。XTAL2:若使用內(nèi)部時(shí)鐘接外部晶振和微調(diào)電容的另一端,:若使用內(nèi)部時(shí)鐘接外部晶振和微調(diào)電容的另一端,若使用外部若使用外部TTL時(shí)鐘時(shí),該引腳為外部時(shí)鐘的輸入端。時(shí)鐘時(shí),該引腳為外部時(shí)鐘的輸入端。系統(tǒng)擴(kuò)展時(shí),系統(tǒng)擴(kuò)展時(shí),ALE用于控制地址鎖存器鎖存用于控制地址鎖存器鎖存P0口輸出的低口輸出的低8位位地址,從而實(shí)現(xiàn)數(shù)據(jù)與低位地址的復(fù)用。也可用作外部時(shí)鐘地址,從而實(shí)現(xiàn)數(shù)據(jù)與低位地址的復(fù)用。也可用作外部時(shí)鐘或外部定時(shí)脈沖。或外部定時(shí)脈沖。 Vss:接地端。:接地

15、端。 程序存儲(chǔ)器地址允許輸入端程序存儲(chǔ)器地址允許輸入端 EA/VPPEAEA: 外部程序存儲(chǔ)器地址允許輸入端。外部程序存儲(chǔ)器地址允許輸入端。當(dāng)當(dāng)EA=1EA=1時(shí),時(shí),CPUCPU訪問片內(nèi)訪問片內(nèi)ROMROM并執(zhí)行片并執(zhí)行片內(nèi)程序存儲(chǔ)器中的指令,內(nèi)程序存儲(chǔ)器中的指令,但當(dāng)?shù)?dāng)PCPC值值 0FFFH0FFFH(片內(nèi)(片內(nèi)ROMROM為為4KB4KB)時(shí),)時(shí),將自動(dòng)轉(zhuǎn)向執(zhí)行片外將自動(dòng)轉(zhuǎn)向執(zhí)行片外ROMROM中的程序。中的程序。當(dāng)當(dāng)EA=0EA=0時(shí),時(shí),CPUCPU只訪問片外只訪問片外ROMROM并執(zhí)行并執(zhí)行外部程序存儲(chǔ)器中的程序。外部程序存儲(chǔ)器中的程序。V VPPPP:對對80C5180C5

16、1片內(nèi)片內(nèi) Flash ROMFlash ROM固化編程固化編程時(shí),編程電壓輸入端(時(shí),編程電壓輸入端(12-21V12-21V)。)。 外部程序存儲(chǔ)器讀選通信號外部程序存儲(chǔ)器讀選通信號PSEN復(fù)位信號復(fù)位信號RST/VPD(備用電源引入備用電源引入)該信號高電平有效,在輸入端保持兩個(gè)機(jī)器該信號高電平有效,在輸入端保持兩個(gè)機(jī)器周期的高電平后,就可以完成復(fù)位操作。周期的高電平后,就可以完成復(fù)位操作。在訪問片外在訪問片外ROMROM時(shí),定時(shí)輸出負(fù)脈沖作為讀片時(shí),定時(shí)輸出負(fù)脈沖作為讀片外外ROMROM的選通信號,接片外的選通信號,接片外ROMROM 的的OEOE端。端。輸入輸入/輸出口引腳輸出口引腳

17、P0、P1、P2和和P3P0口(口(P0.0P0.7):):8位準(zhǔn)雙向口位準(zhǔn)雙向口P1口(口(P1.0P1.7):內(nèi)部帶上拉電阻的):內(nèi)部帶上拉電阻的8位準(zhǔn)雙向口位準(zhǔn)雙向口負(fù)載能力:負(fù)載能力:8個(gè)個(gè)LSTTL負(fù)載負(fù)載為低為低8位地址線和位地址線和8位數(shù)據(jù)線的復(fù)用端口。位數(shù)據(jù)線的復(fù)用端口。 P3口除了作為一般的口除了作為一般的I/O口使用之外,口使用之外,其還具有第二功能其還具有第二功能 ,其引腳描述如,其引腳描述如表表2-1。P1口的驅(qū)動(dòng)能力為口的驅(qū)動(dòng)能力為4個(gè)個(gè)LSTTL負(fù)載。負(fù)載。P2口(口(P2.0P2.7):內(nèi)部帶上拉電阻的):內(nèi)部帶上拉電阻的8位準(zhǔn)雙向口位準(zhǔn)雙向口負(fù)載能力:負(fù)載能力:

18、8個(gè)個(gè)LSTTL負(fù)載負(fù)載在訪問外部程序存儲(chǔ)器時(shí),它作存儲(chǔ)器在訪問外部程序存儲(chǔ)器時(shí),它作存儲(chǔ)器的高的高8位地址線。位地址線。P3口(口(P3.0P3.7):內(nèi)部帶上拉電阻的):內(nèi)部帶上拉電阻的8位準(zhǔn)雙向口位準(zhǔn)雙向口表表2-1 P3口特殊功能口特殊功能口線口線特殊功能特殊功能信號名稱信號名稱P3.0RXD串行數(shù)據(jù)接收串行數(shù)據(jù)接收P3.1TXD串行數(shù)據(jù)發(fā)送串行數(shù)據(jù)發(fā)送P3.2外部中斷外部中斷0輸入口輸入口P3.3外部中斷外部中斷1輸入口輸入口P3.4T0定時(shí)器定時(shí)器0外部輸入口外部輸入口P3.5T1定時(shí)器定時(shí)器1外部輸入口外部輸入口P3.6WR外部外部RAM寫選通寫選通P3.7RD外部外部RAM讀選

19、通讀選通1INT0INT2.3 80C51單片機(jī)的內(nèi)部存儲(chǔ)器單片機(jī)的內(nèi)部存儲(chǔ)器外外部部FFFF1000內(nèi)內(nèi)部部( 1)外外部部( 0)0FFF00000FFF0000專專用用寄寄存存器器內(nèi)內(nèi)部部RAMFF807F00FFFF0000程程序序存存儲(chǔ)儲(chǔ)器器內(nèi)內(nèi)部部數(shù)數(shù)據(jù)據(jù)存存儲(chǔ)儲(chǔ)器器外外部部數(shù)數(shù)據(jù)據(jù)存存儲(chǔ)儲(chǔ)器器80C51的存儲(chǔ)器結(jié)構(gòu)的存儲(chǔ)器結(jié)構(gòu) 80C51的存儲(chǔ)器結(jié)構(gòu)如圖所示。的存儲(chǔ)器結(jié)構(gòu)如圖所示。 本節(jié)中我們將對單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器、本節(jié)中我們將對單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器、內(nèi)部程序存儲(chǔ)器和外部存儲(chǔ)器分別作一介紹。內(nèi)部程序存儲(chǔ)器和外部存儲(chǔ)器分別作一介紹。 RD 物理上分為:物理上分為:(物理結(jié)構(gòu))

20、(物理結(jié)構(gòu))4個(gè)空間個(gè)空間片內(nèi)片內(nèi)ROM(4KB)片外片外ROM(64KB)片內(nèi)片內(nèi)RAM(256B)片外片外RAM(64KB) 邏輯上分為邏輯上分為: :(用戶角度)(用戶角度)3個(gè)空間個(gè)空間程序存儲(chǔ)器(片內(nèi)、程序存儲(chǔ)器(片內(nèi)、外)統(tǒng)一編址外)統(tǒng)一編址MOVC數(shù)據(jù)存儲(chǔ)器(片內(nèi))數(shù)據(jù)存儲(chǔ)器(片內(nèi))MOV數(shù)據(jù)存儲(chǔ)器(片外)數(shù)據(jù)存儲(chǔ)器(片外)MOVX相關(guān)控制信號:相關(guān)控制信號:EA、 PSEN、 WR、R0、R1、R2、R3、R4、R5、R6、R7既可位尋址,又可字節(jié)尋址既可位尋址,又可字節(jié)尋址數(shù)據(jù)緩沖區(qū)、堆棧區(qū)、工作數(shù)據(jù)緩沖區(qū)、堆棧區(qū)、工作單元單元組組通通用用寄寄存存器器區(qū)區(qū)第第0組組通通用用寄

21、寄存存器器區(qū)區(qū)第第1組組通通用用寄寄存存器器區(qū)區(qū)第第2組組通通用用寄寄存存器器區(qū)區(qū)第第3)(位位地地址址位位尋尋址址區(qū)區(qū)FH7H00區(qū)區(qū)用用戶戶 RAMH00H08/H07H10/FH0H18/H17H20/FH1H30/FH2FH7 高高128B (80H FFH)即)即SFR區(qū)。區(qū)。2.3.1 內(nèi)部數(shù)據(jù)存儲(chǔ)器低內(nèi)部數(shù)據(jù)存儲(chǔ)器低128單元區(qū)單元區(qū)低低128B ( 00H 7FH )即內(nèi)部)即內(nèi)部RAM區(qū)區(qū)物理上分為物理上分為兩大區(qū)域:兩大區(qū)域:內(nèi)部內(nèi)部RAM區(qū)(區(qū)( 00H 7FH )返回返回1. 寄存器區(qū)寄存器區(qū)(00H1FH)由四組(由四組(32個(gè))工作寄存器組成,每組個(gè))工作寄存器組成

22、,每組8個(gè)寄存器(個(gè)寄存器(R0-R7),共占),共占32個(gè)單元。個(gè)單元。通過程序狀態(tài)寄存器通過程序狀態(tài)寄存器 PSW中中RS1、RS0兩兩位設(shè)定來選擇位設(shè)定來選擇CPU的當(dāng)前工作寄存器組。的當(dāng)前工作寄存器組。復(fù)位時(shí),第復(fù)位時(shí),第0組為當(dāng)前的工作寄存器。組為當(dāng)前的工作寄存器。若不需要四組,則其余可作為一般若不需要四組,則其余可作為一般RAM單單元。元。返回返回2. 位尋址區(qū)位尋址區(qū)(20H2FH)位尋址區(qū)有位尋址區(qū)有16個(gè)單元,每個(gè)單元個(gè)單元,每個(gè)單元8位,共位,共128位。位地址為位。位地址為00H-7FH??捎梦粚ぶ贩绞皆L問其各位??捎梦粚ぶ贩绞皆L問其各位。這些可尋址位,通過執(zhí)行指令可直接

23、對某這些可尋址位,通過執(zhí)行指令可直接對某一位操作,如置一位操作,如置1、清、清0、判斷轉(zhuǎn)移等。、判斷轉(zhuǎn)移等。位尋址是位尋址是80C51的一個(gè)重要特點(diǎn)。的一個(gè)重要特點(diǎn)。返回返回內(nèi)部數(shù)據(jù)存儲(chǔ)器中的位地址返回返回3. 用戶用戶RAM區(qū)區(qū)(30H7FH)30H7FH為真正的用戶為真正的用戶RAM區(qū),區(qū),用戶只能以存儲(chǔ)單元的形式來使用用戶只能以存儲(chǔ)單元的形式來使用用于堆棧和數(shù)據(jù)緩沖。用于堆棧和數(shù)據(jù)緩沖。返回返回l 主要用于存放控制命令、狀態(tài)或數(shù)據(jù)主要用于存放控制命令、狀態(tài)或數(shù)據(jù)2.3.2 內(nèi)部數(shù)據(jù)存儲(chǔ)器高內(nèi)部數(shù)據(jù)存儲(chǔ)器高128單元區(qū)單元區(qū)l 地址分布在地址分布在80HFFH的的RAM空間。供專用寄存空間

24、。供專用寄存器使用,為此稱為專用寄存器區(qū)(器使用,為此稱為專用寄存器區(qū)(SFR)l 共有共有21個(gè)可尋址的特殊功能功能寄存器。(個(gè)可尋址的特殊功能功能寄存器。(PC不可尋址)不可尋址)l 其中其中11個(gè)具有位尋址能力。這個(gè)具有位尋址能力。這11個(gè)個(gè)SFR的字節(jié)地的字節(jié)地址正好能被址正好能被8整除。整除。可位尋址的專用寄存器的位地址及位名稱可位尋址的專用寄存器的位地址及位名稱l 16位計(jì)數(shù)器,內(nèi)容為將要執(zhí)行指令的地址,尋址位計(jì)數(shù)器,內(nèi)容為將要執(zhí)行指令的地址,尋址范圍范圍64KB。1、部分特殊功能寄存器介紹、部分特殊功能寄存器介紹(1)程序計(jì)數(shù)器)程序計(jì)數(shù)器PC:l 具有自動(dòng)加具有自動(dòng)加1功能。功

25、能。l 沒有地址,用戶無法對其進(jìn)行讀寫,但在執(zhí)行沒有地址,用戶無法對其進(jìn)行讀寫,但在執(zhí)行轉(zhuǎn)移、調(diào)用、返回等特殊指令時(shí)會(huì)自動(dòng)改變內(nèi)轉(zhuǎn)移、調(diào)用、返回等特殊指令時(shí)會(huì)自動(dòng)改變內(nèi)容。容。唯一一個(gè)不可尋址唯一一個(gè)不可尋址的的SFRl 指令系統(tǒng)中用指令系統(tǒng)中用A作為作為ACC的助記符。的助記符。(2)累加器)累加器ACC(E0H):):l 用于存放第一個(gè)操作數(shù)及運(yùn)算結(jié)果。用于存放第一個(gè)操作數(shù)及運(yùn)算結(jié)果。l 在變址尋址方式中累加器被作為變址寄存器使用在變址尋址方式中累加器被作為變址寄存器使用。l 是數(shù)據(jù)傳送的中轉(zhuǎn)站,單片機(jī)中的大部分?jǐn)?shù)據(jù)是數(shù)據(jù)傳送的中轉(zhuǎn)站,單片機(jī)中的大部分?jǐn)?shù)據(jù)操作都是通過累加器進(jìn)行。操作都是通

26、過累加器進(jìn)行。l 在乘法指令中,在乘法指令中,B用于存放乘數(shù)和乘積的高用于存放乘數(shù)和乘積的高8位位(3)寄存器)寄存器B(F0H):):l 在除法指令中用于存放除數(shù)和余數(shù)。在除法指令中用于存放除數(shù)和余數(shù)。l 在其它指令中用作一般的寄存器或在其它指令中用作一般的寄存器或RAM單元。單元。l PSW包含了程序執(zhí)行后的狀態(tài)信息,供程序查包含了程序執(zhí)行后的狀態(tài)信息,供程序查詢或判斷用。詢或判斷用。(4) PSW 程序狀態(tài)寄存器(程序狀態(tài)寄存器(D0H):):l PSW的格式如下:的格式如下:l PSW各位的含義如下各位的含義如下。位位 序序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2P

27、SW.1PSW.0位標(biāo)志位標(biāo)志CYACF0 RS1RS0 OV/Pl CY位(位(PSW.7):進(jìn)(借)位標(biāo)志位。):進(jìn)(借)位標(biāo)志位。執(zhí)行加法(減法)運(yùn)算指令時(shí),如運(yùn)算結(jié)果最高位執(zhí)行加法(減法)運(yùn)算指令時(shí),如運(yùn)算結(jié)果最高位(D7)向前有進(jìn)位(借位),)向前有進(jìn)位(借位),CY=1;否則,;否則,CY=0。在位操作指令中,在位操作指令中,CY位是布爾累加器,用位是布爾累加器,用C表示。表示。l AC位(位(PSW.6):半進(jìn)位標(biāo)志位(輔助進(jìn)位標(biāo)志):半進(jìn)位標(biāo)志位(輔助進(jìn)位標(biāo)志)執(zhí)行加法(減法)運(yùn)算指令時(shí),如運(yùn)算結(jié)果的低半字執(zhí)行加法(減法)運(yùn)算指令時(shí),如運(yùn)算結(jié)果的低半字節(jié)(節(jié)(D3)向高半字節(jié)有

28、進(jìn)位(借位),)向高半字節(jié)有進(jìn)位(借位),AC=1;否則,;否則,AC=0。l FO位(位(PSW.5):用戶標(biāo)志。:用戶標(biāo)志。由用戶自己定義、置位、復(fù)位,以作為軟件標(biāo)志。由用戶自己定義、置位、復(fù)位,以作為軟件標(biāo)志。l RS0、RS1位(位(PSW.3和和PSW.4):工作寄存器組):工作寄存器組選擇控制位。選擇控制位。由用戶用軟件改變由用戶用軟件改變RS0和和RS1的值,以切換當(dāng)前選用的的值,以切換當(dāng)前選用的工作寄存器組。工作寄存器組。RS0,RS1的組合關(guān)系如的組合關(guān)系如 下表下表 所示。所示。RS1RS0寄存器組寄存器組片內(nèi)片內(nèi)RAM地址地址00第第0組組 00H07H01第第1組組 0

29、8H0FH10第第2組組 10H17H11第第3組組 18H1FH上電復(fù)位時(shí),(上電復(fù)位時(shí),(RS0)=(RS1)=0,CPU自然選自然選擇第擇第0組為當(dāng)前工作寄存器組。組為當(dāng)前工作寄存器組。l OV位(位(PSW.2):溢出標(biāo)志位。):溢出標(biāo)志位。如有溢出,即運(yùn)算結(jié)果超出如有溢出,即運(yùn)算結(jié)果超出-128 +127的范圍時(shí),的范圍時(shí),OV=1;無溢出時(shí),;無溢出時(shí),OV=0。l P位(位(PSW.0):奇偶檢驗(yàn)位。):奇偶檢驗(yàn)位。每條指令執(zhí)行后,每條指令執(zhí)行后,A中中“1”的個(gè)數(shù)為奇數(shù),則的個(gè)數(shù)為奇數(shù),則P=1;否則,否則,P=0 。l PSW.1:為保留位。:為保留位。l DPTR是是16位

30、的特殊功能寄存器。位的特殊功能寄存器。(5)數(shù)據(jù)指針)數(shù)據(jù)指針DPTR(83H,82H):):l 由由DPH(83H),),DPL(82H)組成。)組成。l DPH,DPL可以單獨(dú)使用??梢詥为?dú)使用。唯一一個(gè)供用唯一一個(gè)供用戶使用的戶使用的16位位SFR2、專用寄存器的單元尋址、專用寄存器的單元尋址符號名稱地址符號名稱地址*ACC累加器E0H*BB 寄存器F0H*PSW程序狀態(tài)字D0HSP棧指針81H*P0P0 鎖存器80H*P2P2 鎖存器A0H*P1P1 鎖存器90H*P3P3 鎖存器B0HDPTR數(shù)據(jù)指針(高8位DPH低 8 位 DPL)83H82HTL0定 時(shí) 器 / 計(jì) 數(shù) 器0(低

31、字節(jié))8AH*IE中斷允許控制寄存器A8H*TCON定時(shí)器/計(jì)數(shù)器控制寄存器88HTMOD定時(shí)器/計(jì)數(shù)器工作方式寄存器89HTH0定 時(shí) 器 / 計(jì) 數(shù) 器0(高字節(jié))8CHTH1定時(shí)器/計(jì)數(shù)器 1(高字節(jié))8DHTL1定 時(shí) 器 / 計(jì) 數(shù) 器1(低字節(jié))8BH*SCON串行口控制寄存器98HSBUF串行數(shù)據(jù)緩沖器99H*IP中斷優(yōu)先級控制寄存器B8HPCON電源控制及波特率選擇寄存器87H表表2-4 80C51特殊功能寄存器一覽表特殊功能寄存器一覽表l 21個(gè)個(gè)SFR不連續(xù)分布,用戶不能使用剩余空閑單元不連續(xù)分布,用戶不能使用剩余空閑單元l 對專用寄存器只能用對專用寄存器只能用直接直接尋址

32、方式。尋址方式。l P0-P3口的專用寄存器是他們各自的鎖存器。由各口的專用寄存器是他們各自的鎖存器。由各位口線的鎖存位組成。位口線的鎖存位組成。l 表示方式:寄存器符號、寄存器地址表示方式:寄存器符號、寄存器地址3、專用寄存器的位尋址、專用寄存器的位尋址表表2-5 專用寄存器的位地址及位名稱專用寄存器的位地址及位名稱l 21個(gè)個(gè)SFR中,中,11個(gè)可以位尋址。個(gè)可以位尋址。3、專用寄存器的位尋址、專用寄存器的位尋址l 可尋址位共有可尋址位共有83個(gè)。個(gè)。l 尋址時(shí)的表示方式:位地址、位名稱、字節(jié)單尋址時(shí)的表示方式:位地址、位名稱、字節(jié)單元地址加位數(shù)、寄存器名稱加位數(shù)。元地址加位數(shù)、寄存器名稱

33、加位數(shù)。D7HCYD0.7HPSW.7l 數(shù)據(jù)寫入堆棧稱為入棧數(shù)據(jù)寫入堆棧稱為入棧(PUSH)。2.3.3 堆棧操作堆棧操作l 堆棧是在片內(nèi)堆棧是在片內(nèi)RAM中開辟的一個(gè)按中開辟的一個(gè)按“先進(jìn)后出先進(jìn)后出”的結(jié)構(gòu)方式處理數(shù)據(jù)的區(qū)域。是一種數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)方式處理數(shù)據(jù)的區(qū)域。是一種數(shù)據(jù)結(jié)構(gòu)。l 數(shù)據(jù)操作規(guī)則(堆棧的特點(diǎn)):數(shù)據(jù)操作規(guī)則(堆棧的特點(diǎn)):“后進(jìn)先出后進(jìn)先出”LIFO或者或者“先進(jìn)后出先進(jìn)后出”。l 數(shù)據(jù)從堆棧中讀出稱為出棧數(shù)據(jù)從堆棧中讀出稱為出棧(POP)。l 主要是為子程序調(diào)用和中斷操作而設(shè)立。主要是為子程序調(diào)用和中斷操作而設(shè)立。1、堆棧的功用、堆棧的功用l 功能有兩個(gè):保護(hù)斷點(diǎn)和保

34、護(hù)現(xiàn)場。功能有兩個(gè):保護(hù)斷點(diǎn)和保護(hù)現(xiàn)場。l 特點(diǎn):操作速度快,但堆棧容量有限。特點(diǎn):操作速度快,但堆棧容量有限。l 只能開辟在芯片內(nèi)部數(shù)據(jù)存儲(chǔ)器的用戶只能開辟在芯片內(nèi)部數(shù)據(jù)存儲(chǔ)器的用戶RAM區(qū)區(qū)中,即所謂的內(nèi)堆棧形式。中,即所謂的內(nèi)堆棧形式。2、堆棧的開辟、堆棧的開辟l SP是一個(gè)是一個(gè)8位寄存器,內(nèi)容是堆棧棧頂?shù)拇鎯?chǔ)單位寄存器,內(nèi)容是堆棧棧頂?shù)拇鎯?chǔ)單元地址。元地址。3、堆棧指針、堆棧指針SPl 系統(tǒng)復(fù)位后,系統(tǒng)復(fù)位后,SP的內(nèi)容為的內(nèi)容為07H 。l 向上生長型:棧底(固定不動(dòng)端)在低地址單元向上生長型:棧底(固定不動(dòng)端)在低地址單元。l 向下生長型:棧底(固定不動(dòng)端)在高地址單元。向下生長

35、型:棧底(固定不動(dòng)端)在高地址單元。4、堆棧的類型、堆棧的類型l 程序設(shè)計(jì)時(shí)應(yīng)注意把程序設(shè)計(jì)時(shí)應(yīng)注意把SP值初始化為值初始化為30H以后。以后。l 80C51采用向上生長型。采用向上生長型。l 80C51堆棧操作規(guī)則:堆棧操作規(guī)則:入棧:先入棧:先SP加加1,后寫入數(shù)據(jù)。,后寫入數(shù)據(jù)。出棧:先讀出數(shù)據(jù),后出棧:先讀出數(shù)據(jù),后SP減減1 。l 自動(dòng)方式:即在調(diào)用子程序或中斷時(shí),返回地自動(dòng)方式:即在調(diào)用子程序或中斷時(shí),返回地址址(斷點(diǎn)斷點(diǎn))自動(dòng)進(jìn)棧。程序返回時(shí),斷點(diǎn)再自動(dòng)自動(dòng)進(jìn)棧。程序返回時(shí),斷點(diǎn)再自動(dòng)彈回彈回PC。 5、堆棧的使用方式、堆棧的使用方式l 指令方式:使用專用的堆棧操作指令,進(jìn)行進(jìn)指

36、令方式:使用專用的堆棧操作指令,進(jìn)行進(jìn)出棧操作。出棧操作。 其進(jìn)棧指令為其進(jìn)棧指令為PUSH,出棧指令為,出棧指令為POP 例如保護(hù)現(xiàn)場就是指令方式進(jìn)行操作例如保護(hù)現(xiàn)場就是指令方式進(jìn)行操作l 80C51片內(nèi)片內(nèi)Flash ROM的容量為的容量為4KB。地址為。地址為0000H0FFFH。2.3.4內(nèi)部程序存儲(chǔ)器(內(nèi)部程序存儲(chǔ)器(4KB:0000H-0FFFH)l 用于存放編制好的程序和表格常數(shù)。用于存放編制好的程序和表格常數(shù)。l 片內(nèi)外統(tǒng)一編址片內(nèi)外統(tǒng)一編址l 片外最多可擴(kuò)至片外最多可擴(kuò)至64KB ROM/EPROM,地址為,地址為0000HFFFFH。當(dāng)當(dāng) EA=“1”時(shí):先執(zhí)行片內(nèi)時(shí):先執(zhí)

37、行片內(nèi)4KB,當(dāng)指令地址超過當(dāng)指令地址超過0FFFH 后就自動(dòng)后就自動(dòng)轉(zhuǎn)向片外轉(zhuǎn)向片外ROM中取指令。中取指令。當(dāng)當(dāng) EA=”0”時(shí):時(shí):只訪問片外只訪問片外ROM( 0000HFFFFH )。)。l 由于由于8031片內(nèi)不帶片內(nèi)不帶ROM ,所以使用時(shí)必須,所以使用時(shí)必須 EA=”0”l 80C51從片內(nèi)從片內(nèi)ROM和片外和片外ROM取指的速度相同取指的速度相同l 程序存儲(chǔ)器的預(yù)留單元如下表所示。程序存儲(chǔ)器的預(yù)留單元如下表所示。存儲(chǔ)單元存儲(chǔ)單元保留目的保留目的0000H0002H復(fù)位后初始化引導(dǎo)程序復(fù)位后初始化引導(dǎo)程序0003H000AH外部中斷外部中斷 0000BH0012H定時(shí)器定時(shí)器

38、0 溢出中斷溢出中斷0013H001AH外部中斷外部中斷 1001BH0022H定時(shí)器定時(shí)器 1 溢出中斷溢出中斷0023H002AH串行口中斷串行口中斷002BH定時(shí)器定時(shí)器 2 中斷中斷(8052 才有)才有)2.4 80C51單片機(jī)的并行單片機(jī)的并行I/O口口l 80C51有四個(gè)有四個(gè)8位并行位并行I/O端口:端口:P0、P1、P2、P3l 每個(gè)端口都是每個(gè)端口都是8位準(zhǔn)雙向口,共占位準(zhǔn)雙向口,共占32根引腳。根引腳。l 準(zhǔn)雙向口:當(dāng)準(zhǔn)雙向口:當(dāng)I/O口作為輸入時(shí),應(yīng)先向此口鎖存口作為輸入時(shí),應(yīng)先向此口鎖存器寫入全器寫入全1, 此時(shí)該口引腳浮空,可作高阻抗輸入此時(shí)該口引腳浮空,可作高阻抗

39、輸入l 每一條每一條I/O線都能獨(dú)立地用作輸入或輸出。線都能獨(dú)立地用作輸入或輸出。l 每個(gè)端口都包括一個(gè)鎖存器(即特殊功能寄存器每個(gè)端口都包括一個(gè)鎖存器(即特殊功能寄存器P0P3),一個(gè)輸出驅(qū)動(dòng)器和輸入緩沖器,作輸),一個(gè)輸出驅(qū)動(dòng)器和輸入緩沖器,作輸出時(shí)數(shù)據(jù)可以鎖存,作輸入時(shí)數(shù)據(jù)可以緩沖。出時(shí)數(shù)據(jù)可以鎖存,作輸入時(shí)數(shù)據(jù)可以緩沖。l P0口不僅可以作為通用輸入輸出口,而且在實(shí)口不僅可以作為通用輸入輸出口,而且在實(shí)際應(yīng)用中它通常作為地址際應(yīng)用中它通常作為地址/數(shù)據(jù)復(fù)用總線。數(shù)據(jù)復(fù)用總線。2.4.1 P0口邏輯結(jié)構(gòu)口邏輯結(jié)構(gòu)l 由一個(gè)鎖存器、兩個(gè)三態(tài)輸入緩沖器、一個(gè)多路由一個(gè)鎖存器、兩個(gè)三態(tài)輸入緩沖

40、器、一個(gè)多路復(fù)用開關(guān)以及控制電路和驅(qū)動(dòng)電路等組成。復(fù)用開關(guān)以及控制電路和驅(qū)動(dòng)電路等組成。l P0口地址為口地址為80H,位地址為,位地址為80H-87H,其口線的邏,其口線的邏輯電路如下圖所示輯電路如下圖所示QQDCP寫入寫入內(nèi)內(nèi)部部總總線線讀鎖存器讀鎖存器讀引腳讀引腳x . 0PCCV數(shù)數(shù)據(jù)據(jù)地地址址/控制控制鎖存器鎖存器MUX&G1G2圖圖2-5 P0口某位的邏輯結(jié)構(gòu)圖口某位的邏輯結(jié)構(gòu)圖l 當(dāng)控制信號當(dāng)控制信號=0時(shí),開關(guān)時(shí),開關(guān)MUX撥向輸出鎖存器,撥向輸出鎖存器,P0口為通用口為通用I/O口;口;l 當(dāng)控制信號當(dāng)控制信號=1時(shí),開關(guān)撥向反相器的輸出端,時(shí),開關(guān)撥向反相器的輸出端

41、,P0口分時(shí)作為地址口分時(shí)作為地址/數(shù)據(jù)總線使用。數(shù)據(jù)總線使用。返回返回QQDCP寫入寫入內(nèi)內(nèi)部部總總線線讀鎖存器讀鎖存器讀引腳讀引腳x . 0PCCV數(shù)數(shù)據(jù)據(jù)地地址址/控制控制鎖存器鎖存器MUX&G1G2圖圖2-5 P0口某位的邏輯結(jié)構(gòu)圖口某位的邏輯結(jié)構(gòu)圖l 當(dāng)控制信號當(dāng)控制信號=0時(shí),開關(guān)時(shí),開關(guān)MUX撥向輸出鎖存器,撥向輸出鎖存器,P0口為通用口為通用I/O口;口;l 當(dāng)控制信號當(dāng)控制信號=1時(shí),開關(guān)撥向反相器的輸出端,時(shí),開關(guān)撥向反相器的輸出端,P0口分時(shí)作為地址口分時(shí)作為地址/數(shù)據(jù)總線使用。數(shù)據(jù)總線使用。返回返回l 當(dāng)控制信號當(dāng)控制信號=0時(shí),時(shí),P0口為通用口為通用I/O口

42、;口;1)讀)讀(為什么要讀鎖存器?為什么要讀鎖存器?) 適于適于“讀讀修改修改寫寫”類指令類指令象JBC(邏輯判斷)、CPL(取反)、INC(遞增)、DEC(遞減)、ANL(與邏輯)和ORL(邏輯或)指令均屬于這類操作。方式方式2(讀引腳):(讀引腳): P0.xG1D內(nèi)部總線內(nèi)部總線此方式下,此方式下,P0口作為通用口作為通用I / O使用,使用, 是一個(gè)準(zhǔn)雙向口:是一個(gè)準(zhǔn)雙向口:準(zhǔn)雙向口:在輸入數(shù)據(jù)時(shí)必須先把口置準(zhǔn)雙向口:在輸入數(shù)據(jù)時(shí)必須先把口置1,使兩個(gè),使兩個(gè)FET都截止都截止(以免誤讀以免誤讀),引腳處于懸浮狀態(tài),可作高阻抗輸入。),引腳處于懸浮狀態(tài),可作高阻抗輸入。(端口外數(shù)據(jù)(

43、端口外數(shù)據(jù)內(nèi)部寄存器)內(nèi)部寄存器)方式方式1(讀鎖存器)(讀鎖存器) QG2D內(nèi)部總線內(nèi)部總線2)寫)寫(片內(nèi)數(shù)據(jù)(片內(nèi)數(shù)據(jù)端口)端口)數(shù)據(jù)數(shù)據(jù)鎖存鎖存MUXP0.x返回返回可帶可帶8個(gè)個(gè)TTL輸入,作通用輸出口輸出高電平時(shí),需外接上輸入,作通用輸出口輸出高電平時(shí),需外接上拉電阻。拉電阻。l 當(dāng)控制信號當(dāng)控制信號=1時(shí),時(shí),P0口作為地址口作為地址/數(shù)據(jù)總線口使用;數(shù)據(jù)總線口使用;寫寫(輸出輸出): 地址地址/數(shù)據(jù)為數(shù)據(jù)為1,P0 x 高高地址地址/數(shù)據(jù)為數(shù)據(jù)為0,P0 x 低低讀讀(輸入輸入): 經(jīng)緩沖器經(jīng)緩沖器G1讀入讀入此時(shí),此時(shí),CPU自動(dòng)自動(dòng)使使MUX向下,并向向下,并向P0口寫口寫

44、“1”,“讀引腳讀引腳”控制信號有效,下面的緩沖器打開,外部數(shù)據(jù)讀入內(nèi)部總控制信號有效,下面的緩沖器打開,外部數(shù)據(jù)讀入內(nèi)部總線。線。l P0口負(fù)載能力口負(fù)載能力返回返回總結(jié)特點(diǎn):總結(jié)特點(diǎn):(1)P0口可作通用口可作通用I / O口使用,又可作地址口使用,又可作地址/數(shù)據(jù)總線口數(shù)據(jù)總線口(2)P0既可按字節(jié)尋址,又可按位尋址既可按字節(jié)尋址,又可按位尋址(3)作通用作通用I / O 口輸出使用時(shí):是開漏輸出口輸出使用時(shí):是開漏輸出(4)作地址作地址/數(shù)據(jù)總線口時(shí),數(shù)據(jù)總線口時(shí),P0是一真正雙向口,而作通是一真正雙向口,而作通 用用I / O口時(shí),只是一個(gè)準(zhǔn)雙向口口時(shí),只是一個(gè)準(zhǔn)雙向口2.3.2 P

45、1口口P1口是一個(gè)準(zhǔn)雙向口,只能作為口是一個(gè)準(zhǔn)雙向口,只能作為I/O口使用。由于在其輸出口使用。由于在其輸出電路中已有上拉電阻,故可以直接輸出而無需外接上拉電阻。電路中已有上拉電阻,故可以直接輸出而無需外接上拉電阻。特點(diǎn)特點(diǎn)(1)無地址)無地址/數(shù)據(jù)口功能數(shù)據(jù)口功能(2)可按字節(jié)尋址,也可按位尋址)可按字節(jié)尋址,也可按位尋址(4)作)作I / O輸入口時(shí):是一準(zhǔn)雙向口輸入口時(shí):是一準(zhǔn)雙向口(3)作通用作通用I / O 口輸出使用時(shí):不是開漏輸出口輸出使用時(shí):不是開漏輸出2.3.3 P2口口P2口為一個(gè)準(zhǔn)雙向口,其位結(jié)構(gòu)與口為一個(gè)準(zhǔn)雙向口,其位結(jié)構(gòu)與P0口相似。對于口相似。對于8031單片單片機(jī)

46、來說,機(jī)來說,P2口通常用作地址信號輸出??谕ǔS米鞯刂沸盘栞敵觥L攸c(diǎn):特點(diǎn):(4)可輸出地址高)可輸出地址高8位,與位,與P0一起構(gòu)成單片機(jī)一起構(gòu)成單片機(jī) 與外電路相連接的擴(kuò)展端口。通??梢杂脕頂U(kuò)與外電路相連接的擴(kuò)展端口。通??梢杂脕頂U(kuò)展存儲(chǔ)器和其它總線型連接方式的外設(shè)。展存儲(chǔ)器和其它總線型連接方式的外設(shè)。 (1)當(dāng))當(dāng)P2口作為通用口作為通用I / O時(shí),是一準(zhǔn)雙向口。時(shí),是一準(zhǔn)雙向口。(2)從)從P2口輸入數(shù)據(jù)時(shí),先向鎖存器寫口輸入數(shù)據(jù)時(shí),先向鎖存器寫“1”。(3)可字節(jié)尋址,也可按位尋址)可字節(jié)尋址,也可按位尋址2.3.4 P3口口P3口為雙功能口,當(dāng)口為雙功能口,當(dāng)P3口作為通用口作

47、為通用I/O口使用時(shí),它為準(zhǔn)雙口使用時(shí),它為準(zhǔn)雙向口,且每位都可定義為輸入或輸出口,其工作原理同向口,且每位都可定義為輸入或輸出口,其工作原理同P1口口類似。類似。特點(diǎn):特點(diǎn):(4)第二功能輸入信號,取自輸入通道第一)第二功能輸入信號,取自輸入通道第一緩沖器(緩沖器(G1)輸出端,而通用輸入信號取自)輸出端,而通用輸入信號取自“讀引腳讀引腳”。(1)作通用)作通用I / O時(shí)第二輸出功能應(yīng)保持高電平時(shí)第二輸出功能應(yīng)保持高電平(2)工作于第二功能時(shí),該位鎖存器應(yīng)置)工作于第二功能時(shí),該位鎖存器應(yīng)置1。(3)作輸入口時(shí),輸出鎖存器和第二輸出功)作輸入口時(shí),輸出鎖存器和第二輸出功能端都應(yīng)置能端都應(yīng)置

48、1小結(jié):小結(jié):1、P0口:地址低口:地址低8位與數(shù)據(jù)線分時(shí)使用端口位與數(shù)據(jù)線分時(shí)使用端口2、P1口:按位可編址的輸入輸出端口口:按位可編址的輸入輸出端口3、P2口:地址高口:地址高8位輸出口位輸出口4、P3口:雙功能口。若不用第二功能,也可作通用口:雙功能口。若不用第二功能,也可作通用I / O 口口地址線:地址線:P0低八位地址,低八位地址,P2高八位地址;高八位地址;5、按三總線劃分:、按三總線劃分:數(shù)據(jù)線:數(shù)據(jù)線:P0輸入輸出輸入輸出8位數(shù)據(jù);位數(shù)據(jù);控制線:控制線:P3口的口的8位加上位加上PSEN、ALE共同完成共同完成2.5 80C51單片機(jī)的時(shí)鐘與定時(shí)單片機(jī)的時(shí)鐘與定時(shí)單片機(jī)內(nèi)的

49、各種操作都是在一系列脈沖控制下進(jìn)行的,而各脈單片機(jī)內(nèi)的各種操作都是在一系列脈沖控制下進(jìn)行的,而各脈沖在時(shí)間上是有先后順序的,這種順序就稱為時(shí)序。沖在時(shí)間上是有先后順序的,這種順序就稱為時(shí)序。2.5.1 時(shí)鐘電路時(shí)鐘電路80C51時(shí)鐘電路由振蕩電路和分頻電路兩部分組成時(shí)鐘電路由振蕩電路和分頻電路兩部分組成2.5.2 定時(shí)單位定時(shí)單位(1)拍節(jié)與狀態(tài))拍節(jié)與狀態(tài)拍節(jié)(拍節(jié)(P):又叫振蕩周期,):又叫振蕩周期,指為單片機(jī)提供定時(shí)信號的振蕩指為單片機(jī)提供定時(shí)信號的振蕩源的周期或外部輸入時(shí)鐘的周期,源的周期或外部輸入時(shí)鐘的周期,為最小的時(shí)序單位。為最小的時(shí)序單位。狀態(tài)周期(狀態(tài)周期(S):又叫時(shí)鐘信號

50、周期,是振蕩脈沖二分頻后所):又叫時(shí)鐘信號周期,是振蕩脈沖二分頻后所得到的時(shí)鐘信號的周期,得到的時(shí)鐘信號的周期,是振蕩周期的兩倍(是振蕩周期的兩倍(P1和和P2)4計(jì)算機(jī)的計(jì)算機(jī)的一一條指令由若干個(gè)字節(jié)組成。執(zhí)行條指令由若干個(gè)字節(jié)組成。執(zhí)行一條指令所需要多長時(shí)間則以機(jī)器周期為單一條指令所需要多長時(shí)間則以機(jī)器周期為單位。位。4一個(gè)機(jī)器周期是指一個(gè)機(jī)器周期是指CPU訪問存儲(chǔ)器一訪問存儲(chǔ)器一次所需的時(shí)間。次所需的時(shí)間。例如,取指令、讀存儲(chǔ)器、寫存儲(chǔ)器等等。4一個(gè)機(jī)器周期包括一個(gè)機(jī)器周期包括12個(gè)振蕩周期,分個(gè)振蕩周期,分為為6個(gè)個(gè)S狀態(tài):狀態(tài):S1S6。4每個(gè)狀態(tài)又分為兩拍,稱為每個(gè)狀態(tài)又分為兩拍,稱為P1和和P2。4因此,一個(gè)機(jī)器周期中的因此,一個(gè)機(jī)器周期中的12個(gè)振蕩周個(gè)振蕩周期表示為期表示為S1P1,S1P2,S2P1,S6P1,S6P2。4因?yàn)橐驗(yàn)? :晶體振蕩器頻率晶體振蕩器頻率 foscfosc=6MHz=6MHz, ,如果fosc=12MHz, 一個(gè)機(jī)器周期為多少?答案1s(微秒)4則則: :振蕩周期振蕩周期 =1/fosc=1/6 s=1/fosc=1/6 s(微秒)(微秒)4又因?yàn)橛忠驗(yàn)? :一個(gè)機(jī)器周期包括一個(gè)機(jī)器周期包括1212個(gè)振蕩周期個(gè)振蕩周期, ,4所以所以: :一個(gè)機(jī)器周期一個(gè)機(jī)器周期=12=12* *(1/6

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論