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

下載本文檔

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

文檔簡介

第2章 89C51/S51單片機(jī)的結(jié)構(gòu)和原理8051單片機(jī)的硬件結(jié)構(gòu)熟悉并掌握硬件結(jié)構(gòu)對(duì)于應(yīng)用設(shè)計(jì)者是十分重要的,因?yàn)樗菃纹瑱C(jī)應(yīng)用系統(tǒng)設(shè)計(jì)的基礎(chǔ)?!?.189C51/S51單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn)§2.2 89C51/S51單片機(jī)引腳及其功能§2.3 89C51/S51單片機(jī)存儲(chǔ)器配置§2.4 時(shí)鐘電路及89C51/S51CPU時(shí)序§2.5 復(fù)位操作§2.6 89C51/S51單片機(jī)的低功耗工作方式§2.7 輸出/輸入端口結(jié)構(gòu)存儲(chǔ)器I/O接口CPU中斷系統(tǒng)定時(shí)/計(jì)數(shù)器硬件結(jié)構(gòu)2.189C51/S51單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn)89C51/S51帶閃存(FlashROM)單片機(jī)結(jié)構(gòu)89C51CPU振蕩器和時(shí)序OSC64KB總線擴(kuò)展控制器數(shù)據(jù)存儲(chǔ)器256BRAM/SFR2×16位定時(shí)器/計(jì)數(shù)器可編程I/O程序存儲(chǔ)器4KBFLASHROM可編程全雙工串行口外中斷內(nèi)中斷控制P0P2P1P3串行通信外部時(shí)鐘源外部事件計(jì)數(shù)地址/數(shù)據(jù)時(shí)鐘電路CPUROMRAMT0T1中斷系統(tǒng)串行接口并行接口P0P1P2P3TXDRXDINT0INT1定時(shí)計(jì)數(shù)器中央處理器CPU:8位,運(yùn)算和控制功能內(nèi)部RAM:共256個(gè)RAM單元,用戶使用前128個(gè)單元,用于存放可讀寫數(shù)據(jù),后128個(gè)單元被專用寄存器占用。內(nèi)部ROM:4KBflashROM,用于存放程序、原始數(shù)據(jù)和表格。定時(shí)/計(jì)數(shù)器:兩個(gè)16位的定時(shí)/計(jì)數(shù)器,實(shí)現(xiàn)定時(shí)或計(jì)數(shù)功能。并行I/O口:4個(gè)8位的I/O口P0、P1、P2、P3。串行口:一個(gè)全雙工串行口。中斷控制系統(tǒng):5個(gè)中斷源(外部中斷2個(gè),定時(shí)/計(jì)數(shù)中斷2個(gè),串行中斷1個(gè))特殊功能寄存器(SFR):控制寄存器和狀態(tài)寄存器,共21個(gè)。片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路1、一個(gè)8位的微處理器CPU。用以存放可以讀/寫的數(shù)據(jù),如運(yùn)算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù)等。2、片內(nèi)數(shù)據(jù)存儲(chǔ)器(RAM128B/256B):

用以存放程序、一些原始數(shù)據(jù)和表格。3、片內(nèi)4kB程序存儲(chǔ)器FlashROM(4KB):4、四個(gè)8位并行I/O(輸入/輸出)接口P0~P3:每個(gè)口可以用作輸入,也可以用作輸出。

每個(gè)定時(shí)/計(jì)數(shù)器都可以設(shè)置成計(jì)數(shù)方式,用以對(duì)外部事件進(jìn)行計(jì)數(shù),也可以設(shè)置成定時(shí)方式,并可以根據(jù)計(jì)數(shù)或定時(shí)的結(jié)果實(shí)現(xiàn)計(jì)算機(jī)控制。5、兩個(gè)16位定時(shí)/計(jì)數(shù)器:

可實(shí)現(xiàn)單片機(jī)與單片機(jī)或其它微機(jī)之間串行通信。7、一個(gè)全雙工UART的串行I/O口:但石英晶體和微調(diào)電容需要外接,最高允許振蕩頻率為24MHz。8、片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路:6、具有5個(gè)中斷源、兩個(gè)中斷優(yōu)先級(jí)的中斷控制系統(tǒng)9、具有節(jié)電工作方式:

休閑方式及掉電方式。掩膜ROM,則為8051單片機(jī);EPROM,則為875l單片機(jī);FlashROM,則為895l單片機(jī)無程序存儲(chǔ)器,則為8031單片機(jī)。8051單片機(jī)無程序存儲(chǔ)器,則為8031單片機(jī)。2.1.289C51/S51單片機(jī)芯片內(nèi)部結(jié)構(gòu)P0驅(qū)動(dòng)器P2驅(qū)動(dòng)器P0鎖存器P2鎖存器RAM地址寄存器128BRAM4KBROMB寄存器暫存器1暫存器2ACCSP程序地址寄存器緩沖器PC增1PCDPTR中斷、串行口和定時(shí)器PSWP1鎖存器P1驅(qū)動(dòng)器P3鎖存器P3驅(qū)動(dòng)器定時(shí)控制指令寄存器指令譯碼器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1XTAL2PSENALEEARESET89C51單片機(jī)內(nèi)部結(jié)構(gòu)圖返回運(yùn)算器控制器存儲(chǔ)器I/O接口1、中央處理單元(CPU)2、存儲(chǔ)器3、I/O接口

中央處理器(CPU:CentralProcessingUnit)是單片機(jī)的核心部件,它決定了單片機(jī)的主要功能特性。

1、運(yùn)算部件2、控制部件

算術(shù)邏輯運(yùn)算單元ALU功能:

1、算術(shù)、邏輯運(yùn)算2、位變量處理(1位二進(jìn)制)3、數(shù)據(jù)的傳送

運(yùn)算器:是在控制器控制下,對(duì)二進(jìn)制數(shù)進(jìn)行算術(shù)或邏輯運(yùn)算及信息傳送的裝置。算術(shù)邏輯單元ALU累加器A寄存器B程序狀態(tài)字寄存器PSW及它邏輯電路組成。

累加器A(0E0H)累加器A是一個(gè)最常用的的寄存器,它屬于SFR大部分單操作數(shù)指令的操作數(shù)取自累加器,很多雙操作數(shù)指令的一個(gè)操作數(shù)取自累加器,加、減、乘、除算術(shù)運(yùn)算指令的運(yùn)算結(jié)果都存放在累加器A或B寄存器中。寄存器B(0F0H)在乘、除指令中,用到了寄存器B。乘法指令的兩個(gè)操作數(shù)分別取自A和B,其結(jié)果存放在AB寄存器對(duì)中。除法指令中,被除數(shù)取自A,除數(shù)取自B,運(yùn)算后商數(shù)存放于A,余數(shù)存放于B。

程序狀態(tài)字寄存器PSW(0D0H)PSW是一個(gè)8位寄存器,它包含了程序運(yùn)行中狀態(tài)信息P--OVRS0RS1F0ACCyPSWD7D6D5D4D3D2D1D0Cy(PSW.7)進(jìn)位標(biāo)志位在執(zhí)行算術(shù)和邏輯指令時(shí),可以被硬件或軟件置位或清0,在位處理器中,它可作位累加器。輔助進(jìn)位標(biāo)志位F0(PSW.5)標(biāo)志位它是由用戶使用的一個(gè)狀態(tài)標(biāo)志位,可用軟件來使它置位或清0,也可以靠軟件測試F0以控制程序的流向。編程時(shí),該標(biāo)志位特別有用。RS1、RS0工作寄存器區(qū)選擇用來選擇4組工作寄存器區(qū)(4組寄存器在單片機(jī)內(nèi)的RAM區(qū)中)中的哪一組為當(dāng)前工作寄存器區(qū)溢出標(biāo)志位奇偶標(biāo)志位表示累加器A中值為l的位數(shù)的奇偶數(shù)。若為奇數(shù),則P=l,否則P=0。此標(biāo)志位對(duì)串行口通訊中的數(shù)據(jù)傳輸有重要的意義,常用奇偶檢驗(yàn)的方法來檢驗(yàn)數(shù)據(jù)傳輸?shù)目煽啃?。布爾處理?個(gè)8位暫存器:PSW中的進(jìn)位標(biāo)志CYALU的兩個(gè)入口處。2控制器(1)程序計(jì)數(shù)器PC(16位)(2)指令寄存器IR及指令譯碼器ID(3)振蕩器和定時(shí)電路時(shí)序控制邏輯電路構(gòu)成。

以主頻為基準(zhǔn),發(fā)出CPU時(shí)序,通過指令譯碼發(fā)出各種控制信號(hào),完成一系列控制操作。bCPU的組成部件:2.3.2

控制器發(fā)布操作命令的機(jī)構(gòu)主要任務(wù)取出指令、分析指令、執(zhí)行指令。程序計(jì)數(shù)器(PC)指令寄存器(IR)指令譯碼器(ID)1.程序計(jì)數(shù)器PC(ProgramCounter)16位的專用寄存器,用來存放下一條指令的地址,它具有自動(dòng)加1的功能。由兩個(gè)8位計(jì)數(shù)器PCH、PCL組成。1.CPU要取指令時(shí),PC的內(nèi)容首先送至地址總線上,然后再從該地址的存儲(chǔ)單元中取指令2.取完指令后,PC內(nèi)容則自動(dòng)加1,指向下一條指令的地址,以保證程序按順序執(zhí)行。執(zhí)行轉(zhuǎn)移、子程序調(diào)用指令和中斷響應(yīng)時(shí)PC的內(nèi)容不再加1,而是由指令或中斷響應(yīng)過程自動(dòng)給PC置入新的地址。單片機(jī)復(fù)位時(shí),PC自動(dòng)清零,裝入地址0000H,從而保證了復(fù)位后,程序從0000H地址開始執(zhí)行。2.指令寄存器IR、指令譯碼器ID一個(gè)8位的寄存器,用于暫存待執(zhí)行的指令,等待譯碼。對(duì)指令寄存器中的指令進(jìn)行譯碼將指令轉(zhuǎn)變?yōu)閳?zhí)行此指令所需要的電信號(hào)完成指令的功能。(1)程序計(jì)數(shù)器PC(16位)PC是程序的字節(jié)地址計(jì)數(shù)器,PC內(nèi)容為將要執(zhí)行的指令地址。改變PC內(nèi)容,改變執(zhí)行的流向。PC可對(duì)64KB的ROM直接尋址,也可對(duì)89C51/S51片內(nèi)RAM尋址。2、存儲(chǔ)器1)程序存儲(chǔ)器(ROM)2)數(shù)據(jù)存儲(chǔ)器(RAM)1)程序存儲(chǔ)器(ROM)89C51/S51片內(nèi)為4KBFlashROM。地址從0000H開始。用于存放程序和表格常數(shù)。2)數(shù)據(jù)存儲(chǔ)器(RAM)89C51/S51RAM均為128B,地址為00H~7FH。用于存放運(yùn)算的中間結(jié)果、數(shù)據(jù)暫存以及數(shù)據(jù)緩沖等。這128B的RAM中有32個(gè)字節(jié)單元可指定為工作寄存器。片內(nèi)還有21個(gè)特殊功能寄存器(SFR),它們同128字節(jié)RAM統(tǒng)一編址,地址為80H~FFH。3、I/O接口89C51/S51有四個(gè)8位并行I/O接口P0~P3。它們都是雙向端口,每個(gè)端口各有8條I/O線。P0-P3口四個(gè)鎖存器同RAM統(tǒng)一編址,可作為SFR來尋址。2.2 89C51/S51單片機(jī)引腳及其功能掌握89C51單片機(jī),熟悉并牢記各引腳的功能,采用40只引腳雙列直插封裝(DIP封裝方式)采用44只引腳方形PLCC封裝方式40只引腳按其功能來分,可分為三個(gè)部分:三.I/O口引腳:P0、P1、P2、P3二.控制引腳:RST、ALE、EA、PSEN一.電源及時(shí)鐘引腳:VCC、

VSS、XTAL1、XTAL2

本課程介紹DIP40封裝方式的引腳。P0口:8位既可以8位一起輸入輸出,也可以1位1位地輸入輸出。在擴(kuò)展外部存儲(chǔ)器兼作低8位地址。P2口:8位既可以8位一起輸入輸出,也可以1位1位地輸入輸出。在擴(kuò)展外部存儲(chǔ)器兼作高8位地址。P3口:8位既可以8位一起輸入輸出,也可以位1位地輸入輸出,同時(shí),P3口作為第二功能時(shí):RXD:串行接收TXD:串行發(fā)送INT0:外部中斷0INT1:外部中斷1

T0:T0計(jì)數(shù)輸入T1:T1計(jì)數(shù)輸入

WR:寫命令RD:讀命令單片機(jī)復(fù)位信號(hào)輸入電源電源地XTAL1、XTAL2晶體振蕩器接入端存儲(chǔ)器選擇:高電平時(shí)訪問片內(nèi)程序存儲(chǔ)器;低電平時(shí)訪問片外程序存儲(chǔ)器用于鎖存地址的低位字節(jié)(高有效)外部程序存儲(chǔ)器的選通信號(hào)低有效P1口:8位既可以8位一起輸入輸出,也可以1位1位地輸入輸出2.2.1、電源及時(shí)鐘引腳:Vcc:接+5V電源(低功耗的為+3.3V/2.7V)Vss:接地端XTAL1:芯片內(nèi)部振蕩電路輸入端XTAL2:芯片內(nèi)部振蕩電路輸出端振蕩頻率為晶振頻率(1.2~12MHz),另外需兩個(gè)30pF左右的電容以微調(diào)頻率2.

外接晶振引腳32晶振:石英晶體振蕩器的簡稱,通常用來構(gòu)成振蕩電路,產(chǎn)生各種頻率信號(hào)。時(shí)鐘電路2.2.2控制引腳1.RST:(9腳)

RST:復(fù)位引腳功能:當(dāng)出現(xiàn)2個(gè)機(jī)器周期以上的高電平,使單片機(jī)復(fù)位。復(fù)位后:PC=0000HSP=07HALE:地址鎖存允許信號(hào)端

功能:將低八位地址鎖存到外部地址鎖存器當(dāng)中。

P0口時(shí)既輸出數(shù)據(jù),又輸出地址。ALE接鎖存器的G引腳,將地址鎖存.

PROG:第二功能,對(duì)EPROM型單片機(jī)編程寫入時(shí),此引腳為編程脈沖的輸入端

:外部程序存儲(chǔ)器讀選通信號(hào)端;對(duì)外部程序存儲(chǔ)器取指令時(shí),機(jī)器周期兩次

有效。

功能:編程時(shí),從該引腳輸入編程脈沖,對(duì)程序存儲(chǔ)器進(jìn)行編程。EA/VPP:程序存儲(chǔ)器選擇信號(hào)端和編程電源輸入端;EA=0:只訪問片外程序存儲(chǔ)器;EA=1:先訪問片內(nèi)程序存儲(chǔ)器再片外;Vpp用于施加較高的編程電壓P0口作普通I/O8位準(zhǔn)雙向I/O擴(kuò)展片外RAM或ROM標(biāo)準(zhǔn)的雙向I/O接口P1口8位雙向I/O接口第二功能P2口作普通I/O8位雙向I/O接口擴(kuò)展片外RAM或ROM作高8位地址線P3口8位雙向I/O接口每個(gè)引腳有第二功能(多使用第二功能)89C51配有2個(gè)16位定時(shí)器/計(jì)數(shù)器一個(gè)可編程全雙工串行口5個(gè)中斷源,兩個(gè)中斷優(yōu)先級(jí)P3口第二功能表引腳第二功能P3.0RxD:串行口接收數(shù)據(jù)輸入端P3.1TxD:串行口發(fā)送數(shù)據(jù)輸出端P3.2INT0:外部中斷申請(qǐng)輸入端0P3.3INT1:外部中斷申請(qǐng)輸入端1P3.4T0:外部計(jì)數(shù)脈沖輸入端0P3.5T1:外部計(jì)數(shù)脈沖輸入端1P3.6WR:寫外設(shè)控制信號(hào)輸出端P3.7RD:讀外設(shè)控制信號(hào)輸出端P0口結(jié)構(gòu)P0口是由8個(gè)相同結(jié)構(gòu)的引腳組成的。內(nèi)部包含一個(gè)輸出鎖存器、一個(gè)輸出驅(qū)動(dòng)電路、一個(gè)輸出控制電路、多路開關(guān)和兩個(gè)三態(tài)緩沖器,其中輸出驅(qū)動(dòng)電路由一對(duì)場效應(yīng)管(FET)組成,整個(gè)端口的工作狀態(tài)受控于輸出控制電路。功能1、可作為8位雙向I/O口功能2、擴(kuò)展外部總線時(shí)作為地址總線低8位和8位數(shù)據(jù)總線復(fù)用口使用。P0口引腳P0.X12DQCK/Q讀引腳讀鎖存器寫鎖存器地址/數(shù)據(jù)控制43VccT1T2MUX=0P0口用作基本輸出/輸入口使用時(shí)P0口引腳P0.X12DQCK/Q讀引腳讀鎖存器寫鎖存器地址/數(shù)據(jù)控制&3VccT1T2MUX=1P0口用作地址/數(shù)據(jù)總線使用時(shí)“控制”=0,作I/O口;“控制”=1,作地址/數(shù)據(jù)口;(外部擴(kuò)展)00截止截止寫11P0口1100導(dǎo)通P1口自帶上拉電阻,8位雙向I/O接口輸入時(shí),先寫“1”P1口內(nèi)部一位結(jié)構(gòu)圖※

有4個(gè)8位并行I/O口,共32條端線:

P0、P1、P2和P3口?!恳粋€(gè)I/O口都能用作一般輸入或輸出。用作一般輸入時(shí),均須先寫入“1”;用作一般輸出時(shí),P0口應(yīng)外接上拉電阻?!?/p>

在并行擴(kuò)展外存儲(chǔ)器或I/O口情況下,

P0口用于低8位地址總線和數(shù)據(jù)總線(分時(shí)復(fù)用)

P2口用于高8位地址總線,

P1、P3口常用于第二功能,P0~P3的功能及使用時(shí)的注意事項(xiàng)引腳總圖——三總線鎖存器GP270P070ALEP170P370

P1:通用I/O接口

P3:通用I/O接口或第二功能A15A8A7A0D7D0地址總線AB數(shù)據(jù)總線DBRST復(fù)位EAXTAL1晶振XTAL2Vcc電源GND片外程序存儲(chǔ)器選擇PSEN片外程序存儲(chǔ)器讀選通控制總線CB8051875180312.389C51/S51存儲(chǔ)器配置存儲(chǔ)器空間存放程序、數(shù)據(jù)存儲(chǔ)器空間分類根據(jù)作用分類程序存儲(chǔ)器ROM、數(shù)據(jù)存儲(chǔ)器RAM根據(jù)位置分類片內(nèi)存儲(chǔ)器、片外存儲(chǔ)器核內(nèi)=片內(nèi)核外=片外存儲(chǔ)器編址方法2種馮.諾依曼結(jié)構(gòu)程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址哈佛結(jié)構(gòu)程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分別編址51系列單片機(jī)程序存儲(chǔ)器(ROM)和數(shù)據(jù)存儲(chǔ)器(RAM)尋址空間相互獨(dú)立,物理結(jié)構(gòu)不相同數(shù)據(jù)存儲(chǔ)器:片外、片內(nèi)PC機(jī)程序存儲(chǔ)器配置圖程序存儲(chǔ)器配置圖存放程序和常數(shù)(如:原始數(shù)據(jù)或表格)89C51對(duì)外程序存儲(chǔ)器尋址能力:64KB(216B)MOVC指令操作外部ROM2.3.1程序存儲(chǔ)器地址空間2.3.1程序存儲(chǔ)器地址空間中斷(號(hào))中斷矢量地址中斷矢量地址處存放中斷服務(wù)程序的入口地址外部中斷1入口地址定時(shí)器/計(jì)數(shù)器1溢出中斷入口地址串行口中斷入口地址定時(shí)器/計(jì)數(shù)器2溢出中斷入口地址復(fù)位時(shí)ROM的地址(PC=0,程序從00H開始執(zhí)行)外部中斷0入口地址定時(shí)器計(jì)數(shù)器0溢出中斷入口地址復(fù)位時(shí),PC=0000H,從該處執(zhí)行程序中斷向量表(中斷向量)0003H~002BH:中斷服務(wù)程序入口存放一條無條件轉(zhuǎn)移指令進(jìn)行跳轉(zhuǎn)

不要占用

ORG0000H

LJMPMAIN;只寫一條跳轉(zhuǎn)指令

??? ORG0030H;開始寫主程序

MAIN: ???

資源配置子系列片內(nèi)ROM形式片內(nèi)ROM容量片內(nèi)RAM容量無ROMEPROMFPEROM51子系列8031805187514KB128B80C3180C5187C5189C514KB128B52子系列8032805287528KB256B80C3280C5287C5289C528KB256B0000H~0FFFH0000H~1FFFH00~7FH00~FFH片外ROM擴(kuò)展最多64K片外ROM根據(jù)EA引腳狀態(tài)地址:0000H~0FFFFH或者1000H(2000H)~FFFFH片外RAM擴(kuò)展地址:0000H~0FFFFH數(shù)據(jù)存儲(chǔ)器配置圖指令使用MOV、MOVX、MOVC三個(gè)不同的指令控制引腳片外RAM:控制信號(hào)、片外ROM:控制信號(hào)引腳接地,從片外ROM開始0000H~0FFFH位于片外ROM

引腳接高電平(5V),從片內(nèi)ROM開始0000H~0FFFH位于片內(nèi)ROM注意ROM和片外RAM一定要用16位地址片內(nèi)RAM和SFR,只能使用8位地址52子系列高128B普通RAM,只可采用間接尋址區(qū)分存儲(chǔ)器空間的方法ROM片外RAM:MOVX片內(nèi)RAM:MOV片內(nèi)外ROM:MOVC數(shù)據(jù)存儲(chǔ)器的配置片內(nèi)數(shù)據(jù)存儲(chǔ)器片外數(shù)據(jù)存儲(chǔ)器低128B高128BMOVX指令MOV指令工作寄存器區(qū)RS1RS0寄存器組片內(nèi)RAM地址通用寄存器名稱000組00H~07HR0~R7011組08H~0FHR0~R7102組10H~17HR0~R7113組18H~1FHR0~R7在任何時(shí)刻CPU只能使用其中一個(gè)區(qū)(當(dāng)前寄存器組)位地址空間20H~2FH,共16個(gè)單元,128位。為布爾處理區(qū)各有自己的位地址,統(tǒng)一編址為00H~7FH(1個(gè)地址代表1位)既可以字節(jié)尋址,也可以位尋址有17條位操作指令,常用:置位(SETB)、清零(CLR)、取反(CPL)高128字節(jié)RAM-特殊功能寄存器組成通用數(shù)據(jù)RAM區(qū)51子系列無該區(qū)特殊功能寄存器SFR區(qū)別的方法訪問通用數(shù)據(jù)RAM區(qū),用寄存器間接尋址

MOVA,@R0訪問特殊功能寄存器,用直接尋址

MOVA,80H邏輯地址相同物理地址分開SFR地址表(1)SFR地址表(2)SFR地址表(3)特殊功能寄存器位地址BACCPSWIPIEP2P3SCONP1TCONP0字節(jié)地址能被8整除

(2)寄存器B為執(zhí)行乘法和除法操作設(shè)置的不執(zhí)行乘除法操作,可把它作為普通的寄存器來使用(3)程序狀態(tài)字寄存器PSW(0D0H)PSW是一個(gè)8位寄存器,它包含了程序運(yùn)行中狀態(tài)信息P--OVRS0RS1F0ACCyPSWD7D6D5D4D3D2D1D0Cy(PSW.7)進(jìn)位標(biāo)志位在執(zhí)行算術(shù)和邏輯指令時(shí),可以被硬件或軟件置位或清0,在位處理器中,它可作位累加器。輔助進(jìn)位標(biāo)志位F0(PSW.5)標(biāo)志位它是由用戶使用的一個(gè)狀態(tài)標(biāo)志位,可用軟件來使它置位或清0,也可以靠軟件測試F0以控制程序的流向。編程時(shí),該標(biāo)志位特別有用。RS1、RS0工作寄存器區(qū)選擇用來選擇4組工作寄存器區(qū)(4組寄存器在單片機(jī)內(nèi)的RAM區(qū)中)中的哪一組為當(dāng)前工作寄存器區(qū)溢出標(biāo)志位奇偶標(biāo)志位表示累加器A中值為l的位數(shù)的奇偶數(shù)。若為奇數(shù),則P=l,否則P=0。此標(biāo)志位對(duì)串行口通訊中的數(shù)據(jù)傳輸有重要的意義,常用奇偶檢驗(yàn)的方法來檢驗(yàn)數(shù)據(jù)傳輸?shù)目煽啃浴?.兩個(gè)同號(hào)數(shù)相加(異號(hào)數(shù)相減)才會(huì)溢出

異號(hào)數(shù)相加(同號(hào)數(shù)相減)不會(huì)溢出2.同號(hào)數(shù)相加最終的結(jié)果和符號(hào)相反則溢出。溢出的判斷1.兩個(gè)加數(shù)76H+0B9H相加后,CY、AC、OV和P分別為多少?2.兩個(gè)加數(shù)88H+0BCH相加后,CY、AC、OV和P分別為多少?3.已知某一指令運(yùn)行后PSW=97H,則表明該指令運(yùn)行后:

有無溢出?有無進(jìn)位?有無輔助進(jìn)位?P=?該指令的當(dāng)前寄存器區(qū)為多少?例題:(4)堆棧指針SP棧底數(shù)據(jù)出數(shù)據(jù)入SPSP+1SP進(jìn)棧SP增加堆棧:先入后出,后入先出出棧SP減小堆棧是在片內(nèi)RAM中臨時(shí)開辟的暫存區(qū);作用:保護(hù)現(xiàn)場、保護(hù)斷點(diǎn)針對(duì):子程序調(diào)用、中斷操作特點(diǎn):先進(jìn)后出,后進(jìn)先出指令:入棧PUSH,出棧POPPUSH和POP都是對(duì)堆棧的棧頂單元進(jìn)行的棧頂SP始終指向最后壓入或即將彈出的數(shù)據(jù)單元,即棧頂SP為一個(gè)8位寄存器,它的內(nèi)容是棧頂存儲(chǔ)單元的地址1.已知SP=30H,(A)=56H(B)=89H(70H)=A2H執(zhí)行指令下列指令后,SP=?(A)=?(B)=?(70H)=?DPTR=?PUSHAPUSHBPOPDPHPUSH70HPOPAPOPDPLPUSHB例題:1.已知SP=30H,(A)=56H(B)=89H(70H)=A2H將A的內(nèi)容送到B,將B的內(nèi)容送到70H,再將70H的內(nèi)容送到A例題:單片機(jī)復(fù)位時(shí)SP=07H,此時(shí)SP指向棧頂,堆棧正落在工作寄存器R1區(qū)切換工作寄存器區(qū)時(shí)沖突一般設(shè)置:SP=30H或以上SP不能在RAM的頂端為堆棧向上發(fā)展留足夠空間(5)數(shù)據(jù)指針DPTR16位高位:DPH,8位低位:DPL,8位主要用途訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),作地址指針保存16位地址,有+1功能(INC)寄存器間址尋址、變址尋址串行通信相關(guān)寄存器SBUF(SerialDateBuffer)串行數(shù)據(jù)緩沖器放待發(fā)送和已接收數(shù)據(jù)的,雙緩沖結(jié)構(gòu)SCON

(SerialControlRegister)串行接口控制寄存器PCON(PowerControlRegister)電源控制寄存器定時(shí)器/計(jì)數(shù)器16位:T0:TH0、TL0T1:TH1、TL1TH1TL17070T1TH0TL07070T0TCONTMOD微處理器內(nèi)部總線P定時(shí)器模式控制寄存器,確定T1和T0的功能和工作方式定時(shí)器控制寄存器,控制T1和T0的啟動(dòng)和停止作定時(shí)/計(jì)數(shù)器可16位數(shù)加“1”(INC),其他情況作8位寄存器★程序計(jì)數(shù)器PC程序地址寄存器,不屬于特殊功能寄存器程序不能訪問16位,范圍:0000H~0FFFFH當(dāng)一條指令被取出后,PC的內(nèi)容會(huì)自動(dòng)增量,指向下一條要執(zhí)行指令的地址中斷相關(guān)寄存器IP(InterruptPriorityRegister)中斷優(yōu)先級(jí)寄存器IE(InterruptEnableRegister)中斷允許寄存器2.6時(shí)鐘電路與指令的時(shí)序1.時(shí)鐘電路內(nèi)部振蕩電路晶振外部振蕩電路時(shí)序發(fā)生器框圖2.機(jī)器周期和指令周期S1S2S3S4S5S6S1S2P1P2P1P2P1P2P1P2P1P2P1P2P1P2P1P2fosc節(jié)拍(p,振蕩周期)一個(gè)時(shí)鐘周期一個(gè)機(jī)器周期X2振蕩周期和機(jī)器周期是計(jì)算其他時(shí)間的基本時(shí)序單位指令周期=1

溫馨提示

  • 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. 人人文庫網(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)論