第1章 51單片機結構_第1頁
第1章 51單片機結構_第2頁
第1章 51單片機結構_第3頁
第1章 51單片機結構_第4頁
第1章 51單片機結構_第5頁
已閱讀5頁,還剩47頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、內內 容容 提提 要要vMCS-51MCS-51單片機內部結構單片機內部結構v存存 儲儲 器器v特殊功能寄存器特殊功能寄存器v時鐘電路和復位電路時鐘電路和復位電路v引腳引腳第第1章章 51單片機結構單片機結構1.1 MCS-511.1 MCS-51單片機內部結構單片機內部結構1.1.1 概述概述v所謂單片機,是指在一塊芯片上集成了中央處理器所謂單片機,是指在一塊芯片上集成了中央處理器CPU、隨、隨機存儲器機存儲器RAM、程序存儲器、程序存儲器ROM或或EEPROM、定時、定時/計數(shù)計數(shù)器、中斷控制器以及串行口,并行器、中斷控制器以及串行口,并行I/O接口等部件,構成的接口等部件,構成的一個完整

2、的微型計算機系統(tǒng)。一個完整的微型計算機系統(tǒng)。一個一個8051單片機包含下列部件單片機包含下列部件v一個一個8位微處理器位微處理器CPUv一個片內振蕩器及時鐘電路一個片內振蕩器及時鐘電路v4K片內程序存儲器片內程序存儲器ROMv128B片內數(shù)據(jù)存儲器片內數(shù)據(jù)存儲器RAM(包括特殊功能寄存器(包括特殊功能寄存器SFR)v可尋址可尋址64K外部數(shù)據(jù)存儲器和外部數(shù)據(jù)存儲器和64K外部程序存儲器空間的控制電路外部程序存儲器空間的控制電路v32條可編程條可編程I/O線(線(4個個8位并行位并行I/O端口)端口)v兩個兩個16位定時位定時/計數(shù)器計數(shù)器v一個可編程全雙工串行口一個可編程全雙工串行口v5個中斷

3、原,兩個優(yōu)先級嵌套的中斷控制系統(tǒng)個中斷原,兩個優(yōu)先級嵌套的中斷控制系統(tǒng)v普通型普通型(基本型(基本型 51子系列)子系列)8031、 8051、8751、89C51、89S51等。等。v增強型增強型(52子系列)子系列)8032、8052、8752、89C52、89S52等。它們的結構基本相同,其主等。它們的結構基本相同,其主要差別反映在存儲器的配置上。要差別反映在存儲器的配置上。v8031片內沒有程序存儲器除了老產品,已被淘汰。片內沒有程序存儲器除了老產品,已被淘汰。v8051內部設有內部設有4KB的掩模的掩模ROM程序存儲器程序存儲器v8751是將是將8051片內的片內的ROM換成換成EP

4、ROMv89C51則換成則換成4KB的閃速的閃速EEPROMv89S51結構同結構同89C51, 4KB的閃速的閃速EEPROM可在線編程可在線編程增強型的存儲容量為普通型的一倍增強型的存儲容量為普通型的一倍v 本課以本課以 8XX51 代表這一系列的單片機。代表這一系列的單片機。 (8051)51單片機型號系列單片機型號系列 51系列單片機內部結構如圖系列單片機內部結構如圖1-1所示。所示。圖圖1-1 ( 圖中圖中“/” 兩邊分別為基本型和增強型兩邊分別為基本型和增強型 )P3P1P2 可編程可編程 串行串行I/O口口P0外部中斷外部中斷基準頻率源基準頻率源控制控制 128/256B數(shù)據(jù)存儲

5、器數(shù)據(jù)存儲器 4KB/8KB程序存儲器程序存儲器 2/3個個16位位定時定時/計數(shù)器計數(shù)器 振蕩器及振蕩器及 定時電路定時電路 CPU 64KB總線擴展控制總線擴展控制 可編程可編程并行并行I/O口口內部中斷內部中斷計數(shù)脈沖計數(shù)脈沖串行輸串行輸出出串行輸串行輸入入1.1.2 CPU1.1.2 CPU CPUCPU是單片機的核心部件。它由運算器和控制器是單片機的核心部件。它由運算器和控制器等部件組成。等部件組成。 1 1. 運算器運算器 v運算器的功能是運算器的功能是 算術運算:加、減、乘、除、加算術運算:加、減、乘、除、加1、減、減1、比較、比較BCD碼十碼十進制調整等進制調整等邏輯運算:與、

6、或、異或、求反、循環(huán)等邏輯操作邏輯運算:與、或、異或、求反、循環(huán)等邏輯操作位操作:內置布爾處理器,進位標志位位操作:內置布爾處理器,進位標志位C=C=位累加器,可位累加器,可對位置對位置 “ “1”1”、清、清“0” 0” 、位判斷等。、位判斷等。v操作結果的狀態(tài)信息送至狀態(tài)寄存操作結果的狀態(tài)信息送至狀態(tài)寄存PSW。2.2.程序計數(shù)器程序計數(shù)器PCPC應用重點應用重點v程序計數(shù)器程序計數(shù)器PCPC是是1616位的自動加位的自動加1 1的寄存器,用來存放即將的寄存器,用來存放即將要執(zhí)行的指令要執(zhí)行的指令地址地址,可對,可對64KB64KB程序存儲器直接尋址。程序存儲器直接尋址。v執(zhí)行指令時,執(zhí)行

7、指令時,PCPC內容的低內容的低8 8位經(jīng)位經(jīng)P0P0口口輸出,高輸出,高8 8位經(jīng)位經(jīng)P2P2口口輸輸出,取出指令碼后,出,取出指令碼后,PCPC寄存器內容自動加寄存器內容自動加1 1,指向下一指,指向下一指令碼地址。令碼地址。v?內部?內部ROMROM如何操作?如何操作?3.3.指令寄存器指令寄存器v指令寄存器中存放指令代碼。指令寄存器中存放指令代碼。CPUCPU執(zhí)行指令時,由執(zhí)行指令時,由程序存儲器中讀取的指令代碼送入指令存儲器,經(jīng)程序存儲器中讀取的指令代碼送入指令存儲器,經(jīng)指令譯碼器譯碼后由定時與控制電路發(fā)出相應的控指令譯碼器譯碼后由定時與控制電路發(fā)出相應的控制信號,完成指令功能。制信

8、號,完成指令功能。1.2 存存 儲儲 器器 存儲器用來存放程序和數(shù)據(jù),半導體存儲器由一個一個存儲器用來存放程序和數(shù)據(jù),半導體存儲器由一個一個單元單元組成,組成,每個單元有一個編號(稱為每個單元有一個編號(稱為地址地址),一個單元存放一個),一個單元存放一個8 8位位數(shù)據(jù),當一數(shù)據(jù),當一個數(shù)據(jù)多于個數(shù)據(jù)多于8 8位就需要兩個單元存放。計算機的存儲器地址結構形式有位就需要兩個單元存放。計算機的存儲器地址結構形式有兩種兩種-普林斯頓結構和哈佛結構,見下圖普林斯頓結構和哈佛結構,見下圖: :FFFFH0000HFFFFH0000HFFFFH0000HRAMROMROMRAM64KB(64KB)(64K

9、B)圖圖1-2 1-2 微機存儲器地址結構的兩種形式微機存儲器地址結構的兩種形式 (a) a) 普林斯頓結構普林斯頓結構 (b)(b)哈佛結構哈佛結構普林斯頓結構普林斯頓結構: RAM: RAM和和ROMROM連續(xù)編址在同一地址空間。連續(xù)編址在同一地址空間。哈佛結構哈佛結構: RAM: RAM和和ROMROM分別編址在不同一地址空間,分別編址在不同一地址空間,RAMRAM和和ROMROM可以有相同可以有相同的地址,的地址,CPUCPU靠不同的指令區(qū)別??坎煌闹噶顓^(qū)別。 MCS-51的儲存器采用哈佛結構,它將的儲存器采用哈佛結構,它將ROM(程序(程序存儲器)和存儲器)和RAM (數(shù)據(jù)存儲器數(shù)

10、據(jù)存儲器)分開分開編址編址,各有自己的尋各有自己的尋址方式、控制信號和指令址方式、控制信號和指令。 程序存儲器程序存儲器用來存放程序和始終要保留的常數(shù)。用來存放程序和始終要保留的常數(shù)。 數(shù)據(jù)存儲器數(shù)據(jù)存儲器存放程序運行中所需要數(shù)據(jù)(常數(shù)和變量)存放程序運行中所需要數(shù)據(jù)(常數(shù)和變量)或運算結果。或運算結果。MCS-51單片機的存儲器地址結構:單片機的存儲器地址結構: 從物理空間看從物理空間看,MCS-51有四個存儲器地址空間:有四個存儲器地址空間: 片內數(shù)據(jù)存儲器片內數(shù)據(jù)存儲器 片外數(shù)據(jù)存儲器片外數(shù)據(jù)存儲器 片內程序存儲器片內程序存儲器 片外程序存儲器片外程序存儲器 MCS-51存儲器物理結構見

11、下圖存儲器物理結構見下圖1-3 (a)(b)所示所示外外部部數(shù)數(shù)據(jù)據(jù)存存儲儲器器外外部部程程序序 存存儲儲器器內部程序 存儲器內部數(shù)據(jù) 存儲器8XX51 (a) EA=1 8XX51(a) EA=1 8XX51存儲器的物理地址存儲器的物理地址(EA=1)0000HFFFFH00H1000H0000HFFFFH0FFFH7FH外外部部數(shù)數(shù)據(jù)據(jù)存存儲儲器器外外部部程程序序 存存儲儲器器內部數(shù)據(jù) 存儲器8XX51(b) EA=0 8XX51(b) EA=0 8XX51存儲器的物理地址存儲器的物理地址(EA=0)FFFFH00H0000H0000HFFFFH7FH 由于片內、片外程序存儲器統(tǒng)一編址,因

12、此從邏輯上看由于片內、片外程序存儲器統(tǒng)一編址,因此從邏輯上看, 8XX51有三個存儲器空間:有三個存儲器空間: 片內數(shù)據(jù)存儲器片內數(shù)據(jù)存儲器 片外數(shù)據(jù)存儲器片外數(shù)據(jù)存儲器 片內、片外統(tǒng)一編址的程序存儲器片內、片外統(tǒng)一編址的程序存儲器 因此,引腳因此,引腳EAEA的接法的接法(EA(EA引腳接地還是接引腳接地還是接+5V+5V)決定了程序)決定了程序儲存器的儲存器的000000000FFFH 4KB0FFFH 4KB地址范圍是在單片機片內還是片地址范圍是在單片機片內還是片外外, ,如果接如果接+5V+5V(EA=1)EA=1),程序從片內開始執(zhí)行,如果接地,程序從片內開始執(zhí)行,如果接地(EA=0

13、)EA=0),程序從片外開始執(zhí)行,而不管,程序從片外開始執(zhí)行,而不管 片內是否實際存在程序存儲器。片內是否實際存在程序存儲器。 1.2.1 程序儲存器程序儲存器 程序存儲器用來存放編制好的始終保留的固定程序和程序存儲器用來存放編制好的始終保留的固定程序和表格常數(shù)。程序儲存器以程序計數(shù)器表格常數(shù)。程序儲存器以程序計數(shù)器 PC PC 作為地址指針,作為地址指針,通過通過1616位地址總線,可尋址的地址空間為位地址總線,可尋址的地址空間為64KB64KB。 在在8051/8751/89C51 8051/8751/89C51 片內,分別內置最低地址空間的片內,分別內置最低地址空間的4KB ROM/EP

14、ROM4KB ROM/EPROM程序儲存器(內部程序儲存器),而在程序儲存器(內部程序儲存器),而在80318031片內,則無內部程序儲存器,必須外部擴展片內,則無內部程序儲存器,必須外部擴展EPROMEPROM。MCS-51MCS-51單片機中單片機中64KB64KB內、外程序儲存器的地址是統(tǒng)一編排的。內、外程序儲存器的地址是統(tǒng)一編排的。 80318031單片機無內部程序存儲器,地址從單片機無內部程序存儲器,地址從0000H0000HFFFFHFFFFH都都是外部程序存儲空間。是外部程序存儲空間。 應始終接地。由于程序必須存放在應始終接地。由于程序必須存放在存儲器中,因此它必須外接程序存儲器

15、才能使用,因此,已存儲器中,因此它必須外接程序存儲器才能使用,因此,已被淘汰。被淘汰。 對于內部有對于內部有ROMROM的單片機(的單片機(5151、5252系列)系列) , 引腳接高電平,使程序從內部引腳接高電平,使程序從內部ROMROM開始執(zhí)行。當開始執(zhí)行。當PCPC值超值超出內部出內部ROMROM的容量時,會自動轉向外部程序存儲器空間。外的容量時,會自動轉向外部程序存儲器空間。外部程序存儲器地址空間為部程序存儲器地址空間為1000H1000HFFFFHFFFFH。 訪問程序存儲器使用訪問程序存儲器使用MOVC指令。指令。 PSEN PSEN ? 單片機執(zhí)行程序時由單片機執(zhí)行程序時由PC

16、指示地址指示地址, 復位時復位時PC內容為內容為0000H, 由此由此, 程序必須從程序必須從0號單元開始存放。號單元開始存放。EAEAv 程序存儲器中的幾個特殊地址的使用:程序存儲器中的幾個特殊地址的使用: 地址地址 用途用途 0000H 0000H 復位操作后的程序入口復位操作后的程序入口 0003H 0003H 外部中斷外部中斷0 0服務程序入口服務程序入口 000BH 000BH 定時器定時器0 0中斷服務程序入口中斷服務程序入口 0013H 0013H 外部中斷外部中斷1 1服務程序入口服務程序入口 001BH 001BH 定時器定時器1 1中斷服務程序入口中斷服務程序入口 0023

17、H 0023H 串行口中斷服務程序入口串行口中斷服務程序入口 002BH 002BH 定時器定時器2 2中斷服務程序入口(增強型)中斷服務程序入口(增強型) 由于兩入口地址之間的存儲空間有限,因此在編程時,由于兩入口地址之間的存儲空間有限,因此在編程時,通常在這些入口地址開始的兩三個地址單元中,放入一條轉通常在這些入口地址開始的兩三個地址單元中,放入一條轉移類指令,已使相應的程序轉到指定的程序存儲器區(qū)域中執(zhí)移類指令,已使相應的程序轉到指定的程序存儲器區(qū)域中執(zhí)行。行。v用于存放隨機讀寫的數(shù)據(jù)。用于存放隨機讀寫的數(shù)據(jù)。v外部外部I/OI/O口地址影像區(qū)。口地址影像區(qū)。 MCS-51MCS-51單片

18、機的外部數(shù)據(jù)存儲器和外部單片機的外部數(shù)據(jù)存儲器和外部I/OI/O口實行統(tǒng)口實行統(tǒng)一編址一編址 ,并使用相同的,并使用相同的 作選通控制信號,均使作選通控制信號,均使用用 MOVXMOVX 指令和相同的寄存器間址訪問。指令和相同的寄存器間址訪問。v MCS-51 MCS-51 單片機最多可擴展單片機最多可擴展64KB64KB外部數(shù)據(jù)存儲器外部數(shù)據(jù)存儲器 RD WRRD WR1.2.21.2.2 外部數(shù)據(jù)存儲器外部數(shù)據(jù)存儲器1.2.3 1.2.3 內部數(shù)據(jù)儲存器內部數(shù)據(jù)儲存器 內部數(shù)據(jù)存儲器是使用最多的地址空間,內部數(shù)據(jù)存儲器是使用最多的地址空間,v存放隨機讀寫的數(shù)據(jù)存放隨機讀寫的數(shù)據(jù)v通用寄存器

19、區(qū)通用寄存器區(qū)v堆棧區(qū)堆棧區(qū)v運算操作數(shù)存放區(qū)運算操作數(shù)存放區(qū)v指令(算術運算、邏輯運算、位操作運算等)的操作指令(算術運算、邏輯運算、位操作運算等)的操作數(shù)只能在此地址空間或特殊功能寄存器地址空間。內數(shù)只能在此地址空間或特殊功能寄存器地址空間。內部數(shù)據(jù)存儲器和特殊功能寄存器(部數(shù)據(jù)存儲器和特殊功能寄存器(SFR)SFR)的地址分配見的地址分配見圖圖1-41-4:圖圖1-4 511-4 51單片機的內部單片機的內部RAMRAM和和SFRSFR地址地址 特殊功能特殊功能寄存器寄存器SFR內部RAM7FH80H00HFFH(b) 8XX52(增強型)增強型)地址重合地址重合內部RAM80HFFH內

20、部RAM7FH80H00HFFH特殊功能特殊功能寄存器寄存器SFR(a) 8XX51(普通型)普通型)v51 51 系列單片機內部數(shù)據(jù)存儲器系列單片機內部數(shù)據(jù)存儲器地址范圍地址范圍為為00007FH7FH。各區(qū)。各區(qū)域地址見下表。域地址見下表。(1 1)地址)地址 0 01FH1FH的前的前3232個單元稱為寄存器區(qū)個單元稱為寄存器區(qū)v用途用途: 作通用寄存器作通用寄存器R0R0R7R7。 R0 R0與與R1R1可作間址寄存器使用??勺鏖g址寄存器使用。 在基本型在基本型5151子系列中只有子系列中只有128128字節(jié)字節(jié)RAM,RAM,占地址占地址00-7FH, 00-7FH, SFRSFR占

21、地址占地址80H-FFH,80H-FFH,在增強型在增強型5252子系列中有子系列中有256256字節(jié)字節(jié)RAM,RAM,占地占地址址00-FFH,00-FFH,其中其中80H-FFH80H-FFH地址的地址的RAM RAM 和和SFR 80H-FFHSFR 80H-FFH占的地占的地址是重合的址是重合的,CPU,CPU訪問內部訪問內部RAMRAM和訪問和訪問SFRSFR的指令是相同的,所的指令是相同的,所訪問的地址究竟是訪問的地址究竟是RAMRAM還是還是SFRSFR呢,靠尋址方式區(qū)別,訪問呢,靠尋址方式區(qū)別,訪問SFRSFR用直接地址(稱為直接尋址)訪問用直接地址(稱為直接尋址)訪問RAM

22、RAM采用寄存器間接尋采用寄存器間接尋址。址。使用時應注意使用時應注意:3232個單元的寄存器區(qū)分為四組,使用時只能選其中一組寄存器個單元的寄存器區(qū)分為四組,使用時只能選其中一組寄存器。v寄存器的選組由程序狀態(tài)字寄存器的選組由程序狀態(tài)字PSWPSW的的RS1RS1和和RS0RS0位定。位定。 RS1 RS0 RS1 RS0 選寄存器組選寄存器組 0 0 00 0 0組組 0 1 10 1 1組組 1 0 21 0 2組組 1 1 31 1 3組組 v初始化時或復位時,自動選中初始化時或復位時,自動選中0 0組。組。v一旦選中一組,其它三組只能作為數(shù)據(jù)存儲器使用,而不能一旦選中一組,其它三組只能

23、作為數(shù)據(jù)存儲器使用,而不能作為寄存器使用。作為寄存器使用。v設置多組寄存器可以方便保護現(xiàn)場。設置多組寄存器可以方便保護現(xiàn)場。 (2 2)20H20H2FH2FH為位地址區(qū)為位地址區(qū) 共共1616個單元,每單元有八個位,每位有一個位地址,共個單元,每單元有八個位,每位有一個位地址,共128128位,位地址范圍為位,位地址范圍為00H00H7FH7FH,該區(qū)既可位尋址,又可字,該區(qū)既可位尋址,又可字節(jié)尋址。節(jié)尋址。 如如 MOV 20HMOV 20H,C C ( (這里這里C C是是CyCy進位標志位),該指令是將進位標志位),該指令是將CyCy內內容送容送20H20H位位, ,如果如果CyCy1

24、 1,位,位20H20H值為值為“1”1”。(3 3)除選中的寄存組以外的存儲器均可以作為通用)除選中的寄存組以外的存儲器均可以作為通用RAMRAM區(qū)。區(qū)。 (4 4)堆棧區(qū))堆棧區(qū) 8XX518XX51單片機的堆棧設在內部單片機的堆棧設在內部RAMRAM區(qū),深度不大于區(qū),深度不大于128128字字節(jié),初始化時節(jié),初始化時SPSP指向指向07H07H。注:注: 對對5151基本型單片機只有基本型單片機只有00H00H7FH7FH單元單元128128字節(jié)的字節(jié)的RAMRAM區(qū)。區(qū)。對對5252增強型的單片機還有增強型的單片機還有80H80HFFHFFH組成的高組成的高128128字節(jié)字節(jié)RAMR

25、AM區(qū)區(qū)(共(共256256字節(jié)字節(jié)RAM RAM )。)。 1.3特殊功能寄存器特殊功能寄存器 MCS-51MCS-51單片機共有單片機共有2121個字節(jié)的特殊功能寄存器用英文縮個字節(jié)的特殊功能寄存器用英文縮寫寫SFR SFR (Special Fuction RegisterSpecial Fuction Register)表示。)表示。1.1.用途:用途:vA A 累加器、狀態(tài)標志寄存器累加器、狀態(tài)標志寄存器v單片機內部各部件專用的控制、狀態(tài)寄存器單片機內部各部件專用的控制、狀態(tài)寄存器v并行口、串行口影射寄存器并行口、串行口影射寄存器2.2.地址空間:地址空間:v2121個特殊功能器不連

26、續(xù)的分布在個特殊功能器不連續(xù)的分布在80H80HFFH 128FFH 128個字節(jié)地址個字節(jié)地址空間,見表空間,見表1-21-2。v地址為地址為X0HX0H和和X8HX8H是可位尋址的寄存器,表是可位尋址的寄存器,表1-21-2中用中用“* *”表表示。示。 表表1-21-2中還標注了各中還標注了各SFRSFR的名稱、字節(jié)地址、可尋址位的名稱、字節(jié)地址、可尋址位的位地址和位名稱。的位地址和位名稱。 2121個特殊功能寄存器的名稱及主要功能介紹如下,詳細個特殊功能寄存器的名稱及主要功能介紹如下,詳細的用法見后面各節(jié)的內容。的用法見后面各節(jié)的內容。 A A累加器,自帶有全零標志累加器,自帶有全零標

27、志Z Z,A=0A=0則則Z=1Z=1;A0A0則則Z=0Z=0。該標志常用于程序分支轉移的判斷條件。該標志常用于程序分支轉移的判斷條件。 B B寄存器,常用于乘除法運算(見第寄存器,常用于乘除法運算(見第2 2章)。章)。 PSWPSW程序狀態(tài)字。主要起著標志寄存器的作用,其程序狀態(tài)字。主要起著標志寄存器的作用,其8 8位位定義見表定義見表1-31-3。 其中其中 CYCY:進:進/ /借位標志借位標志 反映最高位的進位借位情況,加法為進位、減法為借位。反映最高位的進位借位情況,加法為進位、減法為借位。 CY=1CY=1,有進,有進/ /借位借位 ; CY=0CY=0,無進,無進/ /借位。

28、借位。 ACAC:輔助進:輔助進/ /借位標志借位標志 反映高半字節(jié)與低半字節(jié)之間的進反映高半字節(jié)與低半字節(jié)之間的進/ /借位,借位, AC=1AC=1有進有進/ /借位;借位; AC=0AC=0無進無進/ /借位借位 。 FOFO:用戶標志位。可由用戶設定其含義。:用戶標志位??捎捎脩粼O定其含義。 RS1RS1,RS0RS0:工作寄存器組選擇位。:工作寄存器組選擇位。 D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0 RS1 RS0 OV P位地址位地址位名稱位名稱 OV OV:溢出標志:溢出標志 反映補碼運算的運算結果有無溢出反映補碼運算的運算結果有無溢出 有溢出有溢出 O

29、V=1OV=1,無溢出,無溢出OV=0OV=0。 - -:無效位。:無效位。 P P:奇偶標志:奇偶標志 運算結果有奇?zhèn)€運算結果有奇?zhèn)€“1”1”,P=1P=1; 運算結果有偶個運算結果有偶個“1”1”,P=0P=0。 影響標志位的指令及其影響方式見第影響標志位的指令及其影響方式見第2 2章。章。 SPSP堆棧指針。堆棧指針。8XX518XX51單片機的堆棧設在片內單片機的堆棧設在片內RAMRAM, 對堆棧的操作包括壓入(對堆棧的操作包括壓入(PUSHPUSH)和彈出()和彈出(POPPOP)兩種方式,)兩種方式,并且遵循后進先出的原則,但在堆棧生成的方向上,與并且遵循后進先出的原則,但在堆棧生

30、成的方向上,與80868086正好相反正好相反8XX518XX51單片機的堆棧操作遵循先加后壓,先單片機的堆棧操作遵循先加后壓,先彈后減的順序,按字節(jié)進行操作。彈后減的順序,按字節(jié)進行操作。 DPTRDPTR數(shù)據(jù)指針寄存器數(shù)據(jù)指針寄存器 用來存放用來存放1616位地址值,以便用間接尋址或變址尋址位地址值,以便用間接尋址或變址尋址片外存儲器。片外存儲器。DPTRDPTR可分成可分成DPLDPL和和DPHDPH兩個兩個8 8位寄存器分別使位寄存器分別使用。用。P0 P1 P2 P3P0 P1 P2 P3I/OI/O端口寄存器端口寄存器 是四個并行是四個并行I/OI/O端口映射入端口映射入SFRSF

31、R中的寄存器。通過對中的寄存器。通過對該寄存器的讀該寄存器的讀/ /寫,可實現(xiàn)從相應寫,可實現(xiàn)從相應I/OI/O端口的輸入端口的輸入/ /輸出。輸出。 例如:指令例如:指令 MOV P1MOV P1,A A實現(xiàn)了把實現(xiàn)了把A A累加器中的內容從累加器中的內容從P P1 1端端口輸出的操作。指令口輸出的操作。指令MOV AMOV A,P3P3實現(xiàn)了把實現(xiàn)了把P3P3端口線上的信端口線上的信息輸入到息輸入到A A中的操作。中的操作。此外還有如下寄存器,它們將在后面章節(jié)介紹:此外還有如下寄存器,它們將在后面章節(jié)介紹:IPIP中斷優(yōu)先級控制寄存器。中斷優(yōu)先級控制寄存器。IEIE中斷允許控制寄存器。中斷

32、允許控制寄存器。 TMODTMOD定時器定時器/ /計數(shù)器方式控制寄存器。計數(shù)器方式控制寄存器。TCONTCON定時器定時器/ /計數(shù)器控制寄存器。計數(shù)器控制寄存器。THTH0 0,TLTL00定時器定時器/ /計數(shù)器計數(shù)器0 0。THTH1 1,THTH11定時器定時器/ /計數(shù)器計數(shù)器1 1。SCONSCON串行端口控制寄存器。串行端口控制寄存器。SBUFSBUF串行數(shù)據(jù)緩沖器。串行數(shù)據(jù)緩沖器。 PCONPCON電源控制寄存器。電源控制寄存器。注:注: 在在5252子系列中,高子系列中,高128128字節(jié)字節(jié)RAMRAM和和SFRSFR的地的地址是重疊的,究竟訪問哪一塊可通過不同的尋址是重

33、疊的,究竟訪問哪一塊可通過不同的尋址方式加以區(qū)分,訪問高址方式加以區(qū)分,訪問高128128字節(jié)字節(jié)RAMRAM采用寄存采用寄存器間址,訪問器間址,訪問SFRSFR則只能采用直接尋址,訪問低則只能采用直接尋址,訪問低128128字節(jié)字節(jié)RAMRAM時,兩種尋址均可采用。時,兩種尋址均可采用。 1.4 時鐘電路與復位電路時鐘電路與復位電路內部振蕩方式內部振蕩方式: 在引腳在引腳 XTAL1 1和和 XTAL2XTAL2外外接晶體振蕩器(簡稱晶振)如接晶體振蕩器(簡稱晶振)如v圖圖1-51-5所示。所示。電容器電容器C01、C02v起穩(wěn)定振蕩頻率、快速起振的起穩(wěn)定振蕩頻率、快速起振的v作用。電容值一

34、般為作用。電容值一般為 530PF。XTAL1XTAL2GND8XX51C01C01C02C02圖圖1-5 1-5 內部振蕩方式內部振蕩方式 單片機的時鐘信號用來提供單片機內各種微操作時間基準,單片機的時鐘信號用來提供單片機內各種微操作時間基準,8XX51單片機的時鐘信號通常有兩種電路形式:單片機的時鐘信號通常有兩種電路形式:內部振蕩方式內部振蕩方式和和外部振蕩方式外部振蕩方式。 由于單片機內部有一個高增益運算放大器,當外接晶振由于單片機內部有一個高增益運算放大器,當外接晶振后,就構成了自激振蕩器并產生振蕩時鐘脈沖。后,就構成了自激振蕩器并產生振蕩時鐘脈沖。 外部振蕩方式外部振蕩方式是把是把已

35、有的時鐘信號引入單已有的時鐘信號引入單片機。這種方式適宜用片機。這種方式適宜用于使單片機的時鐘與外于使單片機的時鐘與外部信號保持一致。外部部信號保持一致。外部振蕩方式如圖振蕩方式如圖1-61-6所示。所示。對于對于51系列的單片機的外部時鐘由系列的單片機的外部時鐘由XTAL1引入。引入。外部外部時鐘時鐘懸空懸空XTAL1XTAL2GND8XX51外部外部時鐘時鐘圖圖1 16 6 外部振蕩方式外部振蕩方式單片機的時序單位有:單片機的時序單位有:v振蕩周期:振蕩周期:晶振的振蕩周期,又稱時鐘周期,為晶振的振蕩周期,又稱時鐘周期,為最小的時序單位。最小的時序單位。v狀態(tài)周期:振蕩頻率經(jīng)單片機內的二分

36、頻器分頻狀態(tài)周期:振蕩頻率經(jīng)單片機內的二分頻器分頻后提供給片內后提供給片內CPUCPU的時鐘周期。因此,一個狀態(tài)的時鐘周期。因此,一個狀態(tài)周期包含周期包含2 2個振蕩周期。個振蕩周期。v機器周期(機器周期(MCMC):):1 1個機器周期由個機器周期由6 6個狀態(tài)周期及個狀態(tài)周期及1212個振蕩周期組成。是計算機執(zhí)行一種基本操作個振蕩周期組成。是計算機執(zhí)行一種基本操作的時間單位。的時間單位。1.4.2 基本時序單位基本時序單位v指令周期指令周期 執(zhí)行一條指令所需的時間。一個指令周期由執(zhí)行一條指令所需的時間。一個指令周期由1 14 4個機器周期組成,依據(jù)指令不同而不同。個機器周期組成,依據(jù)指令不

37、同而不同。 4 4種時序單位中,振蕩周期和機器周期是單片機內計算其種時序單位中,振蕩周期和機器周期是單片機內計算其他時間值(例如,波特率、定時器的定時時間等)的基本他時間值(例如,波特率、定時器的定時時間等)的基本時序單位。時序單位。 例:單片機外接晶振頻率例:單片機外接晶振頻率12MHZ12MHZ時的各種時序單位:時的各種時序單位: 振蕩周期振蕩周期=1/fosc=1/12MHZ=0.0833us=1/fosc=1/12MHZ=0.0833us 狀態(tài)周期狀態(tài)周期=2/fosc=2/12MHZ=0.167us=2/fosc=2/12MHZ=0.167us 機器周期機器周期=12/fosc=12

38、/12MHZ=1us=12/fosc=12/12MHZ=1us 指令周期指令周期=(1=(14)4)機器周期機器周期=1=14us4us復位操作則使單片機的片內電路初始化,使單片機從一種確復位操作則使單片機的片內電路初始化,使單片機從一種確定的狀態(tài)開始運行。定的狀態(tài)開始運行。v 當當MCS-51MCS-51系列單片機的復位引腳系列單片機的復位引腳 RSTRST出現(xiàn)出現(xiàn) 5 5msms以上的以上的高電平時,單片機就完成了復位操作。如果高電平時,單片機就完成了復位操作。如果RSTRST持續(xù)為高持續(xù)為高電平,單片機就處于循環(huán)復位狀態(tài)。電平,單片機就處于循環(huán)復位狀態(tài)。v 復位操作通常有復位操作通常有2

39、 2種基本形式:種基本形式: 上電復位和開關復位。上電復位和開關復位。上電復位上電復位要求要求一接通電源一接通電源后,自動實現(xiàn)復位。后,自動實現(xiàn)復位。開關復位開關復位要求在電源接通的條件下,要求在電源接通的條件下,單片機運行期單片機運行期 間或發(fā)間或發(fā)生死機狀態(tài)時控制其退出程序,通過操作按鈕開關使其復生死機狀態(tài)時控制其退出程序,通過操作按鈕開關使其復位。位。1.4.3 1.4.3 復位電路復位電路 上電后,由于電容充電,使上電后,由于電容充電,使 RSTRST持續(xù)一段高電平時間。當單片持續(xù)一段高電平時間。當單片 機已在運行過程中時,按下復位鍵機已在運行過程中時,按下復位鍵 也能使也能使 RST

40、RST持續(xù)一段時間的高電平,持續(xù)一段時間的高電平, 從而實現(xiàn)上電且開關復位的操作。從而實現(xiàn)上電且開關復位的操作。 通常選擇通常選擇 C=10C=10 f ,R=10Kf ,R=10K 。 RST8XX51RCVCC 常用的上電且開關復位電路如常用的上電且開關復位電路如 圖圖1-7 1-7 所示。所示。圖1-7 復位電路 單片機的復位操作是使單片機的復位操作是使SFRSFR寄存器進入初始化,不改變寄存器進入初始化,不改變片內片內RAMRAM區(qū)中的內容。區(qū)中的內容。 幾個主要特殊功能寄存器復位狀態(tài)幾個主要特殊功能寄存器復位狀態(tài)歸納如下:歸納如下: v PC=0000HPC=0000H,程序計數(shù)器為

41、零表明單片機復位后程序從,程序計數(shù)器為零表明單片機復位后程序從0000H0000H地址單元開始執(zhí)行。地址單元開始執(zhí)行。v A=00H 表明累加器已被清零。表明累加器已被清零。v PSW=00H 表明選寄存器表明選寄存器0組為工作寄存器組。組為工作寄存器組。v SP=07H 表明堆棧指針指向片內表明堆棧指針指向片內RAM 07H單元,單元,根據(jù)堆棧操作的先加后壓法則,第一個被壓入的數(shù)據(jù)被寫根據(jù)堆棧操作的先加后壓法則,第一個被壓入的數(shù)據(jù)被寫入入08H單元中。單元中。v P0P3=FFH 表明已向各端口線寫入,各端口既表明已向各端口線寫入,各端口既可用于輸入又可用于輸出??捎糜谳斎胗挚捎糜谳敵觥記

42、住一些特殊功能寄存器復位后的主要記住一些特殊功能寄存器復位后的主要狀態(tài),對于熟悉單片機操作,減短應用狀態(tài),對于熟悉單片機操作,減短應用程序中的初始化部分是十分必要的。程序中的初始化部分是十分必要的。 其它的特殊功能寄存器復位后的狀態(tài)其它的特殊功能寄存器復位后的狀態(tài)見教材表見教材表1-41-4。1.5 引腳功能引腳功能 根據(jù)單片機的引腳多少,有根據(jù)單片機的引腳多少,有可總線擴展的可總線擴展的單片機單片機和和 不可總線擴展的不可總線擴展的單片機。單片機。 單片機內部資源十分豐富,如果單片機內部資源十分豐富,如果設計大系統(tǒng),內設計大系統(tǒng),內部資源不夠,還需要擴展外部存儲器或部資源不夠,還需要擴展外部

43、存儲器或I/O接口,需要接口,需要選擇可總線擴展的單片機。這種單片機有地址總線、選擇可總線擴展的單片機。這種單片機有地址總線、數(shù)據(jù)總線等引腳,引腳通常多于數(shù)據(jù)總線等引腳,引腳通常多于40個。個。 有的系統(tǒng)較小,單片機內部資源足夠需求,有的系統(tǒng)較小,單片機內部資源足夠需求, 無需無需擴展外圍芯片,為減小體積,縮小擴展外圍芯片,為減小體積,縮小PCB(印刷電路板印刷電路板)面積,可選擇不可總線擴展的單片機,它們省去總線面積,可選擇不可總線擴展的單片機,它們省去總線引腳,引腳只有引腳,引腳只有20個。個。 兩種單片機它們內部資源一樣、指令系統(tǒng)兼容兩種單片機它們內部資源一樣、指令系統(tǒng)兼容各個引腳的功能

44、說明如下。各個引腳的功能說明如下。Vss:接地端。接地端。Vcc:電源端,接電源端,接+5V。XTAL1,XTAL2:接外部晶體或外部時鐘。接外部晶體或外部時鐘。 RST/VPDRST/VPD: 復位信號輸入。復位信號輸入。 接備用電源。掉電后,接備用電源。掉電后,在低功耗條件下保持內部在低功耗條件下保持內部RAMRAM中的數(shù)據(jù)。中的數(shù)據(jù)。圖1-81.5.11.5.1可總線擴展的單片機引腳可總線擴展的單片機引腳 可總線擴展的單片機有可總線擴展的單片機有4444個個引腳的方形封裝和引腳的方形封裝和4040個引腳的個引腳的雙列直插式封裝形式,最常用雙列直插式封裝形式,最常用的的4040個引腳封裝,

45、見右圖。個引腳封裝,見右圖。vALE/PROGALE/PROG: ALE ALE 地址鎖存允許。地址鎖存允許。 ALEALE輸出脈沖的頻率為振蕩頻率輸出脈沖的頻率為振蕩頻率 的的1/61/6。 PROG PROG 對對8XX518XX51單片機片內單片機片內 EPROM EPROM 編程時,編程脈沖由該引腳編程時,編程脈沖由該引腳引入。引入。vPSEN PSEN :程序存儲器允許。輸出讀外部程序存儲器的選通信號。:程序存儲器允許。輸出讀外部程序存儲器的選通信號。vEA/VPPEA/VPP: EA =0 EA =0,單片機只訪問外部程序存儲器。,單片機只訪問外部程序存儲器。 EA =1EA =1

46、,單片機訪問內部程序存儲器。,單片機訪問內部程序存儲器。 在在8XX518XX51單片機片內單片機片內EPROMEPROM編程期間,此引腳引入編程期間,此引腳引入21V21V編程電源編程電源VPPVPP。v P0.0P0.0P0.7P0.7:P0P0口,數(shù)據(jù)口,數(shù)據(jù)/ /低八位地址復用總線端口。低八位地址復用總線端口。v P1.0P1.0P1.7P1.7:P1P1口,靜態(tài)通用端口??冢o態(tài)通用端口。v P2.0P2.0P2.7P2.7:P2P2口,高八位地址總線端口。口,高八位地址總線端口。 v P3.0P3.0P3.7P3.7:P3P3口,雙功能靜態(tài)端口??冢p功能靜態(tài)端口。 在增強型的在增

47、強型的52系列單片機中,系列單片機中,P1.0、P1.1除為端口線外,除為端口線外,還為定時還為定時/計數(shù)器計數(shù)器2的外部引腳的外部引腳 T2和和2EX。 在在ISP型的型的51單片機單片機(89S51/89S52)中,中,P1.5、P1.6、 P1.7除為端口線外,還為在線編程的數(shù)據(jù)輸入、輸出線和編除為端口線外,還為在線編程的數(shù)據(jù)輸入、輸出線和編程時鐘線。程時鐘線。圖圖1-9 在在51系列單片機的系列單片機的2051/1051型號中因無型號中因無P0口和口和P2口總線引腳,因此只有口總線引腳,因此只有20個引腳個引腳(見圖(見圖1-9),由于不能進行外),由于不能進行外部擴展,因此無部擴展,

48、因此無PSEN引腳,它引腳,它們內部有一個模擬比較器,相比們內部有一個模擬比較器,相比較的模擬信號由較的模擬信號由P1.0(AIN0)和)和P1.1(AIN1)輸入,而模擬比較)輸入,而模擬比較器的輸出接器的輸出接P3.6,在內部已連接,在內部已連接,因此外部無因此外部無P3.6引腳。由于體積引腳。由于體積小,占用小,占用PCB(印刷電路板)面印刷電路板)面積小積小, 產品中也使用較多。產品中也使用較多。1.5.2 1.5.2 不可總線擴展的單片機引腳不可總線擴展的單片機引腳1.6 小小 結結 單片機是集單片機是集CPUCPU、存儲器、存儲器、I/OI/O接口于一體的接口于一體的大規(guī)模集成電路

49、芯片。大規(guī)模集成電路芯片。8XX518XX51系列單片機是目前系列單片機是目前市場上應用最廣泛的單片機機型。市場上應用最廣泛的單片機機型。本章重點是單片機的內部結構和存儲器結構本章重點是單片機的內部結構和存儲器結構 51系列系列單片機內部包含:單片機內部包含:v 一個一個8 8位的位的CPUCPU。v 4KB4KB程序存儲器程序存儲器ROMROM(視不同產品型號不同:(視不同產品型號不同:80318031內部無內部無ROMROM;80518051內部為掩模式內部為掩模式ROMROM;87518751為為EPROMEPROM;89C5189C51內部為內部為FLASH EEPROMFLASH E

50、EPROM)。)。v 128128字節(jié)字節(jié)RAMRAM數(shù)據(jù)存儲器。數(shù)據(jù)存儲器。v兩個兩個1616位定時器位定時器/ /計數(shù)器。計數(shù)器。v可尋址可尋址64KB64KB外部數(shù)據(jù)存儲器和外部數(shù)據(jù)存儲器和64KB64KB外部程序存儲器空間的外部程序存儲器空間的控制電路??刂齐娐贰3232條可編程的條可編程的I/OI/O線(四個線(四個8 8位并行位并行I/OI/O端口)。端口)。 v一個可編程全雙工串行口。一個可編程全雙工串行口。v具有兩個優(yōu)先級嵌套中斷結構的五個中斷源。具有兩個優(yōu)先級嵌套中斷結構的五個中斷源。 掌握掌握51系列單片機各存儲空間的地址分配,使用特點及系列單片機各存儲空間的地址分配,使用特點及數(shù)據(jù)操作方法。現(xiàn)將此內容歸納于教材表數(shù)據(jù)操作方法?,F(xiàn)將此內容歸納于教材表1-5中,此表是中,此表是編程和硬件擴展的基礎,相當重要,務必要熟記和掌握。編程和硬件擴展的基礎,相當重要,務必要熟記和掌握。 時鐘電路和復位電路對嵌入式系統(tǒng)是很重要的時鐘電路和復位電路對嵌入式系統(tǒng)是很重要的v計算機內部都是

溫馨提示

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

評論

0/150

提交評論