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

下載本文檔

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

文檔簡介

1、lMCS-51單片機(jī)內(nèi)部結(jié)構(gòu)l存 儲 器l特殊功能寄存器l時(shí)鐘電路和復(fù)位電路l引腳 內(nèi)內(nèi) 容容 提提 要要 MCS-51系列單片機(jī)有多種型號的產(chǎn)品: 普通型(51子系列)8051、8031、8751、89C51、89S51等。增強(qiáng)型(52子系列)8032、8052、8752、89C52、89S52等。它們的結(jié)構(gòu)基本相同,其主要差別反映在存儲器的配置上。l8031片內(nèi)沒有程序存儲器l8051內(nèi)部設(shè)有4KB的掩模ROM程序存儲器l8751是將8051片內(nèi)的ROM換成EPROMl89C51則換成4KB的閃速EEPROMl89S51結(jié)構(gòu)同89C51, 4KB的閃速EEPROM可在線編程l增強(qiáng)型的存儲容

2、量為普通型的一倍 本課以 8XX51 代表這一系列的單片機(jī)。 51系列單片機(jī)內(nèi)部結(jié)構(gòu)。系列單片機(jī)內(nèi)部結(jié)構(gòu)。圖1-1 ( 圖中“/” 兩邊分別為基本型和增強(qiáng)型 )P3P1P2 可編程 串行I/O口P0外部中斷基準(zhǔn)頻率源控制 128/256B數(shù)據(jù)存儲器 4KB/8KB程序存儲器 2/3個(gè)16位定時(shí)/計(jì)數(shù)器 振蕩器及 定時(shí)電路 CPU 64KB總線擴(kuò)展控制 可編程并行I/O口內(nèi)部中斷計(jì)數(shù)脈沖串行輸出 串行輸入 CPU是單片機(jī)的核心部件。它由運(yùn)算器和控制器等部件組成。 1. 運(yùn)算器 運(yùn)算器的功能是 l進(jìn)行算術(shù)運(yùn)算:加、減、乘、除、加1、減1、比較BCD碼十進(jìn)制調(diào)整等l邏輯運(yùn)算:與、或、異或、求反、循環(huán)

3、等邏輯操作l位操作:內(nèi)部有布爾處理器,它以進(jìn)位標(biāo)志位C為位累加器,用來處理位操作??蓪ξ恢?“1”、對位清零 、位判斷等。 操作結(jié)果的狀態(tài)信息送至狀態(tài)寄存PSW。 MCS-51的儲存器結(jié)構(gòu)與常見的微型計(jì)算機(jī)的配置方法不同,它將程序存儲器和數(shù)據(jù)存儲器分開,各有自己的尋址方式、控制信號和功能。 程序存儲器用來存放程序和始終要保留的常數(shù)。 數(shù)據(jù)存儲器存放程序運(yùn)行中所需要的常數(shù)和變量。 從物理空間看,MCS-51有四個(gè)存儲器地址空間: 片內(nèi)數(shù)據(jù)存儲器、片外數(shù)據(jù)存儲器片內(nèi)程序存儲器、片外程序存儲器 MCS-51存儲器物理結(jié)構(gòu)見下圖所示: 外部數(shù)據(jù) 存儲器 (RAM)外部程序 存儲器 (ROM)內(nèi)部程序

4、存儲器內(nèi)部數(shù)據(jù) 存儲器8XX51 從邏輯上看,MCS-51有三個(gè)存儲器空間:片內(nèi)數(shù)據(jù)存儲器、片外數(shù)據(jù)存儲器 片內(nèi)、片外統(tǒng)一編址的程序存儲器 MCS51的存儲器邏輯結(jié)構(gòu)如下圖。 MCS-51存儲器物理結(jié)構(gòu) 引腳 EA 的接法決定了程序儲存器的00000FFFH 4KB地址范圍是在單片機(jī)片內(nèi)還是片外。 H00000FFFH圖1-2 MCS-51單片機(jī)的存儲器邏輯結(jié)構(gòu)FFFFH0000H0FFFH 外部 RAM 外部R O M內(nèi)部ROM (EA=1)H00008031外部ROM (EA=0)80511000HFFFFH 特殊功能 寄存器內(nèi)部數(shù)據(jù)存儲器內(nèi)部數(shù)據(jù)存儲器 內(nèi)部數(shù)據(jù) RAM7FH80H00H

5、FFH外部數(shù)據(jù)存儲器外部數(shù)據(jù)存儲器 (增強(qiáng)型)程序存儲器程序存儲器 地址重疊 1.2.1 程序儲存器程序儲存器 程序存儲器用來存放編制好的始終保留的固定程序和表格常數(shù)。程序儲存器以程序計(jì)數(shù)器 PC 作為地址指針,通過16位地址總線,可尋址的地址空間為64KB。 在8051/8751/89C51 片內(nèi),分別內(nèi)置最低地址空間的4KB ROM/EPROM程序儲存器(內(nèi)部程序儲存器),而在8031片內(nèi),則無內(nèi)部程序儲存器,必須外部擴(kuò)展EPROM。MCS-51單片機(jī)中64KB內(nèi)、外程序儲存器的地址是統(tǒng)一編排的。 8031單片機(jī)無內(nèi)部程序存儲器,地址從0000HFFFFH都是外部程序存儲空間。 對于內(nèi)部有

6、ROM的單片機(jī)(51、52系列) 引腳接高電平,使程序從內(nèi)部ROM開始執(zhí)行。當(dāng)PC值超出內(nèi)部ROM的容量時(shí),會自動轉(zhuǎn)向外部程序存儲器空間。外部程序存儲器地址空間為1000HFFFFH。 訪問程序存儲器使用MOVC指令。EAl 程序存儲器中的幾個(gè)特殊地址的使用: 地址 用途 0000H 復(fù)位操作后的程序入口 0003H 外部中斷0服務(wù)程序入口 000BH 定時(shí)器0中斷服務(wù)程序入口 0013H 外部中斷1服務(wù)程序入口 001BH 定時(shí)器1中斷服務(wù)程序入口 0023H 串行口中斷服務(wù)程序入口 由于兩入口地址之間的存儲空間有限,因此在編程時(shí),通常在這些入口地址開始的兩三個(gè)地址單元中,放入一條轉(zhuǎn)移類指令

7、,已使相應(yīng)的程序轉(zhuǎn)到指定的程序存儲器區(qū)域中執(zhí)行。1.2.2 外部數(shù)據(jù)存儲器l用于存放隨機(jī)讀寫的數(shù)據(jù)。l外部I/O口地址影像區(qū)。 MCS-51單片機(jī)的外部數(shù)據(jù)存儲器和外部I/O口實(shí)行統(tǒng)一編址 ,并使用相同的 作選通控制信號,均使用 MOVX 指令訪問。l MCS-51 單片機(jī)最多可擴(kuò)展64KB外部數(shù)據(jù)存儲器1.2.3 內(nèi)部數(shù)據(jù)儲存器 內(nèi)部數(shù)據(jù)存儲器是使用最多的地址空間,l存放隨機(jī)讀寫的數(shù)據(jù)l通用寄存器區(qū) RD WRl堆棧區(qū)l運(yùn)算操作數(shù)存放區(qū) 指令(算術(shù)運(yùn)算、邏輯運(yùn)算、位操作運(yùn)算等)的操作數(shù)只能在此地址空間或特殊功能寄存器地址空間。內(nèi)部數(shù)據(jù)存儲器的地址分配 51 系列單片機(jī)內(nèi)部數(shù)據(jù)存儲器地址范圍為

8、007FH。各區(qū)域地址見下表。(1)地址 01FH的前32個(gè)單元稱為寄存器區(qū)l用途: 作通用寄存器R0R7。 R0與R1可作間址寄存器使用。使用時(shí)應(yīng)注意使用時(shí)應(yīng)注意: 32個(gè)單元的寄存器區(qū)分為四組,使用時(shí)只能選其中一組寄存器。l寄存器的選組由程序狀態(tài)字PSW的RS1和RS0位定。 RS1 RS0 選寄存器組 0 0 0組 0 1 1組 1 0 2組 1 1 3組 l初始化時(shí)或復(fù)位時(shí),自動選中0組。l一旦選中一組,其它三組只能作為數(shù)據(jù)存儲器使用,而不能作為寄存器使用。l設(shè)置多組寄存器可以方便保護(hù)現(xiàn)場。 (2 2)20H20H2FH2FH為位地址區(qū)為位地址區(qū) 共16個(gè)單元,每單元有八個(gè)位,每位有一

9、個(gè)位地址,共128位, 位地址范圍為00H7FH,該區(qū)既可位尋址,又可字節(jié)尋址。 (3 3)除選中的寄存組以外的存儲器均可以作為通用除選中的寄存組以外的存儲器均可以作為通用RAMRAM區(qū)區(qū)。 (4 4)堆棧區(qū))堆棧區(qū) 8XX51單片機(jī)的堆棧設(shè)在內(nèi)部RAM區(qū),深度不大于128字節(jié), 初始化時(shí)SP指向07H。注: 對51基本型單片機(jī)只有00H7FH單元128字節(jié)的RAM區(qū)。 對52增強(qiáng)型的單片機(jī)還有80HFFH組成的高128字節(jié)RAM區(qū)(共區(qū)(共256256字節(jié))。字節(jié))。 MCS-51單片機(jī)共有21個(gè)字節(jié)的特殊功能寄存器用英文縮寫SFR (Special Fuction Register)表示。

10、1.用途:lA 累加器、狀態(tài)標(biāo)志寄存器l單片機(jī)內(nèi)部各部件專用的控制、狀態(tài)寄存器l并行口、串行口影射寄存器2.地址空間:l21個(gè)特殊功能器不連續(xù)的分布在80HFFH 128個(gè)字節(jié)地址空間。l地址為X0H和X8H是可位尋址的寄存器。 CY:進(jìn)/借位標(biāo)志 反映最高位的進(jìn)位借位情況,加法為進(jìn)位、減 法為借位。 CY=1,有進(jìn)/借位 ; CY=0,無進(jìn)/借位。 AC:輔助進(jìn)/借位標(biāo)志 反映高半字節(jié)與低半字節(jié)之間的進(jìn)/借位, AC=1有進(jìn)/借位; AC=0無進(jìn)/借位 。 FO:用戶標(biāo)志位??捎捎脩粼O(shè)定其含義。 RS1,RS0:工作寄存器組選擇位。OV:溢出標(biāo)志 反映補(bǔ)碼運(yùn)算的運(yùn)算結(jié)果有無溢出 有溢出 OV

11、=1,無溢出OV=0。 P:奇偶標(biāo)志 運(yùn)算結(jié)果有奇?zhèn)€“1”,P=1; 運(yùn)算結(jié)果有偶個(gè)“1”,P=0。 影響標(biāo)志位的指令及其影響方式見第2章。SP堆棧指針。8XX51單片機(jī)的堆棧設(shè)在片內(nèi)RAM, D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0RS1 RS0OV P注: 在52子系列中,高128字節(jié)RAM和SFR的地址是重疊的,究竟訪問哪一塊可通過不同的尋址方式加以區(qū)分,訪問高128字節(jié)RAM采用寄存器間址,訪問SFR則只能采用直接尋址,訪問低128字節(jié)RAM時(shí),兩種尋址均可采用。 內(nèi)部振蕩方式內(nèi)部振蕩方式: 在引腳 XTAL1和 XTAL2外接晶體振蕩器(簡稱晶振)。XTAL1

12、XTAL2GND8XX51C01C02 單片機(jī)的時(shí)鐘信號用來提供單片機(jī)內(nèi)各種微操作時(shí)間基準(zhǔn),8XX51單片機(jī)的時(shí)鐘信號通常有兩種電路形式:內(nèi)部振蕩方式和外部振蕩方式。電容器C01、C02起穩(wěn)定振蕩頻率、快速起振的作用。電容值一般為 530PF。由于單片機(jī)內(nèi)部有一個(gè)高增益運(yùn)算放大器,當(dāng)外接晶振后,就構(gòu)成了自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。 8XX51 外部振蕩方式是把已有的時(shí)鐘信號引入單片機(jī)。這種方式適宜用于使單片機(jī)的時(shí)鐘與外部信號保持一致。外部振蕩方式如圖。 對HMOS的單片機(jī)(8031、8031AH等)外部時(shí)鐘信號由XTAL2引入,對于CHMOS的單片機(jī)(8XCXX),外部時(shí)鐘由XTAL1引入。

13、外部時(shí)鐘XTAL1XTAL2GND8XX51懸空外部時(shí)鐘XTAL1XTAL2GND懸空CHMOSHMOS圖14外部振蕩方式8XX518XX511.4.2 基本時(shí)序單位基本時(shí)序單位單片機(jī)的時(shí)序單位有:l振蕩周期:晶振的振蕩周期,又稱時(shí)鐘周期,為最小的時(shí)序單位。l狀態(tài)周期:振蕩頻率經(jīng)單片機(jī)內(nèi)的二分頻器分頻后提供給片內(nèi)CPU的時(shí)鐘周期。因此,一個(gè)狀態(tài)周期包含2個(gè)振蕩周期。l機(jī)器周期(MC):1個(gè)機(jī)器周期由6個(gè)狀態(tài)周期及12個(gè)振蕩周期組成。是計(jì)算機(jī)執(zhí)行一種基本操作的時(shí)間單位。l指令周期 執(zhí)行一條指令所需的時(shí)間。一個(gè)指令周期由14個(gè)機(jī)器周期組成,依據(jù)指令不同而不同。 4種時(shí)序單位中,振蕩周期和機(jī)器周期是

14、單片機(jī)內(nèi)計(jì)算其他時(shí)間值(例如,波特率、定時(shí)器的定時(shí)時(shí)間等)的基本時(shí)序單位。 例:單片機(jī)外接晶振頻率12MHZ時(shí)的各種時(shí)序單位: 振蕩周期=1/fosc=1/12MHZ=0.0833us 狀態(tài)周期=2/fosc=2/12MHZ=0.167us 機(jī)器周期=12/fosc=12/12MHZ=1us 指令周期=(14)機(jī)器周期=14us 1.4.3 1.4.3 復(fù)位電路復(fù)位電路l 復(fù)位操作則使單片機(jī)的片內(nèi)電路初始化,使單片機(jī)從一種確定的狀態(tài)開始運(yùn)行。l 當(dāng)MCS-51系列單片機(jī)的復(fù)位引腳 RST出現(xiàn) 5ms以上的高電平時(shí),單片機(jī)就完成了復(fù)位操作。如果RST持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。l 復(fù)

15、位操作通常有2種基本形式: 上電復(fù)位 開關(guān)復(fù)位。 上電后,由于電容充電,使 RST持續(xù)一段高電平時(shí)間。當(dāng)單片 機(jī)已在運(yùn)行過程中時(shí),按下復(fù)位鍵 也能使 RST持續(xù)一段時(shí)間的高電平, 從而實(shí)現(xiàn)上電且開關(guān)復(fù)位的操作。 通常選擇 C=10f ,R=10K。 RST8XX51RCVCC 上電復(fù)位要求接通電源后,自動實(shí)現(xiàn)復(fù)位。 開關(guān)復(fù)位要求在電源接通的條件下,在單片機(jī)運(yùn)行期間,用接鈕開關(guān)操作使單片機(jī)復(fù)位。 常用的上電且開關(guān)復(fù)位電路如圖。圖1-5 復(fù)位電路 單片機(jī)的復(fù)位操作是使SFR寄存器進(jìn)入初始化,不改變片內(nèi)RAM區(qū)中的內(nèi)容。 幾個(gè)主要特殊功能寄存器復(fù)位狀態(tài)歸納如下: l PC=0000H,程序計(jì)數(shù)器為零表明單片機(jī)復(fù)位后程序從0000H地址單元開始執(zhí)行。l A=00H 表明累加器已被清零。l PSW=00H 表明選寄存器0組為工作寄存器組。l SP=07H 表明堆棧指針指向片內(nèi)RAM 07H單元,根據(jù)堆棧操作的先加后壓法則,第一個(gè)被壓入的數(shù)據(jù)被寫入08H單元中。lP0P3=FFH 表明已向各端口線寫入,各端口既可用于輸入又可用于輸出。 51單片機(jī)有單片機(jī)有44和和40個(gè)引腳封裝形式,個(gè)引腳封裝形式, 單片機(jī)是集CPU、存儲器、I/O接口于一體的大規(guī)模集成電路芯片。MCS-51系列單片機(jī)是目前市場上應(yīng)用最廣泛的單片機(jī)機(jī)型。本章重點(diǎn)是單片機(jī)的內(nèi)部結(jié)構(gòu)和存儲

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論