第二章單片機(jī)結(jié)構(gòu)_第1頁
第二章單片機(jī)結(jié)構(gòu)_第2頁
第二章單片機(jī)結(jié)構(gòu)_第3頁
第二章單片機(jī)結(jié)構(gòu)_第4頁
第二章單片機(jī)結(jié)構(gòu)_第5頁
已閱讀5頁,還剩73頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第2章MCS-51單片機(jī)的硬件結(jié)構(gòu)和原理

2.1MCS-51單片機(jī)的基本結(jié)構(gòu)

2.2CPU2.3MCS-51單片機(jī)的引腳2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.5MCS-51單片機(jī)的存儲(chǔ)器結(jié)構(gòu)

2.6并行I/O口

知識(shí)點(diǎn)1)

理解MCS-51單片機(jī)內(nèi)部硬件運(yùn)行機(jī)制2)掌握特殊功能寄存器的定義及對(duì)應(yīng)的硬件關(guān)系3)掌握機(jī)器周期的概念4)熟練掌握存儲(chǔ)器的架構(gòu)及特點(diǎn)學(xué)習(xí)目標(biāo)

地址/數(shù)據(jù)總線端口I/O線振蕩與定時(shí)電路4KB內(nèi)部程

序存儲(chǔ)器128B21SFRRAM2個(gè)16位定時(shí)器/計(jì)數(shù)器CPU存貯器擴(kuò)展控制并行端口串行端口外部中斷信號(hào)控制信號(hào)串行輸入串行輸出時(shí)鐘源計(jì)數(shù)信號(hào)內(nèi)部總線2.1MCS-51單片機(jī)的結(jié)構(gòu)2.1.1MCS-51單片機(jī)的結(jié)構(gòu)

單片機(jī)是在一塊超大規(guī)模集成電路芯片上,集成了CPU、存儲(chǔ)器(RAM、ROM)、定時(shí)器/計(jì)數(shù)器、中斷控制、輸入/輸出接口、系統(tǒng)時(shí)鐘和系統(tǒng)總線等電路的微型計(jì)算機(jī)。89C51=(8位)CPU+4KBROM+128BRAM+(2×16)T/C+(4×8)I/O+1個(gè)UART+5個(gè)INTINTELMCS-51系列單片機(jī)一覽表2.1.2MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)

2.1MCS-51單片機(jī)的結(jié)構(gòu)子序列片內(nèi)ROM形式片內(nèi)ROM容量片內(nèi)RAM容量IO特性中斷源無ROM計(jì)數(shù)器并行口串行口INTEL8031√

0128B24×815INTEL80C51

√4K128B24×815ATMEL89C51

√4K128B24×815SiliconLabsC8051F310

√16K1280B42911451單片機(jī)主要內(nèi)部資源的學(xué)習(xí)安排

中央處理器CPU——第2章程序存儲(chǔ)器ROM——第2章數(shù)據(jù)存儲(chǔ)器RAM——第2章并行I/O口——第2、5、7章中斷INT——第6章定時(shí)器/計(jì)數(shù)器T/C——第8章全雙工串行口UART——第9章2.1MCS-51單片機(jī)的結(jié)構(gòu)2.1MCS-51單片機(jī)結(jié)構(gòu)2.2CPU

2.3MCS-51的引腳2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.5MCS-51單片機(jī)的存儲(chǔ)器結(jié)構(gòu)2.6并行I/O口CPU=控制器

+運(yùn)算器2.2CPU(CentralProcessingUnit)控制器的用途:統(tǒng)一指揮和控制各單元協(xié)調(diào)工作控制器的任務(wù):從ROM中取出指令→譯碼→執(zhí)行指令控制器的組成:程序計(jì)數(shù)器PC、數(shù)據(jù)指針寄存器DPTR、…2.2CPU(CentralProcessingUnit)運(yùn)算器的用途:對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯操作運(yùn)算器的任務(wù):計(jì)算緩沖器內(nèi)容→暫存→修改運(yùn)行標(biāo)志運(yùn)算器的組成:算術(shù)邏輯單元ALU、累加器ACC、程序狀態(tài)字寄存器PSW、B寄存器、暫存器1、暫存器2…2.2CPU(CentralProcessingUnit)2.2CPU(CentralProcessingUnit)2.2.1運(yùn)算器

算術(shù)邏輯部件ALU(ArithmeticLogicUnit)累加器ACC

B寄存器程序狀態(tài)字寄存器PSW(ProgramStatusWord)暫存寄存器…..一、算術(shù)邏輯部件ALU

組成:加法器和其他電路組成主要功能:算術(shù)運(yùn)算和邏輯運(yùn)算2.2CPU(CentralProcessingUnit)二、累加器(ACCUMULATER——A)具有8位字長(zhǎng)是利用率最高的寄存器具有可被指令修改功能——存放操作數(shù)或中間運(yùn)算結(jié)果的寄存器2.2CPU(CentralProcessingUnit)三、寄存器B

一般用于乘、除法指令運(yùn)算前:乘數(shù)/除數(shù)運(yùn)算后:乘積的高位字節(jié)/商的余數(shù)四、程序狀態(tài)字寄存器(ProgramStateWord——PSW)

具有8位字長(zhǎng)各位都具有特殊含義狀態(tài)信息通常自動(dòng)形成,

但也可用指令修改——存放程序運(yùn)行過程中的各種狀態(tài)信息的寄存器2.2CPU(CentralProcessingUnit)CY(PSW.7)——進(jìn)位標(biāo)志在進(jìn)行加或減運(yùn)算時(shí),如果操作結(jié)果最高位有進(jìn)位或借位時(shí),CY由硬件置“1”,否則清“0”。10010011+11110000

————————CY=110000011進(jìn)位標(biāo)志位CYCYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1P位7位6位5位4位3位2位1位0CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1PPSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位7位6位5位4位3位2位1位0用途:1、根據(jù)CY判斷有無進(jìn)

位或借位;

2、在位操作中CY可作

為位累加器用。舉例2.2CPU(CentralProcessingUnit)

AC(PSW.6)——半進(jìn)位標(biāo)志在進(jìn)行加或減運(yùn)算時(shí),如果操作結(jié)果的低半字節(jié)向高半字節(jié)產(chǎn)生進(jìn)位或借位時(shí),將由硬件置“1”,否則清“0”。01001111+10100001

————————AC=111110000半進(jìn)位CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1P位7位6位5位4位3位2位1位0CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1PPSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位7位6位5位4位3位2位1位0舉例用途:1、根據(jù)AC判斷加減運(yùn)算時(shí)

有無半進(jìn)位或半借位;2、在BCD碼調(diào)整運(yùn)算中要

用到AC標(biāo)志2.2CPU(CentralProcessingUnit)F0(PSW.5)和F1(PSW.1)——用戶標(biāo)志位可作為用戶自行定義的一個(gè)狀態(tài)標(biāo)記

舉例定義F0為安全門的狀態(tài),F(xiàn)0=0→開;F0=1→閉定義F1為指示燈的狀態(tài),F(xiàn)1=0→開;F1=1→閉CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1P位7位6位5位4位3位2位1位0CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1PPSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位7位6位5位4位3位2位1位0用途:在程序運(yùn)行中判斷門或燈的工作狀態(tài)2.2CPU(CentralProcessingUnit)RS1和

RS0(PSW.4和

PSW.3)——工作寄存器組指針用途:用于指定CPU的當(dāng)前工作寄存器組CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1P位7位6位5位4位3位2位1位0CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1PPSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位7位6位5位4位3位2位1位02.2CPU(CentralProcessingUnit)OV(PSW.2)——溢出標(biāo)志在有符號(hào)數(shù)加減運(yùn)算或無符號(hào)數(shù)乘除運(yùn)算中,若有異常結(jié)果,OV硬件置1,否則硬件清0。CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1P位7位6位5位4位3位2位1位0CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1PPSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位7位6位5位4位3位2位1位0用途:判斷運(yùn)算的結(jié)果是否正確,正確=0;出錯(cuò)=12.2CPU(CentralProcessingUnit)OV=C6YC7Y=1

0=1正數(shù)的補(bǔ)碼是它本身,負(fù)數(shù)的補(bǔ)碼是除符號(hào)位外每位求反,然后末尾加111111011(-5)

+11110000(-16)

——————————————CY=111101011→(-21)D7有進(jìn)位

D6有進(jìn)位OV=C6YC7Y=1

1=0→運(yùn)算出錯(cuò)→運(yùn)算正確00011001(+25)

+01111101(+105)

——————————————CY=010010110→(-106)D6有進(jìn)位D7無進(jìn)位舉例舉例2.2CPU(CentralProcessingUnit)P(PSW.0)——奇偶標(biāo)志位該位始終跟蹤累加器A中含“1”個(gè)數(shù)的奇偶性如果A中有奇數(shù)個(gè)“1”,則P置“1”,否則置“0”舉例若A=10011111,則P=0

若A=11000001,則P=1CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1P位7位6位5位4位3位2位1位0CYACF0RS1RS0OVF1PCYACF0RS1RS0OVF1PPSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位7位6位5位4位3位2位1位0用途:用于串行通訊中的數(shù)據(jù)校驗(yàn),判斷是否存在傳輸錯(cuò)誤。2.2CPU(CentralProcessingUnit)一、程序計(jì)數(shù)器(ProgramCounter——PC)——指向ROM存儲(chǔ)單元的地址指針(引導(dǎo)程序運(yùn)行)

0000HPC指針……XxxxxxxxXxxxxxxxXxxxxxxxXxxxxxxxXxxxxxxxROM0000H0001H0002H0003H0004HFFFFH永遠(yuǎn)存放著指向下一條指令的16位地址具有16位字長(zhǎng)→可尋址范圍216(=65536字節(jié)=64KB)具有自動(dòng)加“1”功能→順序運(yùn)行程序功能具有可被指令修改功能→跳轉(zhuǎn)運(yùn)行程序功能復(fù)位時(shí),PC初值=0000H→復(fù)位后程序從0000H開始運(yùn)行2.2CPU(CentralProcessingUnit)2.2.2控制器二、數(shù)據(jù)指針寄存器(DataPointer——DPTR)具有16位字長(zhǎng),可尋址范圍216(64KB)具有可被指令修改功能→可變更數(shù)據(jù)地址可拆為2個(gè)8位的獨(dú)立寄存器DPL和DPH……0000H0001H0002H0003H0004HFFFFH35H77HF4H94H9EHDPTR指針……xxHxxHxxHxxHxxHROMRAMDPLDPH0000H0001H0002H0003H0004HFFFFH——指向ROM或RAM存儲(chǔ)單元的地址指針(引導(dǎo)數(shù)據(jù)傳送)

2.2CPU(CentralProcessingUnit)三、堆棧指針SP(StackPointer)

MCS-51單片機(jī)的堆棧,是在片內(nèi)RAM中開辟的一個(gè)專用區(qū),用來暫時(shí)存放數(shù)據(jù)或存放返回地址,并按照“后進(jìn)先出”(LIFO)的原則進(jìn)行操作。

2.2CPU(CentralProcessingUnit)堆棧的一端是固定的,稱為棧底;另一端是浮動(dòng)的,稱為棧頂。最后進(jìn)棧的元素所在地址就是棧頂。2.2CPU(CentralProcessingUnit)SP+108HSP+109HSP+10AHXYZ08H09HSP-10AHXYZSP-1SP-107H堆棧指針SP(StackPointer)是一個(gè)8位寄存器,用它存放棧頂?shù)牡刂?。進(jìn)棧時(shí),SP首先自動(dòng)加1,將數(shù)據(jù)壓入SP所指示的地址單元中;出棧時(shí),將SP所指示的地址單元中的數(shù)據(jù)彈出,然后SP自動(dòng)減1。SP總是指向棧頂。2.2CPU(CentralProcessingUnit)系統(tǒng)復(fù)位后,SP初始化為07H,

第一個(gè)壓入堆棧的數(shù)據(jù)存放到08H單元。08H-1FH單元為工作寄存器組1-3所在地址單元,用戶在編程時(shí)最好把SP的值改為1FH或更大值,以免堆棧區(qū)與要使用的工作寄存器區(qū)互相沖突。通常指定內(nèi)部數(shù)據(jù)存儲(chǔ)器地址07H~7FH中的一部分連續(xù)存儲(chǔ)區(qū)作為堆棧。2.1MCS-51單片機(jī)結(jié)構(gòu)2.2CPU

2.3MCS-51的引腳2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)2.6并行I/O口51系列單片機(jī)一般采用40只引腳的雙列直插式(DIP——DualIn-linePackage)封裝結(jié)構(gòu)2.3.1MCS-51引腳及功能

2.3MCS-51引腳除DIP封裝外,51單片機(jī)還采用44只引腳的方形扁平(QFP

——QuadFlatPackage)封裝方式。2.3MCS-51引腳電源及晶振引腳(共4只)控制引腳(共4只)端口引腳(共32只)三類2.3MCS-51引腳(1)電源及晶振引腳VCC(40腳):+Vcc電源引腳VSS(20腳):接地引腳XTAL1(19腳);外接晶振引腳(內(nèi)置放大器輸入端)XTAL2(18腳):外接晶振引腳(內(nèi)置放大器輸出端)89C51Vcc80C512040Vss+Vcc89C512.3MCS-51引腳(2)控制引腳(gd)

RST/VPD

(9):復(fù)位/備用電源引腳ALE/PROG

(30):地址鎖存使能輸出/編程脈沖輸入PSEN

(29):輸出訪問片外程序存儲(chǔ)器讀選通信號(hào)EA/VPP

(31):外部ROM允許訪問/編程電源輸入20μF8K10k89C512.3MCS-51引腳(3)端口引腳P0.0~P0.7(39~32腳)——P0口P1.0~P1.7(1~8腳)——P1口P2.0~P2.7(21~28腳)——P2口P3.0~P3.7(10~17腳)——P3口8只/組×4組=32只引腳P0口~P3口是單片機(jī)對(duì)外聯(lián)絡(luò)的重要通道2.3MCS-51引腳51單片機(jī)有32只I/O引腳,分屬于4個(gè)端口(P0~P3)。由于工作任務(wù)不同,4個(gè)端口的內(nèi)部結(jié)構(gòu)也不同。了解4類端口的內(nèi)部結(jié)構(gòu)對(duì)于正確使用這些I/O端口非常重要。2.3MCS-51引腳2.1MCS-51單片機(jī)結(jié)構(gòu)2.2CPU

2.3MCS-51的引腳2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)2.6并行I/O口復(fù)位——使單片機(jī)恢復(fù)原始默認(rèn)狀態(tài)的操作。2.4.1復(fù)位與復(fù)位電路

2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序寄存器內(nèi)容寄存器內(nèi)容PC0000HTMOD00HA00HTCON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HSCON00HP0~P3FFHSBUF××××××××BIP×××00000BPCON0×××0000B(CHMOS)IE0××00000B0×××××××B(HMOS)復(fù)位條件在RST/VPD引腳端出現(xiàn)≥10ms要求的高電平狀態(tài)。復(fù)位方式

上電復(fù)位復(fù)合復(fù)位2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序按鍵復(fù)位CPU的微操作必須在統(tǒng)一的時(shí)鐘控制下才能正確進(jìn)行,2.4.2時(shí)鐘電路

微調(diào)電容:C1、C2≈20pF晶振:石英晶體封裝MCS-51的時(shí)鐘頻率為0~40MHz可調(diào)外部時(shí)鐘方式需要通過單片機(jī)引腳接入晶振元件或外部時(shí)鐘內(nèi)部時(shí)鐘方式2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序——CPU在執(zhí)行指令時(shí)所需控制信號(hào)的時(shí)間順序。1、用于片內(nèi)各功能部件的控制(不作介紹)2、用于片外存儲(chǔ)器或I/O端口的控制(第5、10章介紹)51單片機(jī)訪問外部RAM時(shí)序

2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.4.3單片機(jī)時(shí)序

(1)時(shí)序的概念時(shí)序是指按照時(shí)間順序顯示的對(duì)象(或引腳、事件、信息)序列關(guān)系。時(shí)序可以用狀態(tài)方程、狀態(tài)圖、狀態(tài)表和時(shí)序圖4種方法表示,其中時(shí)序圖最為常用。時(shí)序圖亦稱為波形圖或序列圖,縱坐標(biāo)表示不同對(duì)象的電平,橫坐標(biāo)表示時(shí)間(從左往右為時(shí)間正向軸)。2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序(1)最左邊是引腳的標(biāo)識(shí),表示該圖反映了RS、R/W、E、D0~D7四類引腳的時(shí)序關(guān)系。(2)交叉線部分表示電平的變化,如高電平和低電平。(3)封閉菱形部分表示數(shù)據(jù)有效范圍(偶爾使用的ValidData也能說明了這點(diǎn))。(4)水平方向的尺寸線表示持續(xù)時(shí)間的長(zhǎng)度。LCD讀寫時(shí)序圖2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序時(shí)序的定時(shí)單位:時(shí)鐘周期(或節(jié)拍)P、狀態(tài)周期S、機(jī)器周期、指令周期振蕩周期:為單片機(jī)提供定時(shí)信號(hào)的振蕩源的周期.1個(gè)狀態(tài)周期(S)(時(shí)鐘周期)=2個(gè)振蕩周期=2個(gè)節(jié)拍(P)1個(gè)機(jī)器周期=6個(gè)狀態(tài)周期(S)=12個(gè)振蕩周期=12個(gè)節(jié)拍(P)1個(gè)指令周期約為1~4個(gè)機(jī)器周期2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序振蕩周期振蕩周期是指為單片機(jī)提供定時(shí)信號(hào)的振蕩源的周期。時(shí)鐘周期時(shí)鐘周期又稱為狀態(tài)周期,時(shí)鐘周期是振蕩周期的2倍,被分成為P1節(jié)拍和P2節(jié)拍。在每個(gè)時(shí)鐘周期的前半周期內(nèi),P1信號(hào)有效,通常完成算術(shù)邏輯操作;在后半周期內(nèi),P2信號(hào)有效,完成內(nèi)部寄存器之間的傳送操作。2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序機(jī)器周期CPU執(zhí)行一條指令的過程可以劃分為若干個(gè)階段,每一階段完成某一項(xiàng)基本操作,例如取指令、存儲(chǔ)器讀、存儲(chǔ)器寫等。完成一個(gè)基本操作所需要的時(shí)間稱為機(jī)器周期。MCS-51的一個(gè)機(jī)器周期由6個(gè)狀態(tài)組成,即6個(gè)時(shí)鐘周期,包含12個(gè)振蕩周期,依次表示為S1P1、S1P2、S2P1、S2P2、…、S6P1、S6P2,每個(gè)節(jié)拍持續(xù)一個(gè)振蕩周期,每個(gè)狀態(tài)持續(xù)兩個(gè)振蕩周期。2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序指令周期CPU執(zhí)行一條指令所需要的時(shí)間稱為指令周期。一個(gè)指令周期一般由若干個(gè)機(jī)器周期組成。不同的指令,所需要的機(jī)器周期數(shù)不同,含有1-4個(gè)機(jī)器周期。例如,假定MCS-5l單片機(jī)外接石英晶體的頻率為12MHz,則振蕩周期為1/12us,時(shí)鐘周期為1/6us,機(jī)器周期為1us,指令周期為1-4us。2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序在MCS-51指令系統(tǒng)中,指令長(zhǎng)度為1-4個(gè)字節(jié);

單字節(jié)和雙字節(jié)指令都可能是單周期和雙周期的,

三字節(jié)指令都是雙周期的乘法和除法指令占用四個(gè)機(jī)器周期。2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序單字節(jié)、單周期指令,例如:

INCA(機(jī)器碼:04)2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序雙字節(jié)、單周期指令,例如:

ADDA,#03H(機(jī)器碼:2403)2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序單字節(jié)、雙周期指令,例如:

INCDPTR(機(jī)器碼:A3)2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.1MCS-51單片機(jī)結(jié)構(gòu)2.2CPU

2.3MCS-51的引腳2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)2.6并行I/O口2.5.1MCS-51的存儲(chǔ)器結(jié)構(gòu)(zf)

一、

存儲(chǔ)器劃分方法計(jì)算機(jī)存儲(chǔ)器地址空間的兩種結(jié)構(gòu)形式:普林斯頓結(jié)構(gòu)和哈佛結(jié)構(gòu)。RAM和ROM統(tǒng)一編址

RAM和ROM分別編址

2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)51系列單片機(jī)采用哈佛結(jié)構(gòu),共有4個(gè)物理存儲(chǔ)空間程序存儲(chǔ)器ROM數(shù)據(jù)存儲(chǔ)器RAM片內(nèi)RAM、片內(nèi)ROM、片外RAM、片外ROM2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)二、

程序存儲(chǔ)器(ROM)作用:存放程序、表格或常數(shù),具有非易失性特點(diǎn):片內(nèi)ROM與片外ROM統(tǒng)一編址(>4KB時(shí)用片外ROM)EA/VPP

(31引腳):外部ROM允許訪問/編程電源輸入2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)a)同時(shí)使用片內(nèi)和片外ROMb)ROM地址分布

當(dāng)/EA引腳接高電平(開關(guān)接A點(diǎn))時(shí),4KB以內(nèi)的地址在片內(nèi)ROM,大于4KB的地址在片外ROM中(圖中折線),兩者共同構(gòu)成64KB空間;當(dāng)/EA引腳接低電平(開關(guān)接B點(diǎn))時(shí),片內(nèi)ROM被禁用,全部64KB地址都在片外ROM中(圖中直線)。由于片內(nèi)外ROM是統(tǒng)一編址的,只能算1個(gè)邏輯存儲(chǔ)空間。2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)片內(nèi)RAM和片外RAM是獨(dú)立的,而片內(nèi)ROM可與片外ROM統(tǒng)一編址(gd)51單片機(jī)的4個(gè)物理存儲(chǔ)空間相當(dāng)于3個(gè)邏輯存儲(chǔ)空間片內(nèi)RAM片外RAM2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)訪問這幾個(gè)不同的邏輯空間時(shí),采用不同的指令片內(nèi)外程序存儲(chǔ)器空間----MOVC片內(nèi)數(shù)據(jù)存儲(chǔ)器空間和SFR----MOV片外數(shù)據(jù)存儲(chǔ)器地址空間----MOVX三、

片內(nèi)數(shù)據(jù)存儲(chǔ)器(RAM)作用:存放程序運(yùn)行結(jié)果字長(zhǎng):8位數(shù)量:128B+128B(89C51)低128B(00H~7FH)為普通RAM區(qū)高128B(80H~FFH)為特殊功能寄存器區(qū)2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)(1)低128字節(jié)的區(qū)域

①工作寄存器區(qū)(00H~1FH)

②可位尋址區(qū)(20H~2FH)

③用戶RAM區(qū)(30H~7FH)2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)①區(qū)共有32個(gè)存儲(chǔ)單元;每個(gè)單元都有1個(gè)8位地址(字節(jié)地址)

32個(gè)單元分為4組(第0~第3組)

CPU只能選一組為當(dāng)前工作寄存器組(R0~R7)當(dāng)前工作寄存器組取決于PSW的設(shè)置CPU復(fù)位后RS1和RS0默認(rèn)值為0,即默認(rèn)第0組為當(dāng)前工作寄存器組。2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)②區(qū)共有16個(gè)存儲(chǔ)單元;每個(gè)單元都有一個(gè)字節(jié)地址每個(gè)字節(jié)的8個(gè)不同的位都有位地址②區(qū)共有128個(gè)位地址②區(qū)可以字節(jié)地址和位地址兩種方式存取數(shù)據(jù)。2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)寄存器區(qū)00H~1FH位尋址區(qū)20H~2FH通用RAM數(shù)據(jù)區(qū)30H~7FHR0R1R2R3R4R5R6R7寄存器0組寄存器1組寄存器2組寄存器3組00H~07H08H~0FH10H~17H18H~1FH07060504030201000F0E0D0C0B0A090817161514131211101F1E1D1C1B1A191867666564636261606F6E6D6C6B6A696877767574737271707F7E7D7C7B7A79782.5MCS-51的存儲(chǔ)器結(jié)構(gòu)③區(qū)共有80個(gè)存儲(chǔ)單元;每個(gè)單元都有一個(gè)字節(jié)地址,但沒有位地址,也沒有寄存器名。此區(qū)可作為堆棧區(qū)和中間數(shù)據(jù)存儲(chǔ)區(qū)使用——用戶RAM區(qū)【注意】:①區(qū)和③區(qū)只能按字節(jié)進(jìn)行數(shù)據(jù)存取操作,②區(qū)則可按字節(jié)和位兩種方式存取操作。2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)(2)高128字節(jié)RAM區(qū)

SFR承擔(dān)著MCS-51單片機(jī)內(nèi)部資源的管理工作每個(gè)存儲(chǔ)單元都有一個(gè)字節(jié)地址,但只有其中21個(gè)單元可以使用,并有相應(yīng)寄存器名稱。MCS-51單片機(jī)共有21個(gè)特殊功能寄存器(SpetialFunctionRegister)2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)2.1MCS-51單片機(jī)結(jié)構(gòu)2.2CPU

2.3MCS-51的引腳2.4單片機(jī)的復(fù)位、時(shí)鐘與時(shí)序2.5MCS-51的存儲(chǔ)器結(jié)構(gòu)2.6并行I/O口1.P1口

P1.n=1個(gè)鎖存器+1個(gè)場(chǎng)效應(yīng)管驅(qū)動(dòng)器V+2個(gè)三態(tài)門緩沖器V21P1口包含P1.0~P1.7共8個(gè)相同結(jié)構(gòu)的電路P1.0~P1.7中的8個(gè)鎖存器組成P1,字節(jié)地址90H

(SFR)。2.6MCS-51的并口結(jié)構(gòu)P1.n的通用I/O口工作方式:輸出、讀引腳、讀鎖存器輸出時(shí):D端=1→/Q=0→V截止→P1.n=1

D端=0→/Q=1→V導(dǎo)通→P1.n=01讀引腳時(shí):P1.n→讀引腳三態(tài)門1→內(nèi)部總線讀鎖存器時(shí):Q端→讀鎖存器三態(tài)門2→內(nèi)部總線V212.6MCS-51的并口結(jié)構(gòu)場(chǎng)效應(yīng)管V的狀態(tài)會(huì)影響P1.n的狀態(tài):如V導(dǎo)通→P1.n電平≡0(鉗位)→讀引腳可能出錯(cuò)V為正確讀出P1.n引腳電平,需設(shè)法在讀引腳前先使V截止

令D=1→/Q=0→V截止→讀P1.n→不會(huì)出錯(cuò)2.6MCS-51的并口結(jié)構(gòu)2.P0口

與P1.n差別:輸出控制電路、輸出驅(qū)動(dòng)電路→總線功能P0.0~P0.7中的8個(gè)鎖存器組成P0,

80H(SFR)。2.6MCS-51的并口結(jié)構(gòu)漏極開路與上拉電阻的概念

→封鎖與門A≡0→地址/數(shù)據(jù)端與A輸出無關(guān)控制端=0→MUX下通→/Q與V1柵極直通→V2截止→V1漏極開路2.6MCS-51的并口結(jié)構(gòu)為使漏極開路的V1有效,必須通過外接上拉電阻與電源連通,上拉電阻的阻值一般為10kΩ。注意:P1、P2、P3口無需外接上拉電阻(已有內(nèi)部上拉電阻)3412第二輸入功能V2.6MCS-51的并口結(jié)構(gòu)P0.n的通用I/O口工作方式(控制端=0)輸出時(shí):D端=1→/Q=0→V1截止→P0.n=1

D端=0→/Q=1→V1導(dǎo)通→P0.n=0讀引腳時(shí):P0.n→讀引腳三態(tài)門1→內(nèi)部總線(需要先寫“1”)讀鎖存器:Q端→讀鎖存器三態(tài)門2→內(nèi)部總線2.6MCS-51的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論