多功能引腳_第1頁
已閱讀1頁,還剩52頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第二章 89C51單片機硬件結(jié)構(gòu)和原理,2.1 89C51單片機內(nèi)部結(jié)構(gòu)及特點,一、89C51單片機的基本組成 89C51單片機的基本結(jié)構(gòu)見下圖。,MCS-51系列單片機為Intel 公司產(chǎn)品,1980年推出。 MCS-51 系列單片機有: 8051,8751,8031 80c51BH,80c31BH

2、… 它們的基本組成、基本性能和指令系統(tǒng)都是相同的。,89C51單片機是ATNMEL、PHILIPS、SST公司的產(chǎn)品: 89C51= 80C31+373+Flash ROM 給單片機的開發(fā)及應(yīng)用帶來很大的方便,89C51單片機結(jié)構(gòu)框圖,89C51CPU,振蕩器和時序OSC,64KB 總線擴展控制器,數(shù)據(jù)存儲器256B RAM/SFR,2×16位定時器/計數(shù)器,,,,,,,,,,,可編程I/O,程序

3、存儲器4KBROM,,可編程全雙工串行口,,,,,,,,,,,,,外中斷,內(nèi)中斷,控制,并行口,,,串行通信,外部時鐘源,外部事件計數(shù),含有: 1.  一個8位 CPU 80C51 2.  128 B/256 B RAM/SFR 3. 4KB Flash ROM (8051/8052是掩膜 ROM, 8751/8752是EPROM,但8031、

4、 8032、80C32片內(nèi)無ROM) 4. 片內(nèi)振蕩器和時鐘產(chǎn)生電路(石英晶體與微調(diào)電容需外接, 最高允許振蕩頻率為12MHZ) 5. 4個8位并行I/O接口(共32位I/O)P0~P3,每個口皆可輸入 和輸出,其中P3口還可用于——串行輸入/輸出、定時/計數(shù) 器、外部事件計數(shù)輸入,中斷輸入。 6. 2個 16位 定時/計數(shù)器 7. 5

5、個中斷源的中斷控制系統(tǒng)(2個外中斷,2個定時/計數(shù)器中 斷,1個串行口中斷) 8. 1個全雙工的串行I/O 接口,51系列單片機的溫度適用范圍 為: 民品(商業(yè)用) 0~70 °C 工業(yè)品 -40~+85 °C 軍品

6、 -55~+125 °C,工業(yè)級產(chǎn)品1. 采用密封式封裝2. 在工業(yè)級規(guī)定的溫度范圍內(nèi)進行電器特性測試3. 產(chǎn)品經(jīng)過125 °C 溫度下44小時的老化處理4. 老化后100%進行電氣測試,質(zhì)量檢驗。 軍品則要求更高,與8051相比,89C51具有兩種用軟件選擇的節(jié)電工作方式—— 空閑方式:CPU停止工作,RAM、定時/計數(shù)

7、器、中斷系統(tǒng)等繼續(xù)工作。 掉電方式:片內(nèi)振蕩器停止,所以系統(tǒng)不能工作,僅保存RAM中內(nèi)容。,二、 89C51單片機內(nèi)部結(jié)構(gòu),89C51與8051/8751/8031芯片的外部引腳和指令系統(tǒng)完全兼容,僅在內(nèi)部配置了一個Flash ROM。結(jié)構(gòu)總圖如下:,由 中央處理單元(CPU)、 存儲器(ROM及RAM)、 I/O接口組成。,ALU—可對4位,8位,16位數(shù)據(jù)進行算術(shù)邏輯運算等操作。ACC—提供一個運

8、算數(shù),經(jīng)Temp2送入ALU或中轉(zhuǎn)站, 用A表示。 PSW—程序狀態(tài)字,標志指令執(zhí)行后的信息狀態(tài)。 B — 8位Reg, 可作通用Reg.使用。,②布爾處理器—— 以PSW中的C(進位標志位)為其累加器,專門 用于處理位操作(位運算、位處理、位尋址),①運算器,1. CPU,,,,,,P0驅(qū)動器,P2驅(qū)動器,P0鎖存器,P2鎖存器

9、,RAM地址寄存器,128BRAM,4KBFlash ROM,B寄存器,暫存器1,暫存器2,ACC,SP,程序地址寄存器,緩沖器,PC增1,PC,DPTR,中斷、串行口和定時器,PSW,P1鎖存器,P1驅(qū)動器,P3鎖存器,P3驅(qū)動器,定時控制,指令寄存器,指令譯碼器,OSC,,ALU,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,P0.0-P0.7,P2.0-P2.7,P3.0

10、-P3.7,P1.0-P1.7,XTAL1 XTAL2,PSENALEEARET,,,,,程序計數(shù)器PC(16bit)—PCH,PCL。 其中存放著將要執(zhí)行的下一條指令的地址。指令Reg. IR—存放從PC中地址取出的指令。 指令譯碼器ID—對指令進行譯碼?PLA,產(chǎn)生控制信 號,以執(zhí)行指令規(guī)定的操

11、作。振蕩器及定時電路:外接晶體和微調(diào)電容(30pF),其頻率范圍為1.2MHZ~12MHZ,常用6MHZ晶體。,③ 控制器,,2. 存儲器 (特點: ROM和RAM獨立編址(哈佛結(jié)構(gòu))),(1)程序存儲器(ROM) 地址從0000H開始,內(nèi)部4KB。用于存放程序和表格常數(shù)。,(2)數(shù)據(jù)存儲器(RAM) ① 地址為00H~7FH,128B。存放中間結(jié)果、數(shù)據(jù)暫存及數(shù)據(jù)緩沖等。 ② 128B的RAM中有32個字節(jié)單元可指定為

12、工作寄存器。 ③片內(nèi)還有21個特殊功能寄存器(SFR),它們同128字節(jié)RAM統(tǒng)一編址,地址為80H~FFH。后面詳細介紹。,3. I/O接口(1) 4個8位并行I/O口 P0~P3,均可輸入/輸出。(2)每個I/O口(8位)有一鎖存器,鎖存器地址與RAM地址統(tǒng)一編址,可作為特殊功能Reg. (SFR)來尋址。 這個鎖存器(SFR)類似于8255中I/O口與Reg之間的關(guān)系。對I/O口操作,即是對這個鎖存器操作。,在單片機外

13、部的存儲器:(1)外部程序存儲器ROM單元: 與內(nèi)部程序存儲器ROM統(tǒng)一編址,共64KB。 如,內(nèi)部已用4KB,則外部ROM地址為 1000H~FFFFH。(2)外部數(shù)據(jù)存儲器RAM單元:0000H~FFFFH(64KB) 內(nèi)、外部數(shù)據(jù)存儲器RAM的操作指令不同。,89C51為40 PIN DIP封裝。,2.2 89C51單片機引腳及其功能,89C51單片機引腳圖,1

14、.電源引腳(Vss,Vcc) Vss(I,20) 電源地電平 Vcc(I, 40) 電源端 +5V,當外接晶體時,接晶體和微調(diào)電容的一端。,2.時鐘電路引腳(XTAL1, XTAL2) XTAL1(I,19):振蕩器反向放大器輸入端。,當采用外部時鐘時,此腳作為驅(qū)動端,接外部時鐘。,XTAL2(I,18):振蕩器反向放大器輸出端。,當外接晶體時,接晶體和微調(diào)電容的一端。,當采用外部時鐘時,此腳懸空。,

15、振蕩電路的頻率就是晶體固有頻率。單片機正常工作時,該引腳應(yīng)有脈沖信號輸出。,注,CHMOS(互補金屬氧化物HMOS)是CMOS和HMOS(高密度溝道MOS工藝)的結(jié)合,除了保持HMOS高速度和高密度之外,還有CMOS低功耗的特點。 兩類器件的功能是完全兼容的,區(qū)別在CHMOS器件具有低功耗的特點。它所消耗的電流比HMOS器件少很多,主要在于其采用了兩種降低功耗的方式:空閑方式和掉電方式。 CHMOS器件在掉電

16、方式(CPU停止工作,片內(nèi)RAM的數(shù)據(jù)繼續(xù)保持)下時,消耗的電流可低于10μA。 采用CHMOS的器件在編號中用一個C來加以區(qū)別, 如 : 80C51,80C31,89C51等。,(1)RST/VPD(I,9)——多功能引腳,復(fù)位/備用電源。 RST 復(fù)位信號,高電平有效。 VPD 備用電源輸入端。當Vcc發(fā)生故障(掉電等 ),降低到低

17、 電平的規(guī)定值時,可由該端子為片內(nèi)RAM提供電源。,在通電瞬間(Vc=0),電容C通過R充電,在RST 端出現(xiàn)如圖正脈沖,則89C51加電自動復(fù)位。 R、C隨CPU時鐘頻率而變化,取值如圖。,復(fù)位電路有上電復(fù)位、按鍵兼上電復(fù)位兩種:,上電復(fù)位(右圖),開關(guān)常開時,為上電復(fù)位電路; 當常開按鍵閉合時,相當于RST端通過電阻R1(200Ω)與Vcc電源接通,22uF電容迅速放電,R

18、ST上得到一個5V經(jīng)220Ω與1K電阻的分壓(高電平)。這個分壓大致為5V的5/6,4.2V,使單片機復(fù)位。,當常開按鍵松開時,RST端經(jīng)一段時間后又逐漸降至0V。時序圖如右所示。,上電兼手動復(fù)位 (右圖,電平方式開關(guān)復(fù)位),,即使不訪問外部存儲器,ALE端仍以振蕩頻率的1/6周期性地輸出正脈沖信號,這可作為輸出脈沖或定時信號。,ALE端的負載能力為8個LS型TTL輸入。,VPP:用于在對89c51的片內(nèi)Flash

19、 ROM編程時,施加 (12V~21V)高壓的輸入端。,,(4) EA/VPP(I,31)——內(nèi)外程序存儲器選擇/編程電源輸入,4. I/O端口 P0~P3,準雙向 當I/O口作為輸入時,應(yīng)先向此口鎖存器寫入全1, 此時該口引腳浮空,可作高阻抗輸入。,漏極開路的8位準雙向I/O口,每位能驅(qū)動8個LS型TTL負載。在CPU訪問片外存儲器(RAM、ROM)時,P0口為分時復(fù)用的低8位地址總線和8位數(shù)據(jù)總線(此時

20、,其內(nèi)部上拉電阻被激活 )若系統(tǒng)中無外擴存儲器(RAM、ROM),P0口可作為一個數(shù)據(jù)輸入/輸出口(輸出時,不能激活內(nèi)部上拉電阻,需外接上拉電阻;輸入時,應(yīng)先向口鎖存器寫入1,使P0口全部引腳浮空再輸入)。,(2) P1口(P1.0~P1.7,1~8pin,I/O) 帶內(nèi)部上拉電阻的8位 準雙向I/O端口。(并行或按位使用)

21、 輸出時,P1口的每一位能驅(qū)動4個LS型TTL負載。 輸入時,先向其口鎖存器寫入全1,此時將P1口引腳由內(nèi)部上拉電阻拉成高電平。,(3) P2口(P2.0~P2.7,21-28,I/O) 帶內(nèi)部上拉電阻的8位 準雙向I/O端口。 當有外部存貯器時,用作高8 位地址總線。②

22、 當無外部存貯器時,可用作一般I/O線。輸出輸入時的情況同P1口。,(4) P3口(P3.0~P3.7,10~17pin,I/O) 雙功能口。 帶內(nèi)部上拉電阻的8位準雙向I/O端口。,每位能驅(qū)動4個LS型TTL負載。P3口除作為一般I/O口外,每個引腳都有第二功能。,第一功能:一般I/O口,準雙向,輸出輸入時的情況同P1口。,第二功能

23、:系統(tǒng)控制信號,定義如下:,第二功能:系統(tǒng)控制信號,定義如下:,任意一位不用于第二功能(首選)時,可用于第一功能。,① 程序MEM和數(shù)據(jù)MEM獨立編址(哈佛結(jié)構(gòu))。 ② 程序MEM:片內(nèi)與片外統(tǒng)一編址(64KB) 。 ③ 數(shù)據(jù)MEM:片內(nèi)與片外獨立編址。,① 片內(nèi)片外統(tǒng)一編址的64KB ROM: 0000H~FFFFH ② 64KB 片外RAM:0000H~FFFFH ③ 256字節(jié)片內(nèi)RAM:00H~FFH

24、 存儲空間分布圖見下圖。,編址特點,,從用戶角度看,89C51存貯器地址空間分為3類:,89c51指令系統(tǒng)設(shè)計了不同的訪問指令,以區(qū)別3個存貯區(qū)的訪問。如: ①片內(nèi)、外ROM 用 MOVC ②片外RAM用 MOVX ③片內(nèi)RAM用 MOV,2. 3 89C51單片機存儲器配置,,,圖2-

25、4 89C51存儲器配置,一、 程序存儲器(地址線16位,最多達64KB) ——用于存放程序和表格常數(shù)等。,2.程序M中的部分保留單元(系統(tǒng)留用),見下表。,中斷向量表,1. 片外RAM 0000H~FFFFH,使用MOVX指令訪問。,二、 數(shù)據(jù)存儲器——用于存放暫存數(shù)據(jù)、中間運算結(jié)果等。,2. 片內(nèi)RAM 00H~FFH,使用MOV指令訪問。,,0003H~002AH均勻

26、地分為5段,為5個中斷服務(wù)程序起始處。因為字節(jié)單元太少,所以常在這些存儲單元中存放轉(zhuǎn)移指令。,注:P26 圖,擴展ROM。一般,盡量不擴充片外ROM,而選用片內(nèi)具有大容量Flash的單片機。,,安排了21個SFR地址離散分布,,32個字節(jié)通用Reg.區(qū),即可字節(jié)尋址,又可位尋址.,80字節(jié)RAM區(qū),由PSW中的RS1、RS0兩位組合選中當前組,,CPU上電時選中0組;未用到的組可作為RAM用.程序執(zhí)行的

27、任何時刻,只能用一組。,,16字節(jié),,,圖2-8 低128字節(jié)RAM區(qū),圖2-9 高128字節(jié)RAM區(qū)(SFR區(qū)),② 高128字節(jié)RAM ——SFR 是80H~FFH的部分單元,使用時只能直接尋址。其余未定義部分不能使用。,① 低128字節(jié)RAM 00H~7FH 均可用作一般的RAM單元外,其中某些部分還可以以其它形式使用。,片內(nèi)RAM,通用Reg.區(qū) 4個,00H~1FH (4×8=32), 指令

28、 比一般RAM更豐富、簡潔、快捷。 位地址區(qū) 20H~2FH 以位尋址方式使用時,地址從00H~7FH。 對字節(jié)RAM,用直接尋址和間接尋址;對位地址單元用位尋址方式。(以區(qū)別某個單元是字節(jié)或位單元) 用戶通用RAM 可在此將部分區(qū)域設(shè)置為堆棧,低128字節(jié),,ⅲ)SFR包括 ACC——累加器(字節(jié)地址E0H),指令中用A表示。 B——Reg.(字節(jié)地址F0H),用于乘除

29、指令。 在其他指令中,可作為一般通用Reg或 RAM單元。 PSW——程序狀態(tài)字(字節(jié)地址D0H),各位的含義及格式見下一頁。,SP----堆棧指針(字節(jié)地址81H),其內(nèi)容可為00~7FH的 任何地址單元,系統(tǒng)復(fù)位時為07H(向上生成)。 DPTR----數(shù)據(jù)指針(83H、82H),既可作為一個16位Reg (DPTR)、

30、 也可作為兩個8位Reg ( DPH,DPL)使用。 以16位使用時,對片外RAM尋址。,P0~P3 ——I/O端口(80H,90H,A0H,B0H) 4個I/O端口的鎖存器地址,還可按位尋址,即每一條I/O線均可獨立用作輸入或輸出。 在單片機中,將I/O端口當作SFR,不設(shè)專門的口操作指令(IN或OUT),而采用統(tǒng)一的MOV指令,使用方便。

31、 例:MOV P1,A ;A→P1,SBUF——串行數(shù)據(jù)緩沖器(99H) 用于存放欲發(fā)送或已接收的數(shù)據(jù)。 例:MOV SBUF,A; A→SBUF,THi,TLi ——定時/計數(shù)器 i中的計數(shù)器(i=1,2) 一個16位(THi TLi)

32、 或兩個8位定時/計數(shù)器(THi,TLi)。,其他控制Reg.——IP,IE,TMOD… 為中斷系統(tǒng)、定時/計數(shù)器、串行口和供電方 式的控制與狀態(tài)位。P30 表,2. 4 CPU時序,一、片內(nèi)振蕩器及時鐘信 號的產(chǎn)生,2. 時鐘信號的產(chǎn)生,1. 振蕩器 (構(gòu)成見

33、前),時鐘信號的周期S包含2個振蕩周期: S=fosc/2。 每個時鐘周期S有兩個節(jié)拍P1、P2,稱為相1(P1)和相2(P2)。,CPU以P1、P2為基本節(jié)拍指揮單片機各部件協(xié)調(diào)工作。,1. 機器周期:CPU訪問存儲器一次所需要的時間 (如取指令、讀存儲器、寫存儲器等)。 2. 1個機器周期 = 12個振蕩周期( fosc) = 6個時鐘周期(S,fosc/2) 當使用6MHZ晶振時,一個機器周期

34、 = 2us。 3. 指令周期(一條指令的執(zhí)行時間)= n 個機器周期 n小則執(zhí)行速度快。 注:大部分指令周期為1個或2個機器周期,乘除指令為4個機器周期。,二、機器周期和指令周期,,CPU的4個時序單位從小到大依次是: 節(jié)拍、時鐘周期、機器周期和指令周期,如圖2-13所示。,圖2-13 89C51單片機各種周期的相互關(guān)系,三、CPU取指、執(zhí)指周期時序,每條指令的執(zhí)行都可以包括取指和執(zhí)指兩個階段

35、。在取指階段,CPU從內(nèi)部或外部ROM中取出指令操作碼及操作數(shù),然后再執(zhí)行這條指令。單字節(jié)和雙字節(jié)的指令都可能是單機器周期或雙周期,而三字節(jié)指令都是雙周期的,只有乘、除指令占四周期。因此,當使用6MHZ晶振時,執(zhí)行一條指令的時間(指令周期)分別是2μs,4μs和8μs。如 圖2-14所示。,圖2-14 89C51單片機的取指/執(zhí)行時序,(1) 每個機器周期出現(xiàn)兩次ALE脈沖,用于地址鎖存。(此周期信號可用于其它外設(shè)的控制信

36、號) (2) 對外RAM進行讀寫時,ALE信號不是周期性的,缺一次。故用ALE做系統(tǒng)定時脈沖時要考慮到這一點。,1. 復(fù)位電路 ① 復(fù)位信號的內(nèi)部電路 復(fù)位引腳RST通過片內(nèi)一個斯密特觸發(fā)器與片內(nèi)復(fù)位電路相連,斯密特觸發(fā)器用來脈沖整形及抑制噪聲,其輸出在每個機器周期的S5P2被復(fù)位電路采樣一次。如果RST引腳有一高電平并維持2個機器周期,89C51便執(zhí)行內(nèi)部復(fù)位。P39 圖2-15。,② 復(fù)位信號的外部電路

37、(見前),2. 復(fù)位時SFR的狀態(tài),復(fù)位后,PC=0000H,使單片機從起始地址0000H單元開始執(zhí)行程序。 若單片機運行出錯或進入死循環(huán),可按復(fù)位鍵重新啟動,或通過watchdog電路使其自動復(fù)位。,2. 5 復(fù)位操作,,,A=00H:累加器已被清0。 PSW=00H:選寄存器0組為工作寄存器組。 SP=07H:堆棧指針指向片內(nèi)RAM 07H字節(jié)單元,根據(jù)堆棧操作法則,第一個被壓入的數(shù)據(jù)被寫入08H單元

38、中。 P0~P3=FFH: 已向各端口線寫入1,此時,各端口既可用于輸入,又可用于輸出。 IP=×××00000B: 各個中斷源處于低優(yōu)先級。 IE=0××00000B: 各個中斷均被關(guān)斷。 TMOD=00H: T0/T1均為工作方式0,且運行于定時器狀態(tài)。 TCON=00H: T0/T1均被關(guān)斷。 SCON=00H: 串行口處于工作方式0

39、,允許發(fā)送,不允許接收。 PCON=00H: SMOD=0,波特率不加倍。,表2-8中的符號意義如下:,2. 6 89c51單片機的低功耗工作方式,89C51提供兩種節(jié)電工作方式:空閑(等待、待機)方式和掉電(停機)工作方式圖2-17所示為實現(xiàn)這兩種方式的內(nèi)部電路。,89c51有4個8位并行I/O端口P0、P1、P2、P3。 每個端口是8位準雙向口,每一條I/O線都能獨立地作I/O。 每個端口有:

40、1個輸出鎖存器(P0~P3),即常說的口地址(80H,90H,A0H,B0H)。 1個輸出驅(qū)動器 2(或3)個三態(tài)輸入緩沖器。,2. 7 輸入/輸出端口,一、P0口 某一位結(jié)構(gòu)見圖2-21,當C=0時,開關(guān)MUX被控為如圖示位置,P0口為通用I/O口;,當C=1時,開關(guān)撥向反相器3的輸出端,P0口分時作為地址/數(shù)據(jù)總線使用。,這時,輸出級是漏極開路的開漏電路,P0口可作為一般I/O口使用。 當用于I

41、/O時,需外接10K的上拉電阻到Vcc,否則不能有高電平輸出。,當執(zhí)行一條由端口輸入的指令時,“讀引腳”脈沖把三態(tài)緩沖器2打開,這樣,端口上的數(shù)據(jù)經(jīng)過緩沖器2讀入到內(nèi)部總線。,當用一根端口線去驅(qū)動一個晶體管的基極時,向此端口線輸出“1”使該晶體管導(dǎo)通,導(dǎo)通的晶體管會把引腳上的電平拉低。若這時從該引腳讀入剛才輸出的數(shù)據(jù),讀入的 為“0”,與剛才輸出的值不符。 為避免錯讀引腳電平,單片機還提供了一組“讀鎖存器”操作。見圖中的“讀鎖

42、存器”線。,如:ORLP0,A ;指令功能: 將P0與A相或,然后?P0 該指令先將P0口D鎖存器數(shù)據(jù)(即此時引腳應(yīng)該的電平)讀入CPU,再與A內(nèi)容相“或”,最終將“或”的結(jié)果送到P0鎖存器。此時,鎖存器的內(nèi)容(Q端狀態(tài))和引腳一致,P0數(shù)據(jù)來源于鎖存器而不是引腳。,(3)P0口作輸出時需注意,在以上過程中,讀入操作不是“讀引腳”,而是“讀鎖存器”。這一類指令稱為“讀—修改—寫”指令,有: A

43、NL,ORL,XRL,JBC,CPL,INC,DEC,DJNZ等。這類指令常用來“位”修改,修改時不能影響其他位。,CPU對片外存儲器讀寫時,系統(tǒng)自動使C=1,圖中MUX接反相器3的輸出端: (1)輸出 地址/數(shù)據(jù)信號經(jīng)T1、T2推拉輸出(T1導(dǎo)通時上拉,T2導(dǎo)通時下拉),負載能力較強。(激活內(nèi)部上拉電阻T1) (2)輸入 數(shù)據(jù)從P0輸入。這時,“讀引腳”信號有效?打開輸入緩沖器2?數(shù)據(jù)到DB。,2.

44、 P0口作為地址/數(shù)據(jù)總線使用(C=1),對89C51外擴存儲器并使用時,系統(tǒng)自動使C=1。這時: P0口可作為地址/數(shù)據(jù)總線使用,對片外ROM(或RAM)尋址及作為數(shù)據(jù)輸入/輸出通道。,注意:當P0作為總線使用時,不再能作I/O口使用。,3. P1口用作輸出時:能向外提供拉電流負載,所以不必再接 上拉電阻。

45、 作輸入時:先對鎖存器 寫入“1”,使FET截止。,內(nèi)部電阻實際上是兩個FET并在一起,一個為負載管,其阻值固定;另一個工作在導(dǎo)通或截止兩種狀態(tài),使其總阻值在0或阻值很大兩種情況下變化。 當阻值為0時,引腳快速上拉至高電平; 當阻值很大時,P1口為高阻輸入狀態(tài)。,二、P1口,某一位結(jié)構(gòu)圖見圖2-19,工作原理同P0口, 也是一個準雙向口。區(qū)別如下: 1. 僅作為一般I/O口。 2

46、. 內(nèi)部有上拉電阻,無需外接。,3. 當系統(tǒng)中無需外擴ROM(89C51/8751),只需擴展256B片外RAM 時,只需用P0口的低8位地址即可。這時,P2口仍可作為通用I/O口。 使用MOVX A,@Ri,4. 若擴展RAM超過256B(用MOVX A, @DPTR),需使用P2口的 高8位地址線。,訪問片外RAM周期結(jié)束后,P2口仍可作通用I/O口,但使用時要謹慎

47、。,三、P2口 見 圖2-20,1. 作為一般I/O口使用時,同P1口。,2. 當系統(tǒng)中有外部ROM、RAM時,P2口輸出高8位地址。 此時,不再作為通用I/O口。,驅(qū)動部分與P1口類似,但比P1口多了一個轉(zhuǎn)換控制部分。,當CPU對片內(nèi)存儲器和I/O口進行讀/寫(執(zhí)行MOV 指令或EA=1時,執(zhí)行MOVC指令)時,由內(nèi)部硬件自動使開關(guān)MUX倒向鎖存器的Q端,這時,P2口為一般I/O口。,四、P

48、3口——多功能口,某一位結(jié)構(gòu)圖見圖2-22 1. 作為一般I/O口使用時(W=1), 同P0、P1、P2口。 CPU對P3口進行SFR(位或字節(jié))尋址訪問時,為I/O口。,2. 作為第二功能使用時(Q=1) (CPU不把P3口作為SFR尋址),內(nèi)部硬件使鎖存器Q=1。,表2-10 P3口線與第二功能表,,(1)作為I/O口使用時,外接上拉電阻,輸出時才有高電平輸出;用作輸入時需先

49、向鎖存器(80H)寫“1”,不影響輸入電平。(2)用作地址/數(shù)據(jù)總線時,無需外接上拉電阻。這時用作輸入時,也無需寫“1”。(3)若通過OC門輸入,需外接上拉電阻。,(1)輸出時,無需外接上拉電阻 。 (2)輸入時,先寫“1”。 (3)若通過OC門輸入,無需外接上拉電阻。 對89C51單片機(CHMOS),由于其端口只能提供幾mA輸出電流,當其端口接普通晶體管的基極,應(yīng)在端口與晶體管基極之間串連一個電阻以限流。對T

50、TL門或NMOS電路,可直接接入。,五、端口的負載能力和接口要求,1. P0口的每一位輸出可驅(qū)動8個LS型TTL負載,2. P1~P3口的 每一位輸出級有上拉電阻,每一位可驅(qū)動4個TTL負載。,這樣,當P1.x輸出高電平時,不至于負載電阻過小,而需P1.x端輸出大電流(過載)。,例:,,,,說明:,哈佛結(jié)構(gòu)是一種將程序指令存儲和數(shù)據(jù)存儲分開的存儲器結(jié)構(gòu)。中央處理器首先到程序指令存儲器中讀取程序指令內(nèi)容,解碼后得到數(shù)據(jù)地址,再到

溫馨提示

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

評論

0/150

提交評論