單片機(jī)原理及應(yīng)用單片機(jī)基本結(jié)構(gòu)_第1頁
單片機(jī)原理及應(yīng)用單片機(jī)基本結(jié)構(gòu)_第2頁
單片機(jī)原理及應(yīng)用單片機(jī)基本結(jié)構(gòu)_第3頁
單片機(jī)原理及應(yīng)用單片機(jī)基本結(jié)構(gòu)_第4頁
單片機(jī)原理及應(yīng)用單片機(jī)基本結(jié)構(gòu)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單片機(jī)原理及應(yīng)用單片機(jī)基本結(jié)構(gòu)第一頁,共三十七頁,2022年,8月28日8051單片機(jī)的特點

8051單片機(jī)可分為無ROM型和ROM型兩種無ROM型的芯片,必須外接EPROM才能應(yīng)用(典型芯片為8031)ROM型芯片又分為EPROM型(典型芯片為8751)、FLASH型(典型芯片為89C51)、掩膜ROM型(典型芯片為8051)、一次性可編程ROM(OneTimeProgramming,簡稱OTP)的芯片(典型芯片為97C51)。第二頁,共三十七頁,2022年,8月28日

8051單片機(jī)的基本組成時鐘電路SFR和RAMROMCPU定時/計數(shù)器并行端口中斷系統(tǒng)串行端口系統(tǒng)總線時鐘源T0T1P0

P1

P2

P3TXDRXDINT0INT1第三頁,共三十七頁,2022年,8月28日

(1)一個8位微處理器CPU。(2)片內(nèi)數(shù)據(jù)存儲器RAM和特殊功能寄存器SFR。(3)片內(nèi)程序存儲器ROM。(4)兩個定時/計數(shù)器T0、T1,可用作定時器,也可用以對外部脈沖進(jìn)行計數(shù)。(5)四個8位可編程的并行I/O端口,每個端口既可作輸入,也可作輸出。(6)一個串行端口,用于數(shù)據(jù)的串行通信。(7)中斷控制系統(tǒng)。(8)內(nèi)部時鐘電路。

一個8051單片機(jī)包含下列部件第四頁,共三十七頁,2022年,8月28日8051單片機(jī)內(nèi)部結(jié)構(gòu)通道0驅(qū)動器通道2驅(qū)動器RAM地址鎖存器RAM通道0鎖存器通道2鎖存器ROM/EPROMB寄存器程序地址寄存器緩沖器PC遞增器程序計數(shù)器PC數(shù)據(jù)指針DPTRVCCGNDP1.0~P1.7堆棧指針SPACCTMP2PSW通道3鎖存器通道1鎖存器通道1驅(qū)動器通道3驅(qū)動器TMP1SCONTMODPCONTCONTL0TH1TH0TL1IESBUF(TX/RX)IP中斷、串行口和定時器邏輯振蕩器P3.0~P3.7RSTEAALEPSENXTAL2XTAL1ALU(+5V)指令寄存器定時和控制邏輯指令譯碼器第五頁,共三十七頁,2022年,8月28日CPU即中央處理器,是單片機(jī)的核心部件,它完成各種運(yùn)算和控制操作,CPU由運(yùn)算器和控制器兩部分組成。(1)運(yùn)算器運(yùn)算器以算術(shù)邏輯單元ALU為核心,加上累加器ACC、暫存寄存器TMP和程序狀態(tài)字寄存器PSW等所組成。ALU主要用于完成二進(jìn)制數(shù)據(jù)的算術(shù)和邏輯運(yùn)算,并通過對運(yùn)算結(jié)果的判斷影響程序狀態(tài)字寄存器PSW中有關(guān)位的狀態(tài)。

D7D0PSW:8051單片機(jī)的CPUCYACF0RS1RS0OV—P第六頁,共三十七頁,2022年,8月28日PSW中各位的意義如下:CY:進(jìn)位標(biāo)志。在進(jìn)行加法或減法運(yùn)算時,若運(yùn)算結(jié)果的最高位有進(jìn)位或借位,CY=1,否則CY=0,在執(zhí)行位操作指令時,CY作為位累加器。AC:輔助進(jìn)位標(biāo)志。在進(jìn)行加法或減法運(yùn)算時,若低半字節(jié)向高半字節(jié)有進(jìn)位或借位,AC=1,否則AC=0,AC還作為BCD碼運(yùn)算調(diào)整時的判別位。F0:用戶標(biāo)志。RS1和RS0:工作寄存器組選擇,如下表所示。RS1RS0工作寄存器組片內(nèi)RAM地址00第0組00H~07H01第1組08H~0FH

10第2組10H~17H

11第3組18H~1FH

第七頁,共三十七頁,2022年,8月28日OV:溢出標(biāo)志。當(dāng)兩個帶符號的單字節(jié)數(shù)進(jìn)行運(yùn)算,結(jié)果超出-128~+127的范圍時,OV=1,表示有溢出,否則OV=0表示無溢出。PSW中的D1位為保留位,對于8051來說沒有意義,對于8052來說為用戶標(biāo)志,與F0相同。P:奇偶校驗標(biāo)志。每條指令指行完畢后,都按照累加器A中“1”的個數(shù)來決定P值,當(dāng)“1”的個數(shù)為奇數(shù)時,P=1,否則P=0。

第八頁,共三十七頁,2022年,8月28日(2)控制器

控制器包括程序計數(shù)器PC、指令寄存器、指令譯碼器、數(shù)據(jù)指針DPTR、堆棧指針SP、緩沖器以及定時與控制電路等??刂齐娐吠瓿芍笓]控制工作,協(xié)調(diào)單片機(jī)各部分正常工作。程序計數(shù)器PC:當(dāng)一條指令按PC所指向的地址從程序存儲器中取出之后,PC的值會自動增量,即指向下一條指令。堆棧指針SP:用來指示堆棧的起始地址。80C51單片機(jī)的堆棧位于片內(nèi)RAM中,而且屬于“上長型”堆棧,復(fù)位后SP被初始化為07H,使得堆棧實際上由08H單元開始。指令譯碼器:當(dāng)指令送入指令譯碼器后,由譯碼器對該指令進(jìn)行譯碼,CPU根據(jù)譯碼器輸出的電平信號使定時控制電路產(chǎn)生執(zhí)行該指令所需要的各種控制信號。數(shù)據(jù)指針寄存器DRTR:它是一個16位寄存器,由高位字節(jié)DPH和低位字節(jié)DPL組成,用來存放16位數(shù)據(jù)存儲器的地址,以便對片外64kB的數(shù)據(jù)RAM區(qū)進(jìn)行讀寫操作。第九頁,共三十七頁,2022年,8月28日P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1VSS12345678910111213141516171819208031805187514039383736353433323130292827262521222324VCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VppALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0

8051單片機(jī)引腳描述第十頁,共三十七頁,2022年,8月28日

電源引腳Vcc和Vss

Vcc:電源端,接+5V。

Vss:接地端。

時鐘電路引腳XTAL1和XTAL2

XTAL1:接外部晶振和微調(diào)電容的一端,在片內(nèi)它是

振蕩器倒相放大器的輸入,若使用外部TTL時鐘時,該

引腳必須接地。

XTAL2:接外部晶振和微調(diào)電容的另一端,在片內(nèi)它

是振蕩器倒相放大器的輸出,若使用外部TTL時鐘時,

該引腳為外部時鐘的輸入端。

地址鎖存允許ALE

系統(tǒng)擴(kuò)展時,ALE用于控制地址鎖存器鎖存P0口輸出的

低8位地址,從而實現(xiàn)數(shù)據(jù)與低位地址的復(fù)用。

第十一頁,共三十七頁,2022年,8月28日

外部程序存儲器讀選通信號PSEN

PSEN是外部程序存儲器的讀選通信號,低電平有效。

程序存儲器地址允許輸入端EA/VPP

當(dāng)EA為高電平時,CPU執(zhí)行片內(nèi)程序存儲器指令,但當(dāng)PC中的值超過0FFFH時,將自動轉(zhuǎn)向執(zhí)行片外程序存儲器指令。當(dāng)EA為低電平時,CPU只執(zhí)行片外程序存儲器指令。

復(fù)位信號RST該信號高電平有效,在輸入端保持兩個機(jī)器周期的高電平后,就可以完成復(fù)位操作。第十二頁,共三十七頁,2022年,8月28日

輸入/輸出端口引腳P0,P1,P2和P3P0口(P0.0~P0.7):該端口為漏極開路的8位準(zhǔn)雙向口,它為外部低8位地址線和8位數(shù)據(jù)線復(fù)用端口,驅(qū)動能力為8個LSTTL負(fù)載。

P1口(P1.0~P1.7):它是一個內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口,P1口的驅(qū)動能力為4個LSTTL負(fù)載。P2口(P2.0~P2.7):它為一個內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口,P2口的驅(qū)動能力也為4個LSTTL負(fù)載。在訪問外部程序存儲器時,作為高8位地址線。P3口(P3.0~P3.7):為內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口,P3口除了作為一般的I/O口使用之外,每個引腳都具有第二功能。第十三頁,共三十七頁,2022年,8月28日特殊功能寄存器通用

RAM區(qū)位尋址區(qū)00H1FH20H2FH30H7FH80HFFH80H88H90H98HA0HA8HB0HB8HD0HE0HF0H特殊功能寄存器地址外部ROM內(nèi)部ROM(EA=1)外部ROM(EA=0)0000H0000H0FFFH0FFFH1000HFFFFH外部RAM(I/O口地址)0000HFFFFH內(nèi)部數(shù)據(jù)存儲器外部數(shù)據(jù)存儲器程序存儲器工作寄存器區(qū)8051單片機(jī)的存儲器配置 第十四頁,共三十七頁,2022年,8月28日片內(nèi)ROM和片外ROM。片內(nèi)RAM和片外RAM。片外程序存儲器ROM地址空間為64kB,片外數(shù)據(jù)存儲器RAM也有64kB的尋址區(qū),在地址上是與ROM重迭的。8051單片機(jī)通過不同信號來選通ROM或RAM。當(dāng)從外部ROM中取指令時,采用選通信號PSEN,而從外部RAM中讀寫數(shù)據(jù)時則采用讀RD和寫WR信號或來選通,因此不會因地址重迭而發(fā)生混亂。8051在物理上有4個存儲器空間第十五頁,共三十七頁,2022年,8月28日片內(nèi)數(shù)據(jù)存儲器RAM片內(nèi)RAM有256個字節(jié),其中00H~7FH地址空間是直接尋址區(qū),該區(qū)域內(nèi)從00H~1FH地址為工作寄存器區(qū),安排了4組工作寄存器,每組都為R0~R7,在某一時刻,CPU只能使用其中任意一組工作寄存器,由程序狀態(tài)字PSW中RS0和RS1的狀態(tài)決定。片內(nèi)RAM的20H~2FH地址單元為位尋址區(qū),其中每個字節(jié)的每一位都規(guī)定了位地址。每個地址單元除了可進(jìn)行字節(jié)操作之外,還可進(jìn)行位操作。片內(nèi)RAM的80H~FFH地址空間是特殊功能寄存器SFR區(qū),對于51子系列在該區(qū)域內(nèi)安排了21個特殊功能寄存器,對于52子系列則在該區(qū)域內(nèi)安排了26個特殊功能寄器,同時擴(kuò)展了128個字節(jié)的間接尋址片內(nèi)RAM,地址也為80~FFH,與SFR區(qū)地址重迭。

第十六頁,共三十七頁,2022年,8月28日片內(nèi)數(shù)據(jù)存儲器中的位地址第十七頁,共三十七頁,2022年,8月28日特殊功能寄存器地址及功能表第十八頁,共三十七頁,2022年,8月28日片外數(shù)據(jù)存儲器RAM 當(dāng)片內(nèi)RAM不能滿足數(shù)量上的要求時,可通過總線端口和其他I/O口擴(kuò)展外部RAM,其最大容量可達(dá)64KB字節(jié)。在片內(nèi)數(shù)據(jù)存儲器中,數(shù)據(jù)區(qū)和擴(kuò)展的I/O口是統(tǒng)一編址的,使用的指令也完全相同,因此,用戶在應(yīng)用系統(tǒng)設(shè)計時,必須合理地進(jìn)行外部RAM和I/O端口的地址分配,并保證譯碼的唯一性。第十九頁,共三十七頁,2022年,8月28日程序存儲器ROM程序存儲器ROM包括片內(nèi)ROM和片外ROM兩個部分。主要用來存放編好的用戶程序和表格常數(shù),它以16位的程序計數(shù)器PC作為地址指針,尋址空間為64KB。當(dāng)EA接高電平時,單片機(jī)從片內(nèi)ROM的4kB字節(jié)存儲器區(qū)取指令,當(dāng)指令地址超過0FFFH后,自動地轉(zhuǎn)向片外ROM取指令。當(dāng)EA接低電平時,所有的取指操作均對片外程序存儲器進(jìn)行。第二十頁,共三十七頁,2022年,8月28日8051單片機(jī)的CPU時序1單片機(jī)的時鐘電路2振蕩周期、時鐘周期、機(jī)器周期和指令周期 3單片機(jī)指令的取指和執(zhí)行時序

第二十一頁,共三十七頁,2022年,8月28日單片機(jī)的時鐘電路單片機(jī)時鐘電路通常有兩種形式:1.內(nèi)部振蕩方式:8051單片機(jī)片內(nèi)有一個用于構(gòu)成振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。把放大器與作為反饋元件的晶體振蕩器或陶瓷諧振器連接,就構(gòu)成了內(nèi)部自激振蕩器并產(chǎn)生振蕩時鐘脈沖。2.外部振蕩方式:外部振蕩方式就是把外部已有的時鐘信號引入單片機(jī)內(nèi)。第二十二頁,共三十七頁,2022年,8月28日XTAL2XTAL1MCS-51C1C2CYSXTAL2XTAL1MCS-51+5VVSSTTL外部時鐘源內(nèi)部振蕩方式

外部振蕩方式第二十三頁,共三十七頁,2022年,8月28日P1P2S1振蕩周期時鐘周期機(jī)器周期機(jī)器周期指令周期XTAL2(OSC)S2S3S4S5S6S1S2S4S5S3S6P1P1P1P1P1P1P1P1P1P1P1P2P2P2P2P2P2P2P2P2P28051單片機(jī)各種周期的相互關(guān)系

振蕩周期、時鐘周期、機(jī)器周期、指令周期P2第二十四頁,共三十七頁,2022年,8月28日1.振蕩周期:為單片機(jī)提供時鐘信號的振蕩源的周期。2.時鐘周期:振蕩源信號經(jīng)二分頻后形成的時鐘脈沖信號,為振蕩周期的2倍。3.機(jī)器周期:完成一個基本操作所需的時間,通常為12個振蕩周期。4.指令周期:指CPU執(zhí)行一條指令所需要的時間,一個指令周期通常含有1~4個機(jī)器周期。第二十五頁,共三十七頁,2022年,8月28日

振蕩周期=1/12μs時鐘周期=1/6μs機(jī)器周期=1μs指令周期=1~4μs

8051單片機(jī)外接晶振為12MHz時

四個周期的具體值第二十六頁,共三十七頁,2022年,8月28日復(fù)位電路及復(fù)位狀態(tài)1.復(fù)位電路單片機(jī)復(fù)位電路包括片內(nèi)、片外兩部分。外部復(fù)位電路就是為內(nèi)部復(fù)位電路提供兩個機(jī)器周期以上的高電平而設(shè)計的。8051單片機(jī)通常采用上電自動復(fù)位和按鍵手動復(fù)位兩種方式。單片機(jī)運(yùn)行出錯或進(jìn)入死循環(huán)時,可按復(fù)位鍵重新運(yùn)行。第二十七頁,共三十七頁,2022年,8月28日C122μF

RSTR11KΩ+5V+5V803180518751(a)上電復(fù)位電路(b)按鍵復(fù)位電路C122μF

RSTR2200Ω803180518751R11KΩ上電復(fù)位和按鍵復(fù)位電路第二十八頁,共三十七頁,2022年,8月28日特殊功能寄存器初始狀態(tài)特殊功能寄存器初始狀態(tài)ACC00HTMOD00HPC0000HTCON00HPSW00HTH000HSP07HTL000HDPL00HTH100HDPH00HTL100HP0~P3FFHSBUF不定IP×××00000BSCON00HIE0××00000BPCON0×××0000B2.復(fù)位狀態(tài)第二十九頁,共三十七頁,2022年,8月28日8051單片機(jī)的并行I/O口

8051單片機(jī)有4個雙向并行的8位I/O口P0~P3。P0口為三態(tài)雙向口,可驅(qū)動8個TTL電路,P1、P2、P3口為準(zhǔn)雙向口(作為輸入時,需要先向口鎖存器寫入1,故稱為準(zhǔn)雙向口),其負(fù)載能力為4個TTL電路。第三十頁,共三十七頁,2022年,8月28日1.P0口的結(jié)構(gòu)VCCP0.X鎖存器讀鎖存器地址/數(shù)據(jù)控制D讀引腳寫鎖存器內(nèi)部總線QQMUXT2P0.XT1CL第三十一頁,共三十七頁,2022年,8月28日2.P1口的結(jié)構(gòu)VCCP1.X鎖存器讀鎖存器D讀引腳寫鎖存器內(nèi)部總線QQTP1.X

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論