版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、汽車單片機與車載網絡技術(講義)汽車單片機與車載網絡技術(講義)上上 冊冊主講:李鵬偉主講:李鵬偉第三章第第2章章 MCS-51單片機內部結構和原理單片機內部結構和原理 MCS-51單片機是高性能單片機是高性能8位單片機,其代表是位單片機,其代表是8051。該系列其他單片機以。該系列其他單片機以8051為核心,再增加一為核心,再增加一定的功能部件后構成的。定的功能部件后構成的。 在單片機中除了有在單片機中除了有CPU、存儲器和輸入、存儲器和輸入/輸出接輸出接口外,還有定時器口外,還有定時器/計數(shù)器、串行計數(shù)器、串行I/O接口和中斷系統(tǒng)接口和中斷系統(tǒng)等邏輯部件。本章主要介紹等邏輯部件。本章主要介
2、紹MCS-51單片機的基本結單片機的基本結構和功能、存儲器、構和功能、存儲器、I/O口以及單片機的引腳功能等。口以及單片機的引腳功能等。2.1 MCS-51單片機內部結構與封裝單片機內部結構與封裝2.1.1 MCS-51單片機基本結構及功能單片機基本結構及功能 MCS-51單片機是由單片機是由8位位CPU、程序存儲器、程序存儲器(EPROM/ROM)、數(shù)據(jù)存儲器()、數(shù)據(jù)存儲器(RAM)、并行)、并行I/O口、串行口、串行I/O口、定時器口、定時器/計數(shù)器、中斷系統(tǒng)、振計數(shù)器、中斷系統(tǒng)、振蕩器和時鐘電路等部分組成,各部分通過內部總線蕩器和時鐘電路等部分組成,各部分通過內部總線相連。相連。MCS
3、-51單片機系統(tǒng)結構如圖單片機系統(tǒng)結構如圖2-1所示。所示。圖圖2-1 MCS-51單片機系統(tǒng)結構框圖單片機系統(tǒng)結構框圖下面介紹各部分的功能。下面介紹各部分的功能。 中央處理器是中央處理器是MCS-51單片機的核心,完成運算和控單片機的核心,完成運算和控制操作。故制操作。故CPU由運算器和控制器兩大部分組成。由運算器和控制器兩大部分組成。1中央處理器(中央處理器(CPU) (1)運算器。用來完成算術運算、邏輯運算和位操作。)運算器。用來完成算術運算、邏輯運算和位操作。它由算術它由算術/邏輯單元(邏輯單元(ALU)、累加器)、累加器A、寄存器、寄存器B、暫、暫存寄存器、程序狀態(tài)字寄存器存寄存器、
4、程序狀態(tài)字寄存器PSW等組成。等組成。 算術算術/邏輯單元(邏輯單元(ALU)由加法器和相應的控制器)由加法器和相應的控制器邏輯電路組成,可實現(xiàn)邏輯電路組成,可實現(xiàn)8位數(shù)據(jù)的加減乘除算術運算和位數(shù)據(jù)的加減乘除算術運算和與、或等邏輯運算,又具有位處理功能。與、或等邏輯運算,又具有位處理功能。 累加器累加器A是一個非常常用的寄存器。運算時將一是一個非常常用的寄存器。運算時將一個操作數(shù)經暫存寄存器送至個操作數(shù)經暫存寄存器送至ALU,與另一個來自暫存,與另一個來自暫存寄存器的操作數(shù)在寄存器的操作數(shù)在ALU中運算,結果又送入累加器中運算,結果又送入累加器A中。中。 寄存器寄存器B在乘、除運算時用來存放一
5、個操作數(shù),在乘、除運算時用來存放一個操作數(shù),也用來存放結果的一部分。也用來存放結果的一部分。 暫存寄存器用來暫時存放數(shù)據(jù)總線和其他寄存器暫存寄存器用來暫時存放數(shù)據(jù)總線和其他寄存器送來的操作數(shù)。送來的操作數(shù)。 程序狀態(tài)字寄存器程序狀態(tài)字寄存器PSW是狀態(tài)標志寄存器,用來是狀態(tài)標志寄存器,用來保存保存ALU運算結果的特征和處理狀態(tài)。運算結果的特征和處理狀態(tài)。 (2)控制器。用來統(tǒng)一控制和協(xié)調單片機進行工作)控制器。用來統(tǒng)一控制和協(xié)調單片機進行工作的部件。由程序計數(shù)器的部件。由程序計數(shù)器PC、指令寄存器、指令寄存器IR、指令譯碼、指令譯碼器器ID和定時及控制邏輯電路等部分組成。和定時及控制邏輯電路等
6、部分組成。 程序計數(shù)器程序計數(shù)器PC是是16位計數(shù)器,總是存放下一條要位計數(shù)器,總是存放下一條要讀取指令所在存儲單元的讀取指令所在存儲單元的16位地址。每取完一個字節(jié)位地址。每取完一個字節(jié)后后PC自動加自動加1。單片機復位時。單片機復位時PC自動清自動清0,即裝入地,即裝入地址址0000H。 指令寄存器指令寄存器IR用來保存當前正在執(zhí)行的一條指令。用來保存當前正在執(zhí)行的一條指令。 指令譯碼器指令譯碼器ID用來翻譯操作碼,確定所要執(zhí)行的操用來翻譯操作碼,確定所要執(zhí)行的操作。作。 定時與控制邏輯是定時與控制邏輯是CPU的核心部件,它控制讀指令、的核心部件,它控制讀指令、執(zhí)行指令、存取操作數(shù)或運算結
7、果等操作,向其他部執(zhí)行指令、存取操作數(shù)或運算結果等操作,向其他部件發(fā)出各種操作控制信號,協(xié)調各部件工作。件發(fā)出各種操作控制信號,協(xié)調各部件工作。2存儲器存儲器 MCS-51單片機的存儲器物理上設計成程序存儲單片機的存儲器物理上設計成程序存儲器和數(shù)據(jù)存儲器兩個獨立空間。器和數(shù)據(jù)存儲器兩個獨立空間。 MCS-51單片機片內數(shù)據(jù)存儲器共有單片機片內數(shù)據(jù)存儲器共有256BRAM單單元,其中后元,其中后128個單元被特殊功能寄存器占用個單元被特殊功能寄存器占用(80HFFH),供用戶使用的是前),供用戶使用的是前128B單元單元(00H7FH),用于存放運算結果、暫存數(shù)據(jù)和數(shù)),用于存放運算結果、暫存數(shù)
8、據(jù)和數(shù)據(jù)緩存。因此前據(jù)緩存。因此前128B單元簡稱內部單元簡稱內部RAM。 片內程序存儲器為片內程序存儲器為4KBROM,用于存放程序和,用于存放程序和原始數(shù)據(jù),簡稱片內原始數(shù)據(jù),簡稱片內ROM,地址范圍為,地址范圍為0000H07FFH。3定時器定時器/計數(shù)器計數(shù)器 MCS-51單片機有單片機有2個個16位定時器位定時器/計數(shù)器,實現(xiàn)定計數(shù)器,實現(xiàn)定時和計數(shù)功能。時和計數(shù)功能。4并行并行I/O口口 MCS-51單片機有單片機有4個個8位位I/O口,即口,即P0、P1、P2和和P3,實現(xiàn)數(shù)據(jù)并行輸入輸出。,實現(xiàn)數(shù)據(jù)并行輸入輸出。5串行口串行口 MCS-51單片機有一個全雙工串行口(單片機有一個
9、全雙工串行口(UART),),利用利用P3.0(RXD)和)和P3.1(TXD)實現(xiàn)單片機與外設)實現(xiàn)單片機與外設的數(shù)據(jù)傳送。的數(shù)據(jù)傳送。 6中斷控制系統(tǒng)中斷控制系統(tǒng) MCS-51單片機有單片機有5個中斷源,包括個中斷源,包括2個外部中斷,個外部中斷,2個定時個定時/計數(shù)中斷,計數(shù)中斷,1個串行中斷。有高級和低級兩個個串行中斷。有高級和低級兩個優(yōu)先級。優(yōu)先級。7時鐘電路時鐘電路 主要為單片機產生時鐘脈沖序列,石英晶體和微主要為單片機產生時鐘脈沖序列,石英晶體和微調電容需要外接,典型晶振頻率為調電容需要外接,典型晶振頻率為11.0592MHz、12 MHz和和24 MHz,微調電容容量為,微調電
10、容容量為20pF30pF。8總線總線 為了減少單片機的連線和引腳,提高集成度和可為了減少單片機的連線和引腳,提高集成度和可靠性,系統(tǒng)的地址信號、數(shù)據(jù)信號和控制信號都是通靠性,系統(tǒng)的地址信號、數(shù)據(jù)信號和控制信號都是通過總線傳送的,因此有三種總線,即地址總線、數(shù)據(jù)過總線傳送的,因此有三種總線,即地址總線、數(shù)據(jù)總線和控制總線??偩€和控制總線。2.1.2 MCS-51單片機引腳分布及功能單片機引腳分布及功能 圖圖2-2是是89C51的引腳結構圖,有雙列直插封裝的引腳結構圖,有雙列直插封裝(DIP)方式和方形封裝方式。下面分別敘述這些引)方式和方形封裝方式。下面分別敘述這些引腳的功能。腳的功能。 圖圖2
11、-2 89C51的引腳結構的引腳結構1電源引腳電源引腳VCC和和VSS VCC(40腳):電源端,接腳):電源端,接+5V。 VSS(20腳):接地端,有時標為腳):接地端,有時標為GND。2時鐘信號引腳時鐘信號引腳XTAL1和和XTAL2 XTAL1(19腳):接外部晶振和微調電容的一腳):接外部晶振和微調電容的一端,也是外部時鐘源的輸入端。端,也是外部時鐘源的輸入端。 XTAL2(18腳):接外部晶振和微調電容的另腳):接外部晶振和微調電容的另一端,采用外部時鐘源時該腳懸空。判斷單片機的一端,采用外部時鐘源時該腳懸空。判斷單片機的振蕩電路是否正常工作,可用示波器查看振蕩電路是否正常工作,可
12、用示波器查看XTAL2端端是否有脈沖信號輸出。是否有脈沖信號輸出。PSENEA3控制信號引腳控制信號引腳RST、ALE、和和 RST(9腳):復位信號輸入端,高電平有效。腳):復位信號輸入端,高電平有效。 ALE(30腳):地址鎖存允許信號端。腳):地址鎖存允許信號端。CPU訪問片訪問片外存儲器時該引腳輸出信號作為鎖存低外存儲器時該引腳輸出信號作為鎖存低8位地址的控位地址的控制信號。單片機正常工作時該引腳不斷向外輸出正脈制信號。單片機正常工作時該引腳不斷向外輸出正脈沖信號,頻率為振蕩頻率的沖信號,頻率為振蕩頻率的1/6。PSEN (29腳):片外程序存儲允許輸出信號端。腳):片外程序存儲允許輸
13、出信號端。單片模式時該引腳不接。單片模式時該引腳不接。EA (31腳):外部程序存儲器地址允許輸入端。當腳):外部程序存儲器地址允許輸入端。當引腳接高電平時,引腳接高電平時,CPU從片內從片內ROM訪問并從內部程訪問并從內部程序存儲器中的指令執(zhí)行;當引腳接低電平時,序存儲器中的指令執(zhí)行;當引腳接低電平時,CPU只只訪問片外訪問片外ROM并執(zhí)行片外程序存儲器中的指令。并執(zhí)行片外程序存儲器中的指令。4輸入輸入/輸出端口輸出端口P0、P1、P2和和P3 P0口(口(3239腳):腳):8位漏極開路型雙向并行位漏極開路型雙向并行I/O口。口。 P1口(口(18腳):腳):8位具有內部上拉電阻的準雙向位
14、具有內部上拉電阻的準雙向I/O口。口。 P2口(口(2128腳):腳):8位具有內部上拉電阻的準雙向位具有內部上拉電阻的準雙向I/O口???。 P3口(口(1017腳):腳):8位具有內部上拉電阻的準位具有內部上拉電阻的準雙向雙向I/O口,每一位又具有特殊功能(第二功能),口,每一位又具有特殊功能(第二功能),如表如表2-1所示。所示。表表2-1 P3口引腳與特殊功能表口引腳與特殊功能表INT0INT1WRRD端口引腳端口引腳 特殊功能特殊功能P3.0RXD(串行輸入口)(串行輸入口)P3.1TXD(串行輸出口)(串行輸出口)P3.2 (外部中斷(外部中斷0)P3.3 (外部中斷(外部中斷1)P
15、3.4T0(定時器(定時器0的外部輸入)的外部輸入)P3.5T1(定時器(定時器1的外部輸入)的外部輸入)P3.6 (外部數(shù)據(jù)存儲器寫選通)(外部數(shù)據(jù)存儲器寫選通)P3.7 (外部數(shù)據(jù)存儲器讀選通)(外部數(shù)據(jù)存儲器讀選通)2.2 MCS-51單片機內部存儲器單片機內部存儲器 CPU訪問存儲器時,一個地址對應唯一的存儲訪問存儲器時,一個地址對應唯一的存儲器單元,可以是器單元,可以是ROM,也可以是,也可以是RAM,并用同類,并用同類訪問指令,此種存儲器結構稱為訪問指令,此種存儲器結構稱為普林斯頓結構普林斯頓結構。MCS-51單片機的存儲器在物理上是分開的,共有單片機的存儲器在物理上是分開的,共有
16、4個存儲空間:片內程序存儲器、片外程序存儲器、個存儲空間:片內程序存儲器、片外程序存儲器、片內數(shù)據(jù)存儲器和片外數(shù)據(jù)存儲器,這種程序存儲片內數(shù)據(jù)存儲器和片外數(shù)據(jù)存儲器,這種程序存儲器和數(shù)據(jù)存儲器分開的結構形式稱為器和數(shù)據(jù)存儲器分開的結構形式稱為哈佛結構哈佛結構。 MCS-51單片機的存儲器從邏輯上劃分為單片機的存儲器從邏輯上劃分為3個存儲個存儲地址空間:片內外統(tǒng)一編址的地址空間:片內外統(tǒng)一編址的64KB程序存儲器地址程序存儲器地址空間(空間(0000HFFFFH),),64KB片外數(shù)據(jù)存儲器地片外數(shù)據(jù)存儲器地址空間(址空間(0000HFFFFH),),256字節(jié)片內數(shù)據(jù)存儲字節(jié)片內數(shù)據(jù)存儲器地址
17、空間。器地址空間。CPU訪問片內、片外訪問片內、片外ROM指令用指令用MOVC,訪問片外,訪問片外RAM指令用指令用MOVX,訪問片內,訪問片內RAM指令用指令用MOV。圖。圖2-3為為MCS-51單片機的存儲器單片機的存儲器配置。配置。2.2.1 程序存儲器程序存儲器EA 程序存儲器用來存放調試好的應用程序和表格常程序存儲器用來存放調試好的應用程序和表格常數(shù)。內部有數(shù)。內部有ROM的單片機,在正常運行時應把引腳的單片機,在正常運行時應把引腳 接高電平,使程序從內部接高電平,使程序從內部ROM開始執(zhí)行,當開始執(zhí)行,當PC值值超過內部超過內部ROM地址空間時,自動轉向外部地址空間時,自動轉向外部
18、ROM去執(zhí)去執(zhí)行程序。對內部無行程序。對內部無ROM的單片機,應始終接低電平,的單片機,應始終接低電平,迫使迫使CPU從外部從外部ROM取指令。取指令。圖圖2-3 MCS-51單片機的存儲器配置單片機的存儲器配置 64KB程序存儲器中的程序存儲器中的7個入口地址具有特殊功能。個入口地址具有特殊功能。 0000H單元:程序的起始地址,系統(tǒng)復位后單元:程序的起始地址,系統(tǒng)復位后PC的的值為值為0000H,0000H0002H單元用于初始化,一般在單元用于初始化,一般在起始地址單元中設置一條絕對轉移指令使之轉向主程起始地址單元中設置一條絕對轉移指令使之轉向主程序處執(zhí)行。序處執(zhí)行。 其他其他6個特殊功
19、能的入口地址分別對應個特殊功能的入口地址分別對應6種中斷源的種中斷源的中斷服務程序入口地址,如表中斷服務程序入口地址,如表2-2所示。通常在中斷入所示。通常在中斷入口地址處寫一條跳轉指令,跳轉到中斷服務程序處執(zhí)口地址處寫一條跳轉指令,跳轉到中斷服務程序處執(zhí)行。行。表表2-2 中斷向量入口地址表中斷向量入口地址表中中 斷斷 源源入口地址入口地址外部中斷外部中斷00003H定時計數(shù)器定時計數(shù)器T0溢出溢出000BH外部中斷外部中斷10013H定時計數(shù)器定時計數(shù)器T1溢出溢出001BH串行口中斷串行口中斷0023H定時計數(shù)器定時計數(shù)器T2溢出或溢出或T2EX輸入輸入負跳變負跳變002BH2.2.2
20、數(shù)據(jù)存儲器數(shù)據(jù)存儲器 數(shù)據(jù)存儲器數(shù)據(jù)存儲器RAM用于存放運算的中間結果、數(shù)用于存放運算的中間結果、數(shù)據(jù)暫存和緩沖等。數(shù)據(jù)存儲器地址空間由內部和外部據(jù)暫存和緩沖等。數(shù)據(jù)存儲器地址空間由內部和外部數(shù)據(jù)存儲器空間組成,當訪問片內數(shù)據(jù)存儲器空間組成,當訪問片內RAM時,用時,用MOV類指令;當訪問片外類指令;當訪問片外RAM時,則用時,則用MOVX類指令。類指令。 片內數(shù)據(jù)存儲器在物理上又分為三部分:低片內數(shù)據(jù)存儲器在物理上又分為三部分:低128BRAM、高、高128BRAM(僅(僅52系列)和特殊功能寄系列)和特殊功能寄存器(存器(SFR)。)。1片外片外RAM 片外片外RAM與片內與片內RAM的低
21、地址部分(的低地址部分(0000H00FFH)是重疊的。片內)是重疊的。片內RAM使用使用MOV指令,片外指令,片外64KBRAM空間專門為空間專門為MOVX指令所用,采用指令所用,采用R0、R1或或DPTR寄存器間接尋址方式訪問。如寄存器間接尋址方式訪問。如MOVX A,DPTR。2片內片內RAM(1)低)低128BRAM(00H7FH) 片內片內RAM的低的低128BRAM由工作寄存器區(qū)、位尋址由工作寄存器區(qū)、位尋址區(qū)和數(shù)據(jù)緩沖區(qū)組成,如圖區(qū)和數(shù)據(jù)緩沖區(qū)組成,如圖2-4所示。所示。圖圖2-4 低低128BRAM區(qū)區(qū) 00H1FH地址安排為地址安排為4組工作寄存器區(qū),每組有組工作寄存器區(qū),每
22、組有8個個工作寄存器(工作寄存器(R0R7),共占),共占32個單元,見表個單元,見表2-3。通。通過對程序狀態(tài)字過對程序狀態(tài)字PSW中中RS1、RS0的設置,每組寄存器的設置,每組寄存器均可選作均可選作CPU的當前工作寄存器組。的當前工作寄存器組。表表2-3 工作寄存器地址表工作寄存器地址表RS1RS0寄存器組R0R1R2R3R4R5R6R700工作寄存器組000H01H02H03H04H05H06H07H01工作寄存器組108H09H0AH0BH0CH0DH0EH0FH10工作寄存器組210H11H12H13H14H15H16H17H11工作寄存器組38H19H1AH1BH1CH1DH1E
23、H1FH 內部內部RAM中的中的20H2FH是是16個單元的位尋址區(qū),這個單元的位尋址區(qū),這16個單元共有個單元共有128位,其位地址為位,其位地址為00H7FH。所謂位。所謂位尋址是指尋址是指CPU能直接對這些位進行置能直接對這些位進行置“1”、清、清“0”、求、求反、傳送等邏輯操作。反、傳送等邏輯操作。 數(shù)據(jù)緩沖區(qū)是片內數(shù)據(jù)緩沖區(qū)是片內RAM中中30H7FH的的80個單元,個單元,只能以存儲單元的形式使用,一般常把堆棧開辟于此只能以存儲單元的形式使用,一般常把堆棧開辟于此區(qū)中。區(qū)中。(2)高)高128BRAM(80H0FFH) 該存儲區(qū)僅該存儲區(qū)僅52子系列有,只可用間接尋址方式訪問。子系
24、列有,只可用間接尋址方式訪問。(3)特殊功能寄存器()特殊功能寄存器(SFR)()(80H0FFH) 該區(qū)存放相應功能部件的控制命令的狀態(tài)或數(shù)據(jù),該區(qū)存放相應功能部件的控制命令的狀態(tài)或數(shù)據(jù),MCS-51系列單片機的特殊功能寄存器共有系列單片機的特殊功能寄存器共有22個,可個,可直接尋址的有直接尋址的有21個。個。 程序計數(shù)器程序計數(shù)器PC(Program Counter)。)。PC是是16位計數(shù)器,內容為將要執(zhí)行的指令地址,有自動位計數(shù)器,內容為將要執(zhí)行的指令地址,有自動加加1功能,以實現(xiàn)程序順序執(zhí)行。功能,以實現(xiàn)程序順序執(zhí)行。PC沒有地址,不沒有地址,不可以尋址。但在執(zhí)行轉移、調用、返回等指
25、令時自可以尋址。但在執(zhí)行轉移、調用、返回等指令時自動改變其內容實現(xiàn)程序執(zhí)行順序的改變。動改變其內容實現(xiàn)程序執(zhí)行順序的改變。 累加器累加器A(ACC,Accumulator)。)。ACC為為8位寄位寄存器,用于寄放操作數(shù),也是存器,用于寄放操作數(shù),也是ALU運算結果的暫存單運算結果的暫存單元,也是數(shù)據(jù)的中轉站,在變址尋址方式中把累加器元,也是數(shù)據(jù)的中轉站,在變址尋址方式中把累加器作為變址寄存器使用。因此累加器作為變址寄存器使用。因此累加器A使用非常頻繁。使用非常頻繁。 寄存器寄存器B。8位寄存器,主要用于乘、除運算。位寄存器,主要用于乘、除運算。 程序狀態(tài)字程序狀態(tài)字PSW(Program St
26、atus Word)。)。8位位寄存器,寄存指令執(zhí)行的狀態(tài)信息。寄存器,寄存指令執(zhí)行的狀態(tài)信息。 PSW的各位定義如下:的各位定義如下:位位 序序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標志位標志CYACF0RS1RS0OVPPSW各位的功能如下:各位的功能如下: CY(PSW.7)進位標志。加減法運算時如果結果的)進位標志。加減法運算時如果結果的最高位(最高位(D7位)向上有進位或借位,位)向上有進位或借位,CY置置1,否則清,否則清0。在位操作時。在位操作時CY又作為位累加器使用。又作為位累加器使用。 AC(PSW.6)半進位標志。加減運算時如果運
27、算結)半進位標志。加減運算時如果運算結果低半字節(jié)(果低半字節(jié)(D3位)向高半字節(jié)有進位或借位,位)向高半字節(jié)有進位或借位,AC置置1,否則清,否則清0。F0(PSW.5)用戶標志位。)用戶標志位。 RS1、RS0(PSW.4、PSW.3)工作寄存器組選擇控)工作寄存器組選擇控制位。用軟件對制位。用軟件對RS1、RS0作不同組合,以確定工作寄作不同組合,以確定工作寄存器的組號,如表存器的組號,如表2-3所示。所示。 OV(PSW.2)溢出標志。帶符號數(shù)補碼運算時,)溢出標志。帶符號數(shù)補碼運算時,如果有溢出,即當運算結果超出如果有溢出,即當運算結果超出128127的范圍的范圍時,時,OV置置1;無
28、溢出時;無溢出時OV清清0。(PSW.1)為保留位。)為保留位。 P(PSW.0)奇)奇/偶標志。每個指令周期均由硬件來偶標志。每個指令周期均由硬件來置位或清置位或清0,以指出累加器,以指出累加器A中中1的個數(shù)的奇偶性。若的個數(shù)的奇偶性。若1的個數(shù)為奇數(shù),則的個數(shù)為奇數(shù),則P置位,否則清置位,否則清0。 堆棧指針堆棧指針SP。堆棧是一個特殊的存儲區(qū),暫存數(shù)。堆棧是一個特殊的存儲區(qū),暫存數(shù)據(jù)和地址,它是按據(jù)和地址,它是按“先進后出先進后出”的原則存放數(shù)據(jù)的。的原則存放數(shù)據(jù)的。 第一個進棧的數(shù)據(jù)所在的存儲單元稱為棧底,最后進第一個進棧的數(shù)據(jù)所在的存儲單元稱為棧底,最后進棧數(shù)據(jù)的存儲單元叫做棧頂,棧
29、數(shù)據(jù)的存儲單元叫做棧頂,SP是是8位特殊功能寄存器,位特殊功能寄存器,始終指向棧頂在片內始終指向棧頂在片內RAM中的位置,每存或取一字節(jié)數(shù)中的位置,每存或取一字節(jié)數(shù)據(jù)據(jù)SP就自動加或減就自動加或減1,系統(tǒng)復位后,系統(tǒng)復位后SP的初始值為的初始值為07H,即,即堆棧實際從堆棧實際從08H單元開始工作。單元開始工作。 數(shù)據(jù)指針數(shù)據(jù)指針DPTR。DPTR是是16位的特殊功能寄存器,位的特殊功能寄存器,由高由高8位字節(jié)位字節(jié)DPH和低和低8位字節(jié)位字節(jié)DPL組成。用于存放組成。用于存放16位位地址,作間址寄存器和基址寄存器使用,以便訪問片外地址,作間址寄存器和基址寄存器使用,以便訪問片外RAM和和RO
30、M。DPTR可以作為可以作為2個獨立的個獨立的8位寄存器位寄存器DPH和和DPL使用。使用。 并行并行I/O接口接口P0、P1、P2和和P3。均為。均為8位,可以實現(xiàn)位,可以實現(xiàn)數(shù)據(jù)的輸入或輸出。數(shù)據(jù)的輸入或輸出。其余的特殊功能寄存器在以后章節(jié)介紹。其余的特殊功能寄存器在以后章節(jié)介紹。2.3 MCS-51單片機單片機I/O端口電路、時鐘電路與工作方式端口電路、時鐘電路與工作方式2.3.1 MCS-51單片機單片機I/O端口的結構及使用方法端口的結構及使用方法 MCS-51單片機內有單片機內有4個個8位并行位并行I/O口,稱為口,稱為P0、P1、P2和和P3。每個端口都是。每個端口都是8位準雙向
31、位準雙向I/O口,共占口,共占32個引個引腳。每個端口都包含一個鎖存器,一個輸出驅動器和腳。每個端口都包含一個鎖存器,一個輸出驅動器和一個輸入緩沖器。在具有片外擴展存儲器的系統(tǒng)中,一個輸入緩沖器。在具有片外擴展存儲器的系統(tǒng)中,P2口送出高口送出高8位地址,位地址,P0口為雙向總線,分時送出低口為雙向總線,分時送出低8位地址和數(shù)據(jù)的輸入位地址和數(shù)據(jù)的輸入/輸出。輸出。1P0口口 P0口的字節(jié)地址為口的字節(jié)地址為80H,位地址為,位地址為80H87H。圖。圖2-5所示為所示為P0口某一位的結構圖。它由一個輸出鎖存器、口某一位的結構圖。它由一個輸出鎖存器、2個三態(tài)輸入緩沖器和輸出驅動電路及控制電路組
32、成。個三態(tài)輸入緩沖器和輸出驅動電路及控制電路組成。圖中控制信號圖中控制信號C的狀態(tài)決定轉換開關的位置。當?shù)臓顟B(tài)決定轉換開關的位置。當C=0時,時,開關處于圖示位置;當開關處于圖示位置;當C=1時,開關撥向反相器輸出時,開關撥向反相器輸出端位置。端位置。圖圖2-5 P0口某位結構圖口某位結構圖VCC10K(1)P0口用作輸入口用作輸入/輸出口輸出口 當執(zhí)行一條由端口輸入的指令時,當執(zhí)行一條由端口輸入的指令時,“讀引腳讀引腳”脈沖脈沖把三態(tài)緩沖器把三態(tài)緩沖器2打開,這樣,端口引腳上的數(shù)據(jù)經過打開,這樣,端口引腳上的數(shù)據(jù)經過緩沖器緩沖器2讀入到內部總線。在讀入端口引腳數(shù)據(jù)時,讀入到內部總線。在讀入端
33、口引腳數(shù)據(jù)時,由于輸出驅動由于輸出驅動VT2并接在引腳上,如果并接在引腳上,如果VT2導通,就導通,就會將輸入的高電平拉成低電平,產生誤讀。因此在端會將輸入的高電平拉成低電平,產生誤讀。因此在端口執(zhí)行輸入操作前,應先向端口鎖存器寫入口執(zhí)行輸入操作前,應先向端口鎖存器寫入1,也就,也就是使鎖存器是使鎖存器Q的反的值的反的值=0。因為控制線。因為控制線C=0,因此,因此VT1和和VT2全截止,引腳處于懸浮狀態(tài),可作高阻抗全截止,引腳處于懸浮狀態(tài),可作高阻抗輸入。輸入。例如執(zhí)行:例如執(zhí)行: MOV A,P0 CPU執(zhí)行的是執(zhí)行的是“讀引腳讀引腳”的操作,將的操作,將P0口上的數(shù)口上的數(shù)據(jù)讀入累加器據(jù)
34、讀入累加器A,必須注意,執(zhí)行該類輸入指令前必,必須注意,執(zhí)行該類輸入指令前必須把鎖存器寫入須把鎖存器寫入“1”。 當當P0口作為輸出端口時,口作為輸出端口時,CPU執(zhí)行執(zhí)行“讀讀修改修改寫寫”的操作,內部數(shù)據(jù)總線上的數(shù)據(jù)在的操作,內部數(shù)據(jù)總線上的數(shù)據(jù)在“寫鎖存器寫鎖存器”的信號作用下由的信號作用下由D端進入鎖存器,經鎖存器的反相端端進入鎖存器,經鎖存器的反相端送至送至VT2,在經,在經VT2反相,在反相,在P0.X引腳上出現(xiàn)的數(shù)引腳上出現(xiàn)的數(shù)據(jù)正好是內部總線的數(shù)據(jù)。據(jù)正好是內部總線的數(shù)據(jù)。例如執(zhí)行:例如執(zhí)行:ANL P0,A 內部產生的內部產生的“讀鎖存器讀鎖存器”操作信號使鎖存器操作信號使鎖
35、存器Q端數(shù)端數(shù)據(jù)進入內部數(shù)據(jù)總線,在與累加器據(jù)進入內部數(shù)據(jù)總線,在與累加器A進行邏輯運算后,進行邏輯運算后,結果又送回結果又送回P0的接口鎖存器并出現(xiàn)在引腳上。的接口鎖存器并出現(xiàn)在引腳上。(2)P0口用作地址口用作地址/數(shù)據(jù)總線數(shù)據(jù)總線 當系統(tǒng)進行片外當系統(tǒng)進行片外ROM擴展或進行片外擴展或進行片外RAM擴展,擴展,P0口用作地址口用作地址/數(shù)據(jù)總線。數(shù)據(jù)總線。2P1口口 P1口的字節(jié)地址為口的字節(jié)地址為90H,位地址為,位地址為90H97H。圖圖2-6所示為所示為P1口某一位的結構圖。它由一個輸出口某一位的結構圖。它由一個輸出鎖存器、鎖存器、2個三態(tài)輸入緩沖器和輸出驅動電路組成。個三態(tài)輸入緩
36、沖器和輸出驅動電路組成。輸出驅動電路只有一個場效應管輸出驅動電路只有一個場效應管VT1,同時內部帶,同時內部帶上拉電阻。上拉電阻。圖圖2-6 P1口某位結構圖口某位結構圖 P1口可作通用雙向口可作通用雙向I/O口用,不必再外接上拉電阻??谟茫槐卦偻饨由侠娮?。當端口用作輸入時和當端口用作輸入時和P0口一樣,必須先向對應的鎖口一樣,必須先向對應的鎖存器寫入存器寫入“1”,使,使VT1截止,然后讀引腳。截止,然后讀引腳。3P2口口 P2口的字節(jié)地址為口的字節(jié)地址為0A0H,位地址為,位地址為0A0H0A7H。圖圖2-7所示為所示為P2口某一位的結構圖。它由一個輸出鎖存口某一位的結構圖。它由一個輸
37、出鎖存器、器、2個三態(tài)輸入緩沖器和輸出驅動電路及控制電路個三態(tài)輸入緩沖器和輸出驅動電路及控制電路組成。輸出驅動電路只有一個場效應管組成。輸出驅動電路只有一個場效應管VT1,同時內,同時內部帶上拉電阻。部帶上拉電阻。圖圖2-7 P2口某位結構圖口某位結構圖P2口作為輸入口作為輸入/輸出口使用時和輸出口使用時和P0口一樣??谝粯印@鐖?zhí)行:例如執(zhí)行: ANL P2,A CPU執(zhí)行的是執(zhí)行的是“讀讀修改修改寫寫”的操作。內部產生的操作。內部產生的的“讀鎖存器讀鎖存器”操作信號使鎖存器操作信號使鎖存器Q端數(shù)據(jù)進入內部數(shù)端數(shù)據(jù)進入內部數(shù)據(jù)總線,在與累加器據(jù)總線,在與累加器A進行邏輯運算后,結果又送回進行
38、邏輯運算后,結果又送回P2口的接口鎖存器并出現(xiàn)在引腳上。口的接口鎖存器并出現(xiàn)在引腳上。例如執(zhí)行:例如執(zhí)行: MOV A,P2 CPU執(zhí)行的是執(zhí)行的是“讀引腳讀引腳”的操作。將的操作。將P2口鎖存器的口鎖存器的內容送入累加器內容送入累加器A。必須注意,執(zhí)行該類輸入指令前必。必須注意,執(zhí)行該類輸入指令前必須把鎖存器寫入須把鎖存器寫入“1”。 當單片機系統(tǒng)需要進行片外當單片機系統(tǒng)需要進行片外ROM擴展或進行片外擴展或進行片外RAM擴展時,擴展時,P2口可用于輸出高口可用于輸出高8位地址。位地址。4P3口口 P3口的字節(jié)地址為口的字節(jié)地址為0B0H,位地址為,位地址為0B0H0B7H。圖圖2-8所示為
39、所示為P3口某一位的結構圖。它由一個輸出鎖口某一位的結構圖。它由一個輸出鎖存器、存器、3個三態(tài)輸入緩沖器和輸出驅動電路組成。輸個三態(tài)輸入緩沖器和輸出驅動電路組成。輸出驅動電路只有一個場效應管出驅動電路只有一個場效應管VT1,同時內部帶上拉,同時內部帶上拉電阻。比電阻。比P1口多了一個第二功能控制部分的邏輯電口多了一個第二功能控制部分的邏輯電路。路。圖圖2-8 P3口某位結構圖口某位結構圖 P3口是一個多功能端口。圖中口是一個多功能端口。圖中“與非與非”門的作用門的作用是一個開關,決定是輸出鎖存器是一個開關,決定是輸出鎖存器Q端數(shù)據(jù),還是輸出端數(shù)據(jù),還是輸出第二功能(第二功能(W)的信號。當)的
40、信號。當W=1時,輸出時,輸出Q端信號;端信號;當當Q=1時,可輸出時,可輸出W線信號。線信號。 當當P3口作為輸入使用時,同口作為輸入使用時,同P0P2口一樣,先由口一樣,先由軟件向口鎖存器寫軟件向口鎖存器寫1,即使,即使D鎖存器鎖存器Q端保持端保持“1”,“與非與非”門輸出為門輸出為0,場效應管截止,引腳端可作為,場效應管截止,引腳端可作為高阻輸入。當高阻輸入。當CPU執(zhí)行讀命令操作時,使緩沖器執(zhí)行讀命令操作時,使緩沖器2上上的的“讀引腳讀引腳”信號有效,三態(tài)緩沖器信號有效,三態(tài)緩沖器2開通,于是引開通,于是引腳的狀態(tài)經緩沖器腳的狀態(tài)經緩沖器3、緩沖器、緩沖器2送至送至CPU內部總線。內部
41、總線。 當某位被用作第二功能時,該位當某位被用作第二功能時,該位D鎖存器鎖存器Q端被內端被內部硬件自動置部硬件自動置“1”,使,使“與非與非”門對第二功能是暢門對第二功能是暢通的。由于端口不作為通的。由于端口不作為I/O口(不執(zhí)行口(不執(zhí)行MOV A,P3),故),故“讀引腳讀引腳”信號無效,緩沖器信號無效,緩沖器2不通,第二不通,第二輸入功能信號經緩沖器輸入功能信號經緩沖器4送入第二輸入功能端。送入第二輸入功能端。 注意:注意:P0口與其他口不同,它的輸出級無上拉電口與其他口不同,它的輸出級無上拉電阻。阻。P1P3口都是準雙向口,作為輸入時必須先對口都是準雙向口,作為輸入時必須先對相應端口鎖
42、存器寫相應端口鎖存器寫1。2.3.2 MCS-51單片機時鐘電路單片機時鐘電路 時鐘電路用于產生單片機工作所需的時鐘信號。單時鐘電路用于產生單片機工作所需的時鐘信號。單片機是一個復雜的同步時序電路,因此必須受控于唯片機是一個復雜的同步時序電路,因此必須受控于唯一的時鐘信號,而時序所研究的則是指令執(zhí)行時各信一的時鐘信號,而時序所研究的則是指令執(zhí)行時各信號之間的相互時間關系。號之間的相互時間關系。1單片機時鐘電路單片機時鐘電路 單片機芯片內部有一個高增益反相放大器,用于構單片機芯片內部有一個高增益反相放大器,用于構成振蕩器,成振蕩器,XTAL1為反相放大器的輸入端,為反相放大器的輸入端,XTAL2
43、為為輸出端,兩端跨接石英晶體和兩個電容就構成穩(wěn)定的輸出端,兩端跨接石英晶體和兩個電容就構成穩(wěn)定的自激振蕩器。電容器自激振蕩器。電容器C1和和C2通常取通常取30pF左右,可穩(wěn)左右,可穩(wěn)定頻率并對振蕩頻率有微調作用。振蕩脈沖頻率范圍定頻率并對振蕩頻率有微調作用。振蕩脈沖頻率范圍為為fosc=024MHz。 單片機的時鐘電路有兩種方式:內部時鐘方式和單片機的時鐘電路有兩種方式:內部時鐘方式和外部時鐘方式。如圖外部時鐘方式。如圖2-9所示。所示。圖圖2-9 單片機的時鐘電路單片機的時鐘電路2CPU時序的幾個概念時序的幾個概念(1)節(jié)拍與狀態(tài)周期)節(jié)拍與狀態(tài)周期 節(jié)拍(用節(jié)拍(用P表示)是指振蕩脈沖的
44、周期。振蕩脈表示)是指振蕩脈沖的周期。振蕩脈沖經過兩分頻后就是單片機的時鐘信號,把時鐘信沖經過兩分頻后就是單片機的時鐘信號,把時鐘信號的周期定義為狀態(tài)(用號的周期定義為狀態(tài)(用S表示)。即一個狀態(tài)包含表示)。即一個狀態(tài)包含兩個節(jié)拍。兩個節(jié)拍。 時鐘周期也稱為狀態(tài)周期,它是計算機中最基本時鐘周期也稱為狀態(tài)周期,它是計算機中最基本的時間單位。的時間單位。MCS-51單片機中一個時鐘周期為振蕩單片機中一個時鐘周期為振蕩周期的周期的2倍。倍。(2)機器周期和指令周期)機器周期和指令周期 一個機器周期是指一個機器周期是指CPU訪問存儲器一次所需要的訪問存儲器一次所需要的時間,一個機器周期包括時間,一個機器周期包括12個振蕩周期,分為個振蕩周期,分為6個狀個狀態(tài):態(tài):S1S6,每個狀態(tài)又分為兩個節(jié)拍。,每個狀態(tài)又分為兩個節(jié)拍。 指令周期是完成一條指令所需要的時間。指令周期是完成一條指令所需要的時間。MCS-51單片機系統(tǒng)中有單周期指令、雙周期指令和四周期指單片機系統(tǒng)中有單周期指令、雙周期指令和四周期指令。四周期指令只有乘、除兩條指令。令。四周期指令只有乘、除兩條指令。振蕩周期振蕩周期=1/ fosc狀態(tài)周期狀態(tài)周期=2/ fosc機器周期機器周期=12/ fosc指令周期指令周期=(14)機器周期)機器周期2.3.3 MCS-51單片機工作方式單片機工作方式1復位操作復位操作
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度國畫藝術產業(yè)投資合同3篇
- 2024版簡單鋼結構合同
- 二零二五年度建筑工程承包合同標的和工程量清單2篇
- 2024版智慧城市建設項目合同
- 2025年度國際環(huán)保技術引進與實施合同3篇
- 2024影視制作基地建設與運營合同
- 四川文軒職業(yè)學院《大數(shù)據(jù)處理與Mapeduce編程模型實踐》2023-2024學年第一學期期末試卷
- 二零二五版工業(yè)自動化設備安裝施工合同范本2篇
- 二零二五版?zhèn)€人信用擔保車輛購置貸款合同樣本3篇
- 2024暑假大學生創(chuàng)業(yè)項目投資合同
- 分割不動產的協(xié)議書(2篇)
- 菏澤2024年山東菏澤市中心血站招聘15人筆試歷年典型考點(頻考版試卷)附帶答案詳解版
- 供熱通風與空調工程施工企業(yè)生產安全事故隱患排查治理體系實施指南
- 精-品解析:廣東省深圳市羅湖區(qū)2023-2024學年高一上學期期末考試化學試題(解析版)
- 記賬實操-基金管理公司的會計處理分錄示例
- 中國慢性便秘診治指南
- 兒童流感診療及預防指南(2024醫(yī)生版)
- 沐足行業(yè)嚴禁黃賭毒承諾書
- 2025年蛇年紅色喜慶中國風春節(jié)傳統(tǒng)節(jié)日介紹
- 河北省承德市2023-2024學年高一上學期期末物理試卷(含答案)
- 山西省2024年中考物理試題(含答案)
評論
0/150
提交評論