第2章單片機課件教材_第1頁
第2章單片機課件教材_第2頁
第2章單片機課件教材_第3頁
第2章單片機課件教材_第4頁
第2章單片機課件教材_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2.189C51單片機的片內結構

2.2

89C51的引腳

2.3

89C51的CPU

2.4

89C51的存儲器結構

2.5并行I/O端口

2.6時鐘電路與時序

2.7復位操作和復位電路第2章

89C51單片機的硬件結構 教學目標:

理解單片機內部組成及引腳;

理解89C51的CPU及存儲器的結構;

理解并行I/O端口;

理解時鐘電路與時序;

理解復位操作和復位電路。教學重點:

單片機內部組成及引腳;

89C51的CPU及存儲器的結構;

并行I/O端口。教學難點:

存儲器的結構;

并行I/O端口。2.189C51單片機的片內結構2.289C51的引腳

一.電源及時鐘引腳

1.電源引腳

(1)Vcc(40腳):+5V電源;(2)Vss(20腳):接地。2.時鐘引腳

(1)XTAL1(19腳):片內振蕩器反相放大器和時鐘發(fā)生器電路的輸入端。(2)XTAL2(18腳):片內振蕩器反相放大器的輸出端。二.控制引腳

ALE/:地址鎖存控制信號。在系統(tǒng)擴展時,ALE用于控制把P0口輸出的低8位地址鎖存起來,以實現低位地址和數據的隔離。:外部程序存儲器讀選通信號。在讀外部ROM時,此信號有效(低電平),以實現外部ROM單元的讀操作。

/VPP:訪問程序存儲控制信號。當信號為低電平時,對ROM的讀操作限定在外部程序存儲器;當信號為高電平時,對ROM的讀操作是從內部程序存儲器開始,并可延至外部程序存儲器。

RST/VPD:復位信號。當輸入的復位信號延續(xù)兩個機器周期以上的高電平時即為有效,用以完成單片機的復位初始化。

三.I/O口引腳

P0.0~P0.7:P0口8位雙向口線。

P1.0~P1.7:P1口8位準雙向口線。

P2.0~P2.7:P2口8位準雙向口線。

P3.0~P3.7:P3口8位準雙向口線。2.389C51的CPU

一.運算器對操作數進行算術、邏輯運算和位操作。1.算術邏輯運算單元ALU2.累加器A

使用最頻繁的寄存器,也可寫為Acc。

A的作用:(1)是ALU單元的輸入之一,又是運算結果的存放單元。(2)數據傳送大多都通過累加器A。

A的進位標志Cy是特殊的,同時又是位處理機的位累加器。3.程序狀態(tài)字寄存器PSW

(1)Cy(PSW.7)進位標志位(2)Ac

(PSW.6)

輔助進位標志位(3)F0(PSW.5)標志位由用戶使用的一個狀態(tài)標志位。(4)RS1、RS0(PSW.4、PSW.3):4組工作寄存器區(qū)選擇控制位1和位0。

RS1RS0所選的4組寄存器

000區(qū)(內部RAM地址00H~07H)

011區(qū)(內部RAM地址08H~0FH)

102區(qū)(內部RAM地址10H~17H)

113區(qū)(內部RAM地址18H~1FH)(5)OV(PSW.2)溢出標志位

(6)PSW.1位

保留位,未用(7)P(PSW.0)

奇偶標志位

P=1,A中“1”的個數為奇數

P=0,A中“1”的個數為偶數二.控制器

1.程序計數器PC(ProgramCounter)存放下一條要執(zhí)行的指令在程序存儲器中的地址。

基本工作方式有以下幾種:

(1)程序計數器自動加1

(2)執(zhí)行有條件或無條件轉移指令時,程序計數器將被置入新的數值,從而使程序的流向發(fā)生變化。(3)在執(zhí)行調用子程序調用或中斷調用,完成下列操作: ①PC的現行值保護②將子程序的入口地址或中斷向量的地址送PC。

2.指令寄存器IR、指令譯碼器及控制邏輯電路2.489C51存儲器的結構

采用哈佛(Har-vard)結構

1.程序存儲器

2.內部數據存儲器

3.特殊功能寄存器(SFR)

4.位地址空間

5.外部數據寄存器

89C51單片機的內存結構物理上分為:4個空間

片內ROM、片外ROM

片內RAM、片外RAM邏輯上分為:3個空間,

程序內外存(片內、外)統(tǒng)一編址

MOVC

數據存儲器(片內)

MOV

數據存儲器(片外)

MOVX

一.程序存儲器

存放應用程序和表格之類的固定常數。 分為片內和片外兩部分,由EA*引腳上所接的電平確定。

程序存儲器中的0000H地址是系統(tǒng)程序的啟動地址

5個單元具有特殊用途--中斷源的中斷入口地址 外中斷00003H

定時器T0000BH

外中斷1

0013H

定時器T1001BH

串行口0023H二.內部數據存儲器

00H~1FH:32個單元是4組通用工作寄存器區(qū)20H~2FH:16個單元可進行共128位的位尋址30H~7FH:用戶RAM區(qū),只能進行字節(jié)尋址,用作數據緩沖區(qū)以及堆棧區(qū)。三.特殊功能寄存器SFR1、算術運算寄存器√(1)累加器A√(2)B寄存器:乘、除法運算用√(3)程序狀態(tài)字PSW寄存器:包含程序運行狀態(tài)信息。2、指針寄存器(1)堆棧指針SP

指明棧頂元素的地址,8位,可軟件設置初值,復位時SP=07H(2)數據指針DPTR @R0、@R1、@DPTR;指明訪問的數據存儲器的單元地址,16位,尋址范圍64KB。

DPTR=DPH+DPL,也可單獨使用。3、并行輸入/輸出端口√寄存器P0、P1、P2、P3實為相應端口鎖存器。4、串行輸入/輸出端口(1)串行數據緩沖器

SBUF:是物理上獨立的兩個寄存器,共同使用一個地址?!蹋?)串行控制/狀態(tài)寄存器SCON:控制監(jiān)視串行口的工作狀態(tài)。(3)電源控制寄存器PCON:控制單片機的低功耗工作方式及波特率選擇。5、中斷系統(tǒng)√(1)中斷優(yōu)先級寄存器IP:2級優(yōu)先,可軟件設定;√(2)中斷允許寄存器IE6、定時/計數器(1)定時器方式寄存器:TMOD√(2)定時器控制寄存器:TCON(3)計數寄存器:TH0、TL0;TH1、TL1??捎糜谠O定計數初值。堆棧指針SP

堆棧是一種數據結構,所謂堆棧就是只允許在其一端進行數據插入和數據刪除操作的線性表。數據寫入堆棧稱為插入運算(PUSH),也叫入棧。數據從堆棧中讀出稱之為刪除運算(POP),也叫出棧。堆棧的最大特點就是“后進先出”的數據操作規(guī)則,常把后進先出寫為LIFO(LastInFirstOut),進與出就是數據的入棧和出棧。即先入棧的數據存放在棧底,后出棧;而后入棧的數據存放棧頂,先出棧。堆棧結構圖堆棧的功能堆棧是為子程序調用和中斷操作而設立的。其具體功能有兩個:

保護斷點

保護現場堆棧的開辟 89C51的堆棧在內部RAM中采用內堆棧形式。內堆棧的主要優(yōu)點是操作速度快,但堆棧容量有限。

堆棧指示器堆棧共有兩種操作:進棧和出棧。但不論是數據進棧還是數據出棧,都是棧頂單元進行的,即對棧頂單元的寫和讀操作。為了指示棧頂地址,,要設置堆棧指示器SP(StackPointer),SP的內容就是堆棧棧頂的存儲單元地址。

89C51單片機由于堆棧設在內部RAM中,因此SP是一個8位專用寄存器。系統(tǒng)復位后SP的內容為07H。堆棧最好在內部RAM的30H~7FH單元中開辟,在程序設計時應把SP值設置為30H以后。

堆棧使用方式堆棧的使用有兩種方式。一種是自動方式,即在調用子程序或中斷時,返回地址(斷點)自動進棧。程序返回時,斷點再自動彈回PC。這種堆棧操作無需用戶干預,因此稱為自動方式。另一種是指令方式,即使用專用的堆棧操作指令,進行進出棧操作。其進棧指令為PUSH,出棧指令為POP。例如現場保護就是一系列指令方式的進棧操作;而現場恢復則是一系列指令方式的出棧操作。四.位地址空間五.外部數據存儲器(1)容量最大擴展到64KB(2)尋址范圍:0000H~FFFFH(3)尋址方式:間接尋址可用R0,R1及DPTR

注意事項:(1)地址的重疊性

程序存儲器(ROM)與數據存儲器(RAM)全部64K字節(jié)地址空間重疊)。程序存儲器(ROM)與數據存儲器(RAM)在使用上是嚴格區(qū)分的。(3)位地址空間共有兩個區(qū)域,(4)片外數據存儲區(qū)中,RAM與I/O端口統(tǒng)一編址。 所有外圍I/O端口的地址均占用RAM地址單元,使用與訪問外部數據存儲器相同的傳送指令。

2.5并行I/O端口

4個雙向的8位并行I/O端口(Port),記作P0~P3屬于特殊功能寄存器,可位尋址。

一.P0端口

1、作為通用I/O端口(輸出)作為通用I/O端口(輸入:讀引腳)作為通用I/O端口(輸入:讀鎖存器)2、作為地址/數據復用口(輸出:地址線0)作為地址/數據復用口(輸出:地址線1)作為地址/數據復用口(輸入:數據線)二.P1端口三.P2端口

四.P3端口P3口的第二功能定義

口引腳第二功能

P3.0 RXD(串行輸入口)

P3.1 TXD(串行輸出口)

P3.2 INT0*

(外部中斷0)

P3.3 INT1*

(外部中斷1)

P3.4 T0(定時器0外部計數輸入)

P3.5 T1(定時器1外部計數輸入)

P3.6 WR*

(外部數據存儲器寫選通)

P3.7 RD*

(外部數據存儲器讀選通)

五.P0~P3端口功能總結(1)P0~P3口都是并行I/O口,都可用于數據的輸入和輸出,但P0口和P2口除了可進行數據的輸入/輸出外,通常用來構建系統(tǒng)的數據總線和地址總線。(2)在4個口中只有P0口是一個真正的雙向口,P1~P3口都是準雙向口。(3)P3口的口線具有第二功能,為系統(tǒng)提供一些控制信號。因此在P3口電路增加了第二功能控制邏輯。這是P3口與其它各口的不同之處。

2.6時鐘電路與時序一.時鐘電路

時鐘頻率直接影響單片機的速度,電路的質量直接影響系統(tǒng)的穩(wěn)定性。常用的時鐘電路有兩種方式:內部時鐘方式和外部時鐘方式。1、內部時鐘方式

內部有一個用于構成振蕩器的高增益反相放大器,反相放大器的輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。

2、外部時鐘方式

常用于多片89C51單片機同時工作。3、時鐘信號的輸出

為應用系統(tǒng)中的其它芯片提供時鐘,但需增加驅動能力。

二.機器周期、指令周期與指令時序1、時鐘周期

單片機的基本時間單位。若時鐘的晶體的振蕩頻率為fosc,則時鐘周期Tosc=1/fosc。如fosc=6MHz,Tosc=166.7ns。2、機器周期 CPU完成一個基本操作所需要的時間稱為機器周期。執(zhí)行一條指令分為幾個機器周期。每個機器周期完成一個基本操作。89C51單片機每12個時鐘周期為一個機器周期,

一個機器周期又分為6個狀態(tài):S1~S6。每個狀態(tài)又分為兩拍:P1和P2。因此,一個機器周期中的12個時鐘周期表示為:S1P1、S1P2、S2P1、S2P2、…、S6P2。

3、指令周期

執(zhí)行任何一條指令時,都可分為取指令階段和指令執(zhí)行階段。

取指令階段,PC中地址送到程序存儲器,并從中取出需要執(zhí)行指令的操作碼和操作數。

指令執(zhí)行階段,對指令操作碼進行譯碼,以產生一系列控制信號完成指令的執(zhí)行。

ALE信號是為地址鎖存而定義的,以時鐘脈沖1/6的頻率出現,在一個機器周期中,ALE信號兩次有效(但要注意,在執(zhí)行訪問外部數據存儲器的指令MOVX時,將會丟失一個ALE脈沖)2.7復位操作和復位電路一.

溫馨提示

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

評論

0/150

提交評論