單片機(jī)原理與接口技術(shù)-80C51-單片機(jī)的硬件結(jié)構(gòu)_第1頁(yè)
單片機(jī)原理與接口技術(shù)-80C51-單片機(jī)的硬件結(jié)構(gòu)_第2頁(yè)
單片機(jī)原理與接口技術(shù)-80C51-單片機(jī)的硬件結(jié)構(gòu)_第3頁(yè)
單片機(jī)原理與接口技術(shù)-80C51-單片機(jī)的硬件結(jié)構(gòu)_第4頁(yè)
單片機(jī)原理與接口技術(shù)-80C51-單片機(jī)的硬件結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩66頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

單片機(jī)原理與接口技術(shù)80C51單片機(jī)的硬件結(jié)構(gòu)

外婆打電話給爸爸媽媽,從電話里頭得知,今晚要吃鵝,原因是鵝太難養(yǎng)了。就是昨天放的那只鵝。一回到外婆家,我就把大人們要吃鵝的消息告訴了大表弟,大表弟聽(tīng)后,問(wèn)我:“為什么要吃鵝?”“好像是因?yàn)轾Z太難養(yǎng)了?!蔽译y過(guò)的說(shuō)。說(shuō)罷,我便拉著大表弟的手,往廚房里跑,鍋上正燉著鵝。大表弟又去問(wèn)了問(wèn)外婆,回來(lái)后得知的消息也就是我剛剛告訴大表弟的話。因?yàn)槲覀兌几Z一起玩過(guò),所以,我們決定不吃鵝了。臨近晚飯了,我見(jiàn)大表弟和小表弟還沒(méi)有去廚房吃飯,就拉著他們的手,叫他們?cè)谕饷娴纫幌?,召開“不吃鵝計(jì)劃”會(huì)議,待大人們都離開了我們的旁邊,我便開始主持會(huì)議了?!暗纫幌虑f(wàn)不能吃鵝!聽(tīng)懂了嗎?”我小聲的對(duì)表弟們說(shuō)。表弟們點(diǎn)點(diǎn)頭,齊聲回答:“我們絕對(duì)不吃鵝!”再次吩咐了幾遍,我才放心的帶著他們進(jìn)了廚房。吃飯的時(shí)候,大人們總是叫我們吃鵝,我們總是搖搖頭,讓給大人們吃,就算大人們逼著我們吃,我們還是不會(huì)吃的!大人們見(jiàn)我們這幾個(gè)小孩都不吃鵝,都笑了,他們都覺(jué)得,表弟們是受我影響,才決定不吃鵝的。大表弟的行動(dòng)很滑稽,他一直在嘴里念叨著“堅(jiān)決不吃鵝!”姨姨聽(tīng)了他的話,剛開始還點(diǎn)點(diǎn)頭,后來(lái)實(shí)在忍不住了,就說(shuō):“別再念叨啦!我們都知道你不吃鵝了。”吃完飯后,媽媽又叫我喝湯,我害怕這是鵝湯,就仔細(xì)觀察了一番,確認(rèn)是骨頭湯后,才肯喝湯。單片機(jī)原理與接口技術(shù)80C51單片機(jī)的硬件結(jié)構(gòu)單片機(jī)原理與接口技術(shù)80C51單片機(jī)的硬件結(jié)構(gòu)外婆打電話給爸爸媽媽,從電話里頭得知,今晚要吃鵝,原因是鵝太難養(yǎng)了。就是昨天放的那只鵝。一回到外婆家,我就把大人們要吃鵝的消息告訴了大表弟,大表弟聽(tīng)后,問(wèn)我:“為什么要吃鵝?”“好像是因?yàn)轾Z太難養(yǎng)了。”我難過(guò)的說(shuō)。說(shuō)罷,我便拉著大表弟的手,往廚房里跑,鍋上正燉著鵝。大表弟又去問(wèn)了問(wèn)外婆,回來(lái)后得知的消息也就是我剛剛告訴大表弟的話。因?yàn)槲覀兌几Z一起玩過(guò),所以,我們決定不吃鵝了。臨近晚飯了,我見(jiàn)大表弟和小表弟還沒(méi)有去廚房吃飯,就拉著他們的手,叫他們?cè)谕饷娴纫幌拢匍_“不吃鵝計(jì)劃”會(huì)議,待大人們都離開了我們的旁邊,我便開始主持會(huì)議了。“等一下千萬(wàn)不能吃鵝!聽(tīng)懂了嗎?”我小聲的對(duì)表弟們說(shuō)。表弟們點(diǎn)點(diǎn)頭,齊聲回答:“我們絕對(duì)不吃鵝!”再次吩咐了幾遍,我才放心的帶著他們進(jìn)了廚房。吃飯的時(shí)候,大人們總是叫我們吃鵝,我們總是搖搖頭,讓給大人們吃,就算大人們逼著我們吃,我們還是不會(huì)吃的!大人們見(jiàn)我們這幾個(gè)小孩都不吃鵝,都笑了,他們都覺(jué)得,表弟們是受我影響,才決定不吃鵝的。大表弟的行動(dòng)很滑稽,他一直在嘴里念叨著“堅(jiān)決不吃鵝!”姨姨聽(tīng)了他的話,剛開始還點(diǎn)點(diǎn)頭,后來(lái)實(shí)在忍不住了,就說(shuō):“別再念叨啦!我們都知道你不吃鵝了?!背酝觑埡?,媽媽又叫我喝湯,我害怕這是鵝湯,就仔細(xì)觀察了一番,確認(rèn)是骨頭湯后,才肯喝湯。2.1單片機(jī)的概念單片微型計(jì)算機(jī)SCMC(SingleChipMicro-Computer),是計(jì)算機(jī)、自動(dòng)控制和大規(guī)模集成電路相結(jié)合的產(chǎn)物。還有其他的稱呼,如:微控制器(MCU),嵌入式微控制器(EMCU),嵌入式微處理器(EMP)等。目前使用最多的仍是8位單片機(jī)。在8位單片機(jī)中80c51的使用更為廣泛。本教材也是以80c51為基礎(chǔ)。docin/sundae_meng2.1單片機(jī)的概念

單片微型計(jì)算機(jī)SCMC(SingleChipMicro-Computer),是計(jì)算機(jī)、自動(dòng)控制和大規(guī)模集成電路相結(jié)合的產(chǎn)物。還有其他的稱呼,如:微控制器(MCU),嵌入式微控制器(EMCU),嵌入式微處理器(EMP)等。目前使用最多的仍是8位單片機(jī)。在8位單片機(jī)中80c51的使用更為廣泛。本教材也是以80c51為基礎(chǔ)。docin/sundae_meng2單片機(jī)的特點(diǎn):(1)小巧靈活、成本低、易于產(chǎn)品化。能組裝成各種智能式測(cè)控設(shè)備及智能儀器儀表。(2)可靠性好,應(yīng)用范圍廣。單片機(jī)芯片本身是按工業(yè)測(cè)控環(huán)境要求設(shè)計(jì)的,抗干擾性強(qiáng),能適應(yīng)各種惡劣的環(huán)境,這是其他機(jī)種無(wú)法比擬的。(3)易擴(kuò)展,很容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng),控制功能強(qiáng)。單片機(jī)的邏輯控制功能很強(qiáng),指令系統(tǒng)有各種控制功能指令,可以對(duì)邏輯功能比較復(fù)雜的系統(tǒng)進(jìn)行控制。(4)具有通訊功能,可以很方便地實(shí)現(xiàn)多機(jī)和分布式控制,形成控制網(wǎng)絡(luò)和遠(yuǎn)程控制。docin/sundae_meng3單片機(jī)的應(yīng)用(1)工業(yè)方面:各種測(cè)控系統(tǒng)。數(shù)據(jù)采集系統(tǒng),工業(yè)機(jī)器人,智能化儀器,機(jī)、電一體化產(chǎn)品。(2)智能儀器儀表方面。(3)通訊方面:調(diào)制解調(diào)器、程控交換技術(shù)等。(4)消費(fèi)產(chǎn)品方面:電動(dòng)玩具、錄像機(jī)、激光唱機(jī)。(5)導(dǎo)彈與控制方面:導(dǎo)彈控制、魚雷制導(dǎo)控制、智能武器裝備、飛機(jī)導(dǎo)航系統(tǒng)。(6)計(jì)算機(jī)外部設(shè)備及電器方面:打印機(jī)、硬盤驅(qū)動(dòng)器、彩色與黑白復(fù)印機(jī)、磁帶機(jī)等。(7)多機(jī)分布式系統(tǒng):可用單片機(jī)構(gòu)成分布式測(cè)控系統(tǒng),它使單片機(jī)應(yīng)用進(jìn)入了一個(gè)全新的階段。(測(cè)控系統(tǒng),智能儀表,智能玩具,計(jì)算機(jī)外設(shè))docin/sundae_meng4.典型單片機(jī)產(chǎn)品簡(jiǎn)介(1)MCS-51單片機(jī)系列

MCS-51可分為兩個(gè)子系列和4種類型,按資源的配置數(shù)量,MCS-51系列分為51和52兩個(gè)子系列,其中51子系列是基本型,而52子系列屬于增強(qiáng)型。

資源配置子系列片內(nèi)ROM的形式片內(nèi)ROM容量片內(nèi)RAM容量定時(shí)器與計(jì)數(shù)器中斷源無(wú)ROMEPROME2PROM8×51系列80318051875189514KB128B2×1658×C51系列80C3180C5187C5189C514KB128B2×1658×52系列80328052875289528KB256B3×1668×C252系列80C23280C25287C25289C2528KB256B3×167docin/sundae_meng80C51與8051的比較(1)MCS-51系列芯片采用HMOS工藝,而80C51芯片則采用CHMOS工藝。CHMOS工藝是CMOS和HMOS的結(jié)合,(2)80C51芯片具有CMOS低功耗的特點(diǎn)。例如8051芯片的功耗為630mW,而80C51的功耗只有120mW。(3)80C51在功能增加了待機(jī)和掉電保護(hù)兩種工作方式,以保證單片機(jī)在掉電情況下能以最低的消耗電流維持。(4)此外,在80C51系列芯片中,內(nèi)部程序存儲(chǔ)器除了ROM型和EPROM型外,還有E2PROM型,例如89C51就有4KBE2PROM。并且隨著集成技術(shù)的提高,80C51系列片內(nèi)程序存儲(chǔ)器的容量也越來(lái)越大,目前已有64KB的芯片了。另外,許多80C51芯片還具有程序存儲(chǔ)器保密機(jī)制,以防止應(yīng)用程序泄密或被復(fù)制。docin/sundae_meng80C51芯片邏輯結(jié)構(gòu)圖docin/sundae_meng1.CPUCPU即中央處理器的簡(jiǎn)稱,是單片機(jī)的核心部件,它完成各種運(yùn)算和控制操作,CPU由運(yùn)算器和控制器兩部分電路組成。(1)運(yùn)算器電路運(yùn)算器電路包括ALU(算術(shù)邏輯單元)、ACC(累加器)、B寄存器、狀態(tài)寄存器、暫存器1和暫存器2等部件,運(yùn)算器的功能是進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算。

docin/sundae_meng(2)控制器電路控制器電路包括程序計(jì)數(shù)器PC、PC加1寄存器、指令寄存器、指令譯碼器、數(shù)據(jù)指針DPTR、堆棧指針SP、緩沖器以及定時(shí)與控制電路等??刂齐娐吠瓿芍笓]控制工作,協(xié)調(diào)單片機(jī)各部分正常工作。2.存儲(chǔ)器

80C51單片機(jī)的存儲(chǔ)器包括數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器,其主要特點(diǎn)是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的尋址空間是相互獨(dú)立的,物理結(jié)構(gòu)也不相同。

內(nèi)部數(shù)據(jù)存儲(chǔ)器包括RAM和RAM地址寄存器,內(nèi)部數(shù)據(jù)存儲(chǔ)器一般指前128個(gè)單元,高128個(gè)用于專用寄存器。內(nèi)部程序存儲(chǔ)器包括ROM和ROM地址寄存器,80C51有4kROM存放程序。docin/sundae_meng3.定時(shí)器/計(jì)數(shù)器

MCS-51單片機(jī)片內(nèi)有兩個(gè)16位的定時(shí)/計(jì)數(shù)器,即定時(shí)器0和定時(shí)器1。它們可以用于定時(shí)控制、延時(shí)以及對(duì)外部事件的計(jì)數(shù)和檢測(cè)等。4.并行I/O口

80C51單片機(jī)共有4個(gè)8位的I/O口(P0、P1、P2和P3),每一條I/O線都能獨(dú)立地用作輸入或輸出。5.串行I/O口

80C51單片機(jī)具有一個(gè)采用通用異步工作方式的全雙工串行通信接口,可以同時(shí)發(fā)送和接收數(shù)據(jù)。docin/sundae_meng6.中斷控制系統(tǒng)

80C51共有5個(gè)中斷源,即外中斷2個(gè),定時(shí)/計(jì)數(shù)中斷2個(gè),串行中斷1個(gè)。7.時(shí)鐘電路

80C51芯片內(nèi)部有時(shí)鐘電路,但晶體振蕩器和微調(diào)電容必須外接。時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)鐘脈沖序列,振蕩器的頻率范圍為1.2MHz~33MHz,典型取值為6MHz。8.總線以上所有組成部分都是通過(guò)總線連接起來(lái),從而構(gòu)成一個(gè)完整的單片機(jī)。系統(tǒng)的地址信號(hào)、數(shù)據(jù)信號(hào)和控制信號(hào)都是通過(guò)總線傳送的,總線結(jié)構(gòu)減少了單片機(jī)的連線和引腳,提高了集成度和可靠性。

docin/sundae_meng2.2.280C51單片機(jī)的封裝與信號(hào)引腳

1.芯片封裝形式圖2.2為MCS-51系列單片機(jī)引腳圖及邏輯符號(hào),它們?yōu)闃?biāo)準(zhǔn)的40腳DIP封裝。docin/sundae_meng1.

輸入/輸出口線

P0口(P0.0~P0.7):該端口為漏極開路的8位準(zhǔn)雙向口,它為8位地址線和8位數(shù)據(jù)線的復(fù)用端口。

P1口(P1.0~P1.7):它是一個(gè)內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口,P1口的驅(qū)動(dòng)能力為4個(gè)LSTTL負(fù)載。

P2口(P2.0~P2.7):它為一個(gè)內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口,P2口的驅(qū)動(dòng)能力也為4個(gè)LSTTL負(fù)載。在訪問(wèn)外部程序存儲(chǔ)器時(shí),它作存儲(chǔ)器的高8位地址線。

P3口(P3.0~P3.7):P3口同樣是內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口,P3口除了作為一般的I/O口使用之外,其還具有特殊功能。2.芯片引腳介紹docin/sundae_meng地址鎖存允許信號(hào)ALE

系統(tǒng)擴(kuò)展時(shí),ALE用于控制地址鎖存器鎖存P0口輸出的低8位地址,從而實(shí)現(xiàn)數(shù)據(jù)與低位地址的復(fù)用。此外,ALE是以六分之一晶振頻率的固定頻率輸出的正脈沖,可作為外部時(shí)鐘或外部定時(shí)脈沖使用。docin/sundae_meng

外部程序存儲(chǔ)器讀選通信號(hào)

/PSEN是讀外部程序存儲(chǔ)器的選通信號(hào),低電平有效。訪問(wèn)程序存儲(chǔ)器控制信號(hào)當(dāng)為高電平時(shí),CPU執(zhí)行片內(nèi)程序存儲(chǔ)器指令,但當(dāng)PC中的值超過(guò)0FFFH時(shí),將自動(dòng)轉(zhuǎn)向執(zhí)行片外程序存儲(chǔ)器指令。當(dāng)為低電平時(shí),CPU只執(zhí)行片外程序存儲(chǔ)器指令。復(fù)位信號(hào)RST

該信號(hào)高電平有效,在輸入端保持兩個(gè)機(jī)器周期的高電平后,就可以完成復(fù)位操作。docin/sundae_meng

時(shí)鐘電路引腳XTAL1和XTAL2XTAL1:接外部晶振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,若使用外部時(shí)鐘時(shí),該引腳外部時(shí)鐘的輸入端。

XTAL2:接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出,若使用外部時(shí)鐘時(shí),該引腳必須懸空。電源引腳Vcc和VssVcc:電源端,接+5V。Vss:接地端。

docin/sundae_meng“復(fù)用”即給一些信號(hào)引腳賦予雙重功能。第二功能信號(hào)定義主要集中在P3口線中,另外再加上幾個(gè)其它信號(hào)線。

EPROM存儲(chǔ)器程序固化所需要的信號(hào)編程脈沖:30腳(ALE/PROG)編程電壓(25V):31腳(EA/Vpp)

備用電源引入備用電源是通過(guò)9腳(RST/VPD)引入的。當(dāng)電源發(fā)生故障,電壓降低到下限值時(shí),備用電源經(jīng)此端向內(nèi)部RAM提供電壓,以保護(hù)內(nèi)部RAM中的信息不丟失。3.芯片引腳的第二功能docin/sundae_mengP3口還具有第二功能,其引腳描述如表2.1。表2.1P3口線的第二功能口線特殊功能信號(hào)名稱P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2外部中斷0輸入口P3.3外部中斷1輸入口P3.4T0定時(shí)器0外部輸入口P3.5T1定時(shí)器1外部輸入口P3.6WR寫選通輸出口P3.7RD讀選通輸出口docin/sundae_meng(2)引腳復(fù)用不會(huì)引起混亂第一功能與第二功能是不同工作方式下的信號(hào),不會(huì)發(fā)生使用上的矛盾。說(shuō)明:P3口線先按需要優(yōu)先選用它的第二功能,剩下不用的才作為I/O口線使用。docin/sundae_meng

2.380C51單片機(jī)的內(nèi)部存儲(chǔ)器ROM:存放程序或者始終要保留的數(shù)據(jù)(表格數(shù)據(jù))。RAM:用來(lái)存放程序運(yùn)行中所需要的常數(shù)和變量,全局?jǐn)?shù)據(jù)也存放在RAM里。docin/sundae_meng

一般來(lái)說(shuō),單片機(jī)芯片的內(nèi)部包括數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器,先介紹數(shù)據(jù)存儲(chǔ)區(qū)。80C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器共256個(gè)單元,劃分為兩部分:低128單元區(qū)和高128單元區(qū),如圖2.3所示.圖2.380C51內(nèi)部數(shù)據(jù)存儲(chǔ)器配置圖docin/sundae_meng2.3.1內(nèi)部數(shù)據(jù)存儲(chǔ)器低128單元區(qū)

80C51的內(nèi)部數(shù)據(jù)存儲(chǔ)器低128單元區(qū),稱為內(nèi)部RAM,地址為00H-7FH.按用途劃分為三個(gè)區(qū)。1、寄存器區(qū)

內(nèi)部RAM的前32個(gè)單元作為通用(工作)寄存器使用,地址為00H~1FH。分為4組,組號(hào)依次為0、1、2、3,每組有8個(gè)寄存器:R7~R0。任一時(shí)刻,cpu只能使用其中的一組寄存器,稱為當(dāng)前工作寄存器組,由程序狀態(tài)字寄存器PSW中的RS1,RS0位的組合來(lái)決定。沒(méi)有選中的單元也可作為一般的數(shù)據(jù)緩存使用。系統(tǒng)上電復(fù)位時(shí),默認(rèn)選中第0組寄存器。

寄存器:1、可用8位地址尋址;2、在指令中既可用名稱表示,也可以使用單元地址表示。docin/sundae_meng2、位尋址區(qū)在工作寄存器后的16個(gè)數(shù)據(jù)單元(20H~2FH),它們既可以作為一般的數(shù)據(jù)單元使用,又可以按位對(duì)每個(gè)單元進(jìn)行操作,因此這16個(gè)數(shù)據(jù)單元又稱作位尋址區(qū)。位尋址區(qū)共計(jì)128位,其位地址為00H~7FH。

位地址的表示方式:1位地址的形式;

2存儲(chǔ)單元地址加位的形式。docin/sundae_meng3.用戶RAM區(qū)在內(nèi)部RAM的低128個(gè)單元中,剩余的80個(gè)數(shù)據(jù)單元即30H~7FH為真正的用戶RAM區(qū),對(duì)于這些區(qū)域,用戶只能以存儲(chǔ)單元的形式來(lái)使用,通常在應(yīng)用中也把堆棧開辟在這段區(qū)域。docin/sundae_meng2.3.2內(nèi)部數(shù)據(jù)存儲(chǔ)器高128單元區(qū)

內(nèi)部數(shù)據(jù)存儲(chǔ)器的高128個(gè)單元是為專用寄存器提供的,因此該區(qū)也稱作特殊功能寄存器區(qū)(SFR),它們主要用于存放控制命令、狀態(tài)或數(shù)據(jù)。除去程序計(jì)數(shù)器PC外,還有21個(gè)特殊功能寄存器,其地址空間為80H~FFH。這21個(gè)寄存器中有11個(gè)特殊功能寄存器具有位尋址能力,它們的字節(jié)地址剛好能被8整除。下面將對(duì)部分專用寄存器作簡(jiǎn)要介紹。docin/sundae_meng(1)累加器A(或ACC----ACCumulator)

累加器為8位寄存器,是程序中最常用的專用寄存器,在指令系統(tǒng)中累加器的助記符為A。存放操作數(shù)。大部分單操作數(shù)指令的操作取自累加器,很多雙操作數(shù)指令的一個(gè)操作數(shù)也取自累加器。運(yùn)算結(jié)果的暫存單元。加、減乘和除等算術(shù)運(yùn)算指令的運(yùn)算結(jié)果都存放在累加器A或AB寄存器中。數(shù)據(jù)傳送的中轉(zhuǎn)站。在變址尋址方式中累加器被作為變址寄存器使用在MCS-51中由于只有一個(gè)累加器,而單片機(jī)中的大部分?jǐn)?shù)據(jù)操作都是通過(guò)累加器進(jìn)行的,故累加器的使用是十分頻繁的。1.專用寄存器簡(jiǎn)介docin/sundae_meng(2)B寄存器(Bregister)

B寄存器為8位寄存器,主要用于乘除指令中。乘法指令的兩個(gè)操作數(shù)分別取自累加器A和寄存器B,其中B為乘數(shù),乘法結(jié)果的高8位存放于寄存器B中。除法指令中,被除數(shù)取自A,除數(shù)取自B,除法的結(jié)果商數(shù)存放于A,余數(shù)存放于B中。在其它指令中,B寄存器也可作為一般的數(shù)據(jù)單元來(lái)使用。(3)程序狀態(tài)字(PSW----ProgramStatusWord)程序狀態(tài)字是一個(gè)8位寄存器,用于寄存指令執(zhí)行的狀態(tài)信息。在狀態(tài)字中,有些位狀態(tài)是根據(jù)指令執(zhí)行結(jié)果,由硬件自動(dòng)完成設(shè)置的,而有些狀態(tài)位則必須通過(guò)軟件方法設(shè)定。PSW中的每個(gè)狀態(tài)位都可由軟件讀出,PSW的各位定義如下。

docin/sundae_meng

位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0RS1RS0OV/ PCY(PSW.7)-進(jìn)位標(biāo)志位在執(zhí)行某些算術(shù)和邏輯指令時(shí),可以被硬件或軟件置位或清零。在算術(shù)運(yùn)算中它可作為進(jìn)位標(biāo)志(加法進(jìn)位,減法借位,在位操作(在位傳送、位與、位或等)中作累加器使用,移位操作中用于構(gòu)成循環(huán)移位通路)docin/sundae_meng

位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0RS1RS0OV/ PAC(PSW.6)-輔助進(jìn)位標(biāo)志位(半進(jìn)位標(biāo)志位)進(jìn)行加法或減法操作時(shí),當(dāng)發(fā)生低四位向高四位進(jìn)位或借位時(shí),AC由硬件置位,否則AC位被置“0”。在進(jìn)行十進(jìn)制調(diào)整指令時(shí),將借助AC狀態(tài)進(jìn)行判斷。docin/sundae_meng

位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0RS1RS0OV/ PF0(PSW.6)-用戶標(biāo)志位該位為用戶定義的狀態(tài)標(biāo)記,用戶根據(jù)需要用軟件對(duì)其置位或清零,也可以用軟件測(cè)試F0來(lái)控制程序的跳轉(zhuǎn)。docin/sundae_meng

位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0RS1RS0OV/ PRS1和RS0(PSW.4和PSW.3)-寄存器組選擇位該兩位通過(guò)軟件置“0”或“1”來(lái)選擇當(dāng)前工作寄存器組。表2.3寄存器組選擇docin/sundae_meng

位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0RS1RS0OV/ POV(PSW.2)-溢出標(biāo)志位當(dāng)執(zhí)行算術(shù)指令時(shí),由硬件置位或清零來(lái)指示溢出狀態(tài)。加減運(yùn)算(有無(wú)符號(hào)數(shù)均可)中,OV=1表示加減運(yùn)算結(jié)果超出了累加器A所能表示的符號(hào)數(shù)有效范圍(-128~+127),即運(yùn)算結(jié)果是錯(cuò)誤的,反之,OV=0表示運(yùn)算正確,即無(wú)溢出產(chǎn)生。無(wú)符號(hào)數(shù)乘法指令MUL的執(zhí)行結(jié)果也會(huì)影響溢出標(biāo)志,若置于累加器A和寄存器B的兩個(gè)數(shù)的乘積超過(guò)了255,則OV=1,反之OV=0。由于乘積的高8位存放于B中,低8位存放于A中,OV=0則意味著只要從A中取得乘積即可,否則要從BA寄存器對(duì)中取得乘積結(jié)果。在除法運(yùn)算中,OV=1表示除數(shù)為0,除法不能進(jìn)行;反之,OV=0,除數(shù)不為0,除法可正常進(jìn)行。docin/sundae_meng

位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0RS1RS0OV/ PP(PSW.0)-奇偶標(biāo)志位每個(gè)指令周期由硬件來(lái)置位或清零用以表示累加器A中1的個(gè)數(shù)的奇偶性,若累加器中1的個(gè)數(shù)為奇數(shù)則P=1,否則P=0。docin/sundae_meng

(4)

數(shù)據(jù)指針DPTR

數(shù)據(jù)指針DPTR為一個(gè)16位的專用寄存器,其高位用DPH表示,其低位用DPL表示,它既可以作為一個(gè)16位的寄存器來(lái)使用,也可作為兩個(gè)8位的寄存器DPH和DPL使用。DPTR在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)既可用來(lái)存放16位地址,也可作地址指針使用。如MOVXDPTR,A。(5)I/O端口P0~P3P0~P3為四個(gè)8位的特殊功能寄存器,分別是四個(gè)并行I/O端口的鎖存器,當(dāng)I/O端口的某一位用作輸入時(shí),對(duì)應(yīng)的鎖存器必須先置“1”。

docin/sundae_meng(6)

定時(shí)器/計(jì)數(shù)器在MCS-51中,除8032/8052外都只有兩個(gè)16位定時(shí)器/計(jì)數(shù)器T0和T1,它們由兩個(gè)相互獨(dú)立的8位寄存器組成TH和TL,共有四個(gè)獨(dú)立的寄存器TH0、TL0、TH1和TL1,只可對(duì)這四個(gè)寄存器獨(dú)立尋址,而不能作為一個(gè)16位寄存器來(lái)尋址。

(7)

串行數(shù)據(jù)緩沖寄存器串行數(shù)據(jù)緩沖器SBUF用于存放將要發(fā)送或已接收的數(shù)據(jù),它由發(fā)送緩沖器和接收緩沖器組成,將要發(fā)送的數(shù)據(jù)被送入SBUF時(shí)進(jìn)入發(fā)送緩沖器,反之進(jìn)入接收緩沖器。

docin/sundae_meng

2.專用寄存器的單元尋址及位尋址docin/sundae_meng

說(shuō)明:對(duì)專用寄存器只能使用直接尋址方式,在指令中既可使用寄存器符號(hào)表示,也可使用寄存器地址表示。在21個(gè)可尋址的專用寄存器中,有11個(gè)寄存器是可以位尋址的。專用寄存器的83個(gè)可尋址位加上位尋址區(qū)的128個(gè)通用位,構(gòu)成位處理器的整個(gè)數(shù)據(jù)位存儲(chǔ)空間。docin/sundae_meng3.程序計(jì)數(shù)器PC(ProgramCounter)

PC是一個(gè)16位的計(jì)數(shù)器。其內(nèi)容為將要執(zhí)行的指令地址,尋址范圍達(dá)64KB。PC有自動(dòng)加1功能,以實(shí)現(xiàn)程序的順序執(zhí)行。PC沒(méi)有地址,是不可尋址的,因此用戶無(wú)法對(duì)它進(jìn)行讀寫。但在執(zhí)行轉(zhuǎn)移、調(diào)用、返回等指令時(shí)能自動(dòng)改變其內(nèi)容,以改變程序的執(zhí)行順序。docin/sundae_meng2.3.3堆棧操作堆棧是一種數(shù)據(jù)結(jié)構(gòu)。所謂堆棧,就是只允許在其一端進(jìn)行數(shù)據(jù)插入和數(shù)據(jù)刪除操作的線性表。數(shù)據(jù)寫入堆棧稱為入棧(PUSH)。數(shù)據(jù)從堆棧中讀出稱之出棧(POP)。數(shù)據(jù)操作規(guī)則:“后進(jìn)先出”LIFO。即先入棧的數(shù)據(jù)由于存放在棧的底部,因此后出棧;而后入棧的數(shù)據(jù)存放在棧的頂部,因此先出棧。1、堆棧的功用堆棧主要是為子程序調(diào)用和中斷操作而設(shè)立的。其具體功能有兩個(gè):保護(hù)斷點(diǎn)和保護(hù)現(xiàn)場(chǎng)。docin/sundae_meng2、堆棧的開辟堆棧只能開辟在芯片的內(nèi)部數(shù)據(jù)存儲(chǔ)器中,即所謂的內(nèi)堆棧形式。3、堆棧指針堆棧指針SP(StackPointer)的內(nèi)容是堆棧棧頂?shù)拇鎯?chǔ)單元地址。SP是一個(gè)8位寄存器。說(shuō)明:系統(tǒng)復(fù)位后,SP的內(nèi)容為07H,但由于堆棧最好在內(nèi)部RAM的30H~7FH單元中開辟,所以在程序設(shè)計(jì)時(shí)應(yīng)注意把SP值初始化為30H以后。docin/sundae_meng

圖2.4兩種不同類型的堆棧結(jié)構(gòu)4、堆棧類型80c51使用向上生長(zhǎng)型堆棧,操作規(guī)則如下:進(jìn)棧操作:先SP加1,后寫入數(shù)據(jù)。出棧操作:先讀出數(shù)據(jù),后SP減1。docin/sundae_meng5.堆棧使用方式堆棧的使用有兩種方式。自動(dòng)方式:即在調(diào)用子程序或中斷時(shí),返回地址(斷點(diǎn))自動(dòng)進(jìn)棧。程序返回時(shí),斷點(diǎn)再自動(dòng)彈回PC。指令方式:即使用專用的堆棧操作指令,進(jìn)行進(jìn)出棧操作。其進(jìn)棧指令為PUSH,出棧指令為POP。例如保護(hù)現(xiàn)場(chǎng)就是指令方式進(jìn)行操作。docin/sundae_meng2.3.4內(nèi)部程序存儲(chǔ)器在MCS-51系列中,程序存儲(chǔ)器被用來(lái)存放程序、常數(shù)或表格等。在80C51中,其片內(nèi)有4K字節(jié)的ROM存儲(chǔ)單元,地址為0000H~0FFFH。87C51有4K字節(jié)的EPROM,而80C52和87C52則有8K字節(jié)的片內(nèi)存儲(chǔ)器。80C31和80C32無(wú)片內(nèi)程序存儲(chǔ)器,所以片內(nèi)程序存儲(chǔ)器的有無(wú)是區(qū)分芯片的主要標(biāo)志。

MCS-51系列設(shè)置信號(hào)引腳,以其電平狀態(tài)來(lái)區(qū)分程序存儲(chǔ)器的有無(wú)。無(wú)片內(nèi)程序存儲(chǔ)器,接地,有片內(nèi)程序存儲(chǔ)器,接高電平。

docin/sundae_meng如何工作:程序計(jì)數(shù)器(PC),也叫PC指針,是取指地址。上電復(fù)位后內(nèi)容為0000H,即從0000H地址的指令順序執(zhí)行,最大為FFFFH,所以程序空間為64K。64K空間分為片內(nèi)ROM和片外ROM,但統(tǒng)一編址。

docin/sundae_meng

在64K的程序存儲(chǔ)器中,有一組保留單元0000H~002AH,其中0000H~0002H為系統(tǒng)的啟動(dòng)單元。剩下0003H~002AH均勻分為5個(gè)特殊的單元,存放5種中斷源的中斷地址區(qū):

外部中斷0入口地址 0003H定時(shí)器0中斷入口地址 000BH外部中斷1入口地址 0013H定時(shí)器1中斷入口地址 001BH串行口中斷入口地址0023Hdocin/sundae_meng80C51單片機(jī)具有4個(gè)8位雙向并行端口(P0~P3),共32根1/O口線。每一根1/O口線都能獨(dú)立地用作輸入或輸出。這4個(gè)端口是單片機(jī)與外部設(shè)備進(jìn)行信息(數(shù)據(jù)、地址、控制信號(hào))交換的輸人或輸出通道??梢园醋止?jié)尋址外,還可以按位尋址。2.480C51單片機(jī)的并行I/O口docin/sundae_meng2.4.1P0口邏輯結(jié)構(gòu)

P0口地址為80H,位地址為80H-87H。P0口各位口線的邏輯結(jié)構(gòu),由一個(gè)鎖存器、兩個(gè)三態(tài)輸入緩沖器、一個(gè)多路復(fù)用開關(guān)以及控制電路和驅(qū)動(dòng)電路等組成。

P0口可以作為輸入輸出口,在實(shí)際應(yīng)用中它通常作為地址/數(shù)據(jù)復(fù)用總線。在訪問(wèn)外部存儲(chǔ)器時(shí),P0口為真正的雙向口.docin/sundae_meng2.4.2P1口邏輯結(jié)構(gòu)

P1口地址為90H,位地址為90H-97H。只能作為通用數(shù)據(jù)I/O口使用,電路邏輯如下圖:P1口是一個(gè)準(zhǔn)雙向口,通常作為I/O口使用,由于在其輸出端接有上拉電阻,故可以直接輸出而無(wú)需外接上拉電阻。docin/sundae_meng2.4.3P2口邏輯結(jié)構(gòu)

P2口地址為A0H,位地址為A0H-A7H。 既可做通用I/O口,又可作系統(tǒng)高位地址線,某一位的內(nèi)部結(jié)構(gòu)與P0類似。docin/sundae_meng2.4.4P3口邏輯結(jié)構(gòu)

P3口地址為B0H,位地址為B0H-B7H。 雖然可做通用I/O口,但在實(shí)際應(yīng)用中,它的第二功能信號(hào)更為重要,某一位的內(nèi)部結(jié)構(gòu)如下圖:docin/sundae_meng2.580C51單片機(jī)的時(shí)鐘與定時(shí)

單片機(jī)本身是一個(gè)復(fù)雜的同步時(shí)序系統(tǒng),為保證同步工作方式的實(shí)現(xiàn),單片機(jī)必須有時(shí)鐘信號(hào),以使其系統(tǒng)在時(shí)鐘信號(hào)的控制下按時(shí)序協(xié)調(diào)工作。時(shí)序是指令執(zhí)行過(guò)程中各信號(hào)之間的相互時(shí)間關(guān)系。

2.5.1時(shí)鐘電路單片機(jī)的時(shí)鐘電路由振蕩電路和分頻電路組成。

1.振蕩電路在80C51芯片內(nèi)部有一個(gè)高增益反相放大器,其輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2,在芯片的外部通過(guò)這兩個(gè)引腳跨接晶體振蕩器和微調(diào)電容,形成反饋電路,就構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器。如圖2.9所示。docin/sundae_meng

圖2.980C51單片機(jī)的振蕩電路

電路中的電容一般取30pF左右,而晶體的振蕩頻率范圍通常是1.2MHz~33MHz。docin/sundae_meng2.分頻電路振蕩電路產(chǎn)生的振蕩信號(hào)并不直接為單片機(jī)所用,要進(jìn)行分頻,以得到單片機(jī)各種相關(guān)的時(shí)鐘信號(hào)。docin/sundae_meng3.晶振頻率1.2~33MHz。晶振頻率高,系統(tǒng)時(shí)鐘頻率就高,單片機(jī)運(yùn)行速度就快。

4.從外部引入脈沖信號(hào)驅(qū)動(dòng)時(shí)鐘電路除了由振蕩電路產(chǎn)生高頻振蕩信號(hào)外,還可從外部脈沖源直接引入。在由多片單片機(jī)組成的系統(tǒng)中,為了各單片機(jī)之間時(shí)鐘信號(hào)的同步,引入唯一的外部脈沖信號(hào)作為各單片機(jī)的振蕩脈沖。

docin/sundae_meng2.5.2定時(shí)單位

時(shí)序的定時(shí)單位共有4個(gè),從小到大依次是:拍節(jié)、狀態(tài)、機(jī)器周期和指令周期。1.振蕩周期振蕩周期指為單片機(jī)提供定時(shí)信號(hào)的振蕩源的周期或外部輸入時(shí)鐘的周期,振蕩周期即為拍節(jié)(P)。2.時(shí)鐘周期時(shí)鐘周期又稱作狀態(tài)周期或狀態(tài)時(shí)間S,它是振蕩周期的兩倍,它分為P1節(jié)拍和P2節(jié)拍,通常在P1節(jié)拍完成算術(shù)邏輯操作,在P2節(jié)拍完成內(nèi)部寄存器之間的傳送操作。docin/sundae_meng3.機(jī)器周期一個(gè)機(jī)器周期由6個(gè)狀態(tài)組成,如果把一條指令的執(zhí)行過(guò)程分作幾個(gè)基本操作,則將完成一個(gè)基本操作所需的時(shí)間稱作機(jī)器周期。單片機(jī)的單周期指令執(zhí)行時(shí)間就為一個(gè)機(jī)器周期。4.指令周期指令周期是最大的時(shí)序單位,即執(zhí)行一條指令所占用的全部時(shí)間,通常為1個(gè)、2個(gè)、4個(gè)機(jī)器周期。練習(xí)1、一個(gè)機(jī)器周期=

個(gè)振蕩周期=

個(gè)時(shí)鐘周期。2、在MCS-51單片機(jī)中,如果采用6MHz晶振,1個(gè)機(jī)器周期為

。docin/sundae_meng2.680C51單片機(jī)的系統(tǒng)復(fù)位

復(fù)位是單片機(jī)的硬件初始化操作。復(fù)位后,單片機(jī)才能開始正常工作。RST引腳是復(fù)位信號(hào)的輸入端,復(fù)位信號(hào)是高電平有效,其有效時(shí)間應(yīng)持續(xù)2個(gè)機(jī)器周期以上。2.6.1復(fù)位方式與初始化狀

1.復(fù)位方式(1)加電復(fù)位:通過(guò)專用的復(fù)位電路產(chǎn)生復(fù)位信號(hào)。開機(jī)加電時(shí),系統(tǒng)自動(dòng)完成(2)手動(dòng)復(fù)位:一次重新啟動(dòng)操作。(死機(jī)、死循環(huán)或程序“跑飛”)

在實(shí)際應(yīng)用中,總是把加電復(fù)位和手動(dòng)復(fù)位結(jié)合在一起,形成一個(gè)綜合的復(fù)位電路。

docin/sundae_meng2.初始化狀態(tài)

復(fù)位后的片內(nèi)狀態(tài)為ALE信號(hào)變?yōu)闊o(wú)效狀態(tài),變?yōu)闊o(wú)效狀態(tài),ALE=0,=1.docin/sundae_meng2.6.2復(fù)位電路1.復(fù)位電路概述使用過(guò)的復(fù)位電路:積分電路型、微分電路型、比較型和看門狗型。常用前兩種。(1)積分電路型用于產(chǎn)生低電平復(fù)位信號(hào),見(jiàn)下圖。

docin/sundae_meng

(2)微分電路型用于產(chǎn)生高電平復(fù)位信號(hào),見(jiàn)下圖。docin/sundae_meng

2.80C51基本復(fù)位電路按健手動(dòng)復(fù)位有電平方式和脈沖方式兩種。上電自動(dòng)復(fù)位是通

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論