第2章MCS-51單片機的結構和原理培訓教材_第1頁
第2章MCS-51單片機的結構和原理培訓教材_第2頁
第2章MCS-51單片機的結構和原理培訓教材_第3頁
第2章MCS-51單片機的結構和原理培訓教材_第4頁
第2章MCS-51單片機的結構和原理培訓教材_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第二章

MCS-51單片機硬件結構主要掌握基本組成(內部資源)引腳存儲器的配置I/O口的應用功能(以89C51(AT89C51、P89C51、STC89C51)為代表講解,匯編語言結合C語言)2.1

MCS-51單片機結構2.89C51CPU功能介紹

單片機的核心,由運算器和控制器構成:運算器:進行算術運算、邏輯運算,由ALU、A、B、PSW、暫存器組成??刂破鳎喊≒C、IR、ID、振蕩器和時鐘電路2.289C51單片機的引腳及功能MCS-51單片機信號引腳簡介

P3口線的第二功能VCCVSSXTAL2

XTAL1RSTP0.0

P0.1

P0.2P0.3P0.4P0.5P0.6P0.7P1.0

P1.1

P1.2P1.3P1.4P1.5P1.6P1.7P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0ALEP3.0

P3.1

P3.2P3.3P3.4P3.5P3.6P3.72、時鐘引腳:XTAL1、XTAL23、復位引腳:RST4、并行口:P0、P1、P2、P37、ALE:地址鎖存控制信號1、電源線:VCC(+5V)、VSS(地)EAPSEN5、EA:訪問程序存儲控制信號6、PSEN:外部ROM讀選通信號RXD/

TXD/

INT0/INT1/

T0/

T1/

WR/

RD/1

2

3

4

5

6

7

8

9

10111213141516171819

2040

39

38

37

36

35

34

33

32

313029282726252424222180318051875189C512.389C51單片機的存儲器配置1.存儲器結構普林斯頓結構一般微機采用的結構ROM、RAM安排在同一個地址空間相同指令訪問ROM、RAM哈佛結構89C51采用此結構ROM和RAM占用不同的物理空間采用不同指令訪問2.89C51存儲空間物理結構ROM片內、片外RAM片內、片外邏輯結構(從用戶使用的角度看)ROM:MOVC0000-FFFFH64KB片內RAM:MOV0000-00FFH256B片外RAM:MOVX0000-FFFFH64KB1

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15EPROM27641

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15EPROM27641

2

3

4

5

6

7

8

9

10111213141516171819

2040

39

38

37

36

35

34

33

32

31302928272625242422211

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15RAM62641

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15RAM6264

器80318751805189C51片內RAM片內ROM256B(字節(jié))4K共64K64K3.程序存儲器與ROM密切相關的兩個引腳、通過16位PC尋址,最大可尋址64kB地址空間當ROM容量不夠時,盡量選擇高容量存儲器空間的單片機,如89C52、89C54、89C58等,應避免外擴程序存儲器,因為會增加硬件負擔。程序存儲器程序存儲器內部外部0000H0FFFH(4K)0000HFFFFH(64K)0000H0FFFH(4K)0000H0001H0002H(PC)0000H是程序執(zhí)行的起始單元,

在這三個單元存放一條

無條件轉移指令,引導中斷5中斷4中斷3中斷2中斷10003H000BH0013H001BH0023H002BH外部中斷0定時器0中斷外部中斷1定時器1中斷串行口中斷8位...0FFFH0FFEHEA=1EA=0程序存儲器資源分布中斷入口地址4.數據存儲器片內RAM:低128B片內RAM0000-007FH高128B片內RAM0080-00FFH片外RAM0000H-FFFFH

如何區(qū)分0000-00FFH的地址空間是片內RAM還是片外RAM?片內、片外分開編址SFR:特殊功能寄存器區(qū)0000HFFFFH(64K)內部外部數據存儲器數據存儲器00HFFH7FH80H(高128B)(低128B)RAM專用

寄存器00H07H08H0FH10H17H18H1FH0區(qū)R0R7R0R7R0R7R0R71區(qū)2區(qū)3區(qū)工作寄存器區(qū)可位尋址區(qū)20H2FH7F78070030H7FH數據緩沖區(qū)/堆棧區(qū)內部RAM存儲器

11第3區(qū)18H~1FH

01第1區(qū)08H~0FHRS1RS0寄存器區(qū)片內RAM地址

00第0區(qū)00H~07H10第2區(qū)10H~17H工作寄存器區(qū)選擇位RS0、RS1PSW位地址CYACF0RS1RS0OVF1PMSB——MostSignificantBit(最高有效位)

LSB——LeastSignificantBit(最低有效位)單元地址2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H7F776F675F574F473F372F271F170F07MSB

位地址

LSB7E766E665E564E463E362E261E160E067D756D655D554D453D352D251D150D057C746C645C544C443C342C241C140C047B736B635B534B433B332B231B130B037A726A625A524A423A322A221A120A027971696159514941393129211911090178706860585048403830282018100800RAM位尋址區(qū)位地址表高128個單元☆離散分布有21個特殊功能寄存器SFR?!?/p>

11個可以進行位尋址。☆特別提示:對SFR只能使用直接尋址方式,書寫時可使用寄存器符號,也可用寄存器單元地址。5.部分特殊功能寄存器(SFR)介紹ACCBDPTR:

DataPointer,16位,對64KB片外RAM/ROM和外圍設備作間接尋址。例:MOVDPTR,#2000HMOVXA,@DPTR則:

DPH=20H,DPL=00H,DPTR=2000H

結果是:取出片外RAM地址為2000H的數據,存放于A。進位carry,輔助進位auxiliarycarry,用戶標志flagzero,寄存器選擇registerselect,溢出overflow,奇偶parityCYACF0RS1RS0OV-P例:MOVA,#0FHADDA,#0F8H00001111+11111000

1

00000111

AC=1,CY=1,OV=CY⊕AC=1⊕1=0,P=1,所以:11×××0×1PSW,ProgramStatusWordSP,StackPointerSP:堆棧指針,8位,專門存放堆棧的棧頂單元的地址。入棧時自動加1,出棧時自動減1。堆棧:在RAM中專門用于存放數據的一個區(qū)域,遵循“先進后出(firstinlastout)”或“后進先出(lastinfirstout)”的原則。復位后,SP=07H0708090A0B35PUSHACC,SP=08H0708090A0BC135PUSHPSW,SP=09H0708090A0B35POPPSW,SP=08H0708090A0B0708090A0BPOPACC,SP=07H單片機工作條件單片機正常工作最基本條件是:正確的電源時鐘和復位信號。單片機最小系統1、時鐘電路要給單片機CPU提供時鐘信號,就需要相關的硬件電路,即振蕩器和時鐘電路。51系列單片機內部有一個高增益反相放大器,這個反相放大器的作用就是構成振蕩器,但要形成時鐘,外部還需要加一些附加電路。

51系列單片機本身一般不能自動進行復位的,必須配合相應的外部電路才能實現。當5l系列單片機的復位引腳RST出現2個機器周期以上的高電平時,單片機就執(zhí)行復位操作。如果RST持續(xù)為高電平,單片機就處于循環(huán)復位狀態(tài)。2.復位電路

2.4時鐘電路及CPU時序時鐘電路方式可分為內部時鐘方式和外部時鐘方式:89C51XTAL1Vcc外部時鐘輸入TTL(a)內部時鐘電路;(b)HMOS型外部振蕩源(C)CHMOS型外部振蕩源外接晶振時,電容的值一般取30pF;外接陶瓷諧振器時,電容的值一般取47pF1.時鐘電路2.基本概念振蕩器:產生內部脈沖信號

若采用外部脈沖信號時鐘發(fā)生器:根據脈沖信號產生時鐘信號振蕩周期P:振蕩脈沖信號周期時鐘周期(狀態(tài)周期)S

:(機器狀態(tài)時間)S=P1+P2機器周期:

指令執(zhí)行的單位=6S=12P指令周期:

指令執(zhí)行的時間=N*6S,N=1,2,4對HMOS單片機:XTAL2輸入,XTAL1接地對CHMOS單片機:XTAL1輸入,XTAL2懸空3.CPU取指/執(zhí)行周期時序

1.若采用12MHz的晶振頻率,計算機器周期?

2.CPU每個機器周期讀取兩次操作碼,PC是否每次都自動加1??2.5復位操作MCS-51單片機復位

任何單片機在工作之前都要有個復位的過程,復位是什么意思呢?對單片機來說,是程序還沒有開始執(zhí)行,是在做準備工作----初始狀態(tài)。

如何進行復位呢?只要在單片機的RST引腳上加上2個機器周期以上的高電平,就可以了。1.復位電路805187518031RSTCRR1R2+5V上電復位按鍵復位2.復位后單片機的狀態(tài)復位后各寄存器的狀態(tài)PC0000H(程序入口)P0、P1、P2、P30FFH(可以直接輸入)SP07H(棧底已經設好)PSW00H(選擇0組寄存器)其余大部分都是0熟悉復位后各寄存器的狀態(tài),可以減短初始化程序。2.689C51單片機的低功耗工作方式89C51提供兩種節(jié)電工作方式:空閑(待機)工作方式:不向CPU提供時鐘,CPU停止工作,只供中斷、串行口、定時器部分。掉電工作方式:所有功能停止工作。方式的設定PCON(電源控制寄存器)中,寫‘1’啟動。8051:HMOS(高密度短溝道MOS)半導體工藝89C51:CHMOS=HMOS+CMOSSMOD------GF1GF0PDIDL2.7輸入/輸出端口單片機I/O口的使用無論單片機對外界進行何種控制,亦或接受外部的控制,都是通過I/O口進行的。單片機總共有P0、P1、P2、P3四個8位雙向輸入輸出端口,每個端口都有鎖存器、輸出驅動器和輸入緩沖器。4個I/O端口都能作輸入輸出口用,其中P0和P2通常用于對外部存儲器的訪問。一.I/O口的構成口鎖存器(CPU通過內部總線把數據寫入口鎖存器)輸出驅動器輸入緩沖器鎖存器的含義CTR開關Bus鎖存器其它器件0OUT=Bus1OUT保持OUT二.89C51的I/O口P0.0

P0.1

P0.2P0.3P0.4P0.5P0.6P0.7P1.0

P1.1

P1.2P1.3P1.4P1.5P1.6P1.7P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P3.0

P3.1

P3.2P3.3P3.4P3.5P3.6P3.74個8位并行I/O口:P0,P1,P2,P3;均可作為雙向I/O端口使用。(1)特點:P0:訪問片外擴展存儲器時,分時復用為低8位地址線和數據線

P2:高8位地址線。P1:雙向I/O端口

P3:第二功能1

2

3

4

5

6

7

8

9

10111213141516171819

2040

39

38

37

36

35

34

33

32

313029282726252424222180318051875189C51由1個輸出鎖存器、2個三態(tài)輸入緩沖器和輸出驅動電路及控制電路組成。P0口既可以作為I/O用,也可以作為地址/數據線用。DQCLKQMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳1、P0口的結構(1)P0口作為普通I/O口①輸出時CPU發(fā)出控制電平“0”封鎖“與”門,將輸出上拉場效應管T1截止,同時使多路開關MUX接鎖存器的輸出。DQCLKQMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳上拉電阻?、谳斎霑r----分讀引腳或讀鎖存器讀引腳:由傳送指令(MOV)實現;先寫入‘1’讀鎖存器:由邏輯指令(ANL、ORL、XRL)實現;DQCLKQMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳12(2)P0作為地址/數據總線

在系統擴展時,P0端口作為地址/數據總線使用時,分為輸出、輸入:CPU發(fā)出控制電平“1”,打開“與”門,又使多路開關MUX把CPU的地址/數據總線與T2柵極反相接通,輸出地址或數據。由圖上可以看出,上下兩個FET處于反相,構成了推拉式的輸出電路,其負載能力大大增強。P0的輸出級可驅動8個LSTTL負載。DQCLKQMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳P0引腳作輸出口輸入信號是從引腳通過輸入緩沖器2進入內部總線。P0引腳作輸入口DQCLKQMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳2、P1口的內部結構P1口的某一位的結構圖,由一個輸出鎖存器、兩個三態(tài)輸入緩沖器和輸出驅動電路組成.

通用準雙向I/O口。DQCLKQP1.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP1口引腳3、P2的內部結構(1)P2口作為普通I/O口DQCLKQMUXP2.n讀鎖存器內部總線寫鎖存器讀引腳地址控制VCCRTP2口引腳CPU發(fā)出控制電平“0”

,使多路開關MUX倒向鎖存器輸出端Q

,構成一個準雙向口。其功能與P1相同。

(2)P2口作為地址總線在系統擴展片外程序存儲器擴展數據存儲器且容量超過256B(用MOVX@DPTR指令)時,CPU發(fā)出控制電平“1”,使多路開關MUX倒內部地址線。此時,P2輸出高8位地址。DQCLKQMUXP2.n讀鎖存器內部總線寫鎖存器讀引腳地址控制VCCRTP2口引腳4、P3的內部結構①作為通用I/O口(進行SFR尋址時),W=1輸出:內部總線--Q--與非門—T,與P1口類似,準雙向口輸入:讀引腳時,緩沖器3、2打開,P3.n讀入內部總線DQCLKQP3.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP3口引腳第二輸入功能第二輸出功能W123②P3用作第二功能DQCLKQP3.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP3口引腳第二輸入功能第二輸出功能輸出部分:內部置Q=1,第二輸出功能W--與非門--T輸出輸入部分:Q和W均為高電平,T截止,P3.n通過緩沖器3直接輸入。WP3第二功能各引腳功能定義: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外部讀控制I/O口總結4個端口均可作通用I/O口,為準雙向口,作為輸入時,必須先向該位的口鎖存器寫”1”。P0:作通用I/O口時,輸出需接上拉電阻。系統擴展時,可作為地址(低8位)/數據總線,分時復用。P1:專用I/O口。P2:系統擴展時,輸出地址高8位。P3:具有第二功能口,包括中斷輸入、串行口、讀、寫。CPU對I/O口的讀操作一是CPU讀端口引腳上的外部輸入信息二是讀口鎖存器的狀態(tài),讀-修改-寫,讀的是鎖存器而不是引腳DQCLKQP1.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP1口引腳端口的負載能力和接口要求

1、P0口的負載能力和接口要求負載能力:可驅動8個LS(低功耗、甚高速)型TTLP0接口要求:作為一般I/O口輸出時,準雙向口。若驅動的是NMOS電路或OC門電路,其引腳要接上拉電阻,否則高電平電位不確定。

2、P1~P3口的負載能力和接口要求負載能力:可驅動4個LS型TTL接口要求:作為一般I/O口輸出時,不需要要接上拉電阻(因為內部有上拉電阻)指令寄存器譯碼地址譯碼程序計數器地址寄存器累加器A運算器①②存儲器內部數據總線外部地址總線AB數據緩沖器外部數據總線DB寄存器區(qū)外部控制總線CB內部控制信號時鐘及清零單片機的工作過程取指過程例:MOVA,#09H74H

09H;把09H送到累加器A中執(zhí)行過程PC=0000H0001H0000H0002H0111010000001001(PC)(PC)0001H0002H0000H外部控制總線CB取指過程(PC)執(zhí)行過程你知道PC的作用嗎?1、CPU的主要組成部分為()。B.加法器,寄存器

C.運算器,寄存器

D.運算器,指令譯碼器A.運算器,控制器

課堂練習2、8031有四個工作寄存器區(qū),由PSW狀態(tài)字中的RS1、RS0兩位的狀態(tài)來決定,單片機復位后,若執(zhí)行SETBRS1指令,此時只能使用()區(qū)的工作寄存器。A.0區(qū)B.1區(qū)C.2區(qū)D.3區(qū)課堂練習3.

09H位所在單元的地址是()A.02HC.08HB.21HD.20H課堂練習4.單片機在進行取指令操作時,指令的地址是由()的內容決定。A.SPC.DPTRD.PSEN和ALE

B.PC課堂練習5.P0,P1口作輸入用途之前必須()。A.外接高電平

B.外接上拉電阻C.相應端口先置0

D.相應端口先置1

課堂練習6.程序計數器PC用來()。A.存放指令

B.存放上一條的指令地址D.存放正在執(zhí)行的指令地址

C.存放下一條的指令地址

課堂練習1.

8031單片機內部RAM包括()。

A.程序存儲區(qū)B.堆棧區(qū)C.工作寄存器及特殊功能區(qū)

D.位尋址區(qū)E.中斷入口地址區(qū)2.

8051單片機CPU的主要功能有()。

A.產生控制信號B.存儲數據C.算術、邏輯運算及位操作

D.驅動LED3.單片機能夠直接運行的程序是()。

A.匯編源程序B.C語言源程序

C.高級語言程序D.機器語言源程序思考題思考題4.

十進制數126其對應的十六進制可表示為()。

A.8FB.8EC.FED.7E5.

十進制數89.75其對應的二進制可表示為().A.10001001.01110101B.1001001.10C.1011001.11D.1001001.116.

二進制數110010010對應的十六進制數可表示為()A.192HB.C90HC.1A2HD.CA0H7.-3的補碼是()。

A.10000011B.11111100C.11111110D.11111101整數:除二取余小數:乘二取整正數的補碼同原碼;負數的補碼符號位為1,數值位為反碼加1思考題8.對于INTEL8031來說,/EA腳總是()A.接地B.接電源C.懸空D.不用9.

在單片機中,通常將一些中間計算結果放在()中

A.累加器

溫馨提示

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

評論

0/150

提交評論