




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
11第2章AT89C51單片機
硬件結構
2AT89C51的片內硬件基本結構、引腳功能、存儲器結構、特殊功能寄存器功能、4個并行I/O口的結構和特點。復位電路和時鐘電路的設計。目的:本章學習為AT89C51系統的應用設計打下基礎。內容概要:33
第2章目錄2.1AT89C51單片機的片內結構2.2AT89C51的引腳功能2.3AT89C51的CPU2.4AT89C51存儲器的結構2.5AT89C51的并行I/O端口2.6時鐘電路與時序2.7復位操作和復位電路442.1AT89C51單片機的片內結構
把作為控制應用所必需的基本功能部件都集成在一個尺寸有限的集成電路芯片上。AT89C51單片機片內結構5(1)CPU(微處理器)
8位的CPU,與通用CPU基本相同,同樣包括了運算器和控制器兩大部分,還有面向控制的位處理功能。5(2)數據存儲器(RAM)片內為128B(52子系列為256B),片外最多可擴64KB。片內128B的RAM以高速RAM的形式集成,可加快單片機運行的速度和降低功耗。(3)程序存儲器(FlashROM)片內集成有4KB的Flash存儲器(AT89C52則為8KB;AT89C55片內20KB),如片內容量不夠,片外可外擴至64KB。有如下功能部件組成:
6(4)中斷系統具有5個中斷源,2級中斷優先權。(5)定時器/計數器2個16位定時器/計數器(52子系列有3個),4種工作方式。6(6)串行口1個全雙工的異步串行口,4種工作方式??蛇M行串行通信,擴展并行I/O口,還可與多個單片機構成多機系統。(7)P1口、P2口、P3口、P0口4個8位并行I/O口。(8)特殊功能寄存器(SFR)21個,對片內各功能部件管理、控制和監視。是各個功能部件的控制寄存器和狀態寄存器,映射在片內RAM區80H~FFH內。72.2AT89C51的引腳功能
AT89S51與51系列中各種型號芯片的引腳互相兼容。目前多采用40只引腳雙列直插,如圖2-2所示。引腳按其功能可分為如下3類:(1)電源及時鐘引腳—VCC、VSS;XTAL1、XTAL2。(2)控制引腳—
、ALE、、RST(RESET)(3)I/O口引腳——P0、P1、P2、P3,為4個8位I/O口引腳782.2.1電源及時鐘引腳1.電源引腳(1)VCC(40腳):+5V電源。(2)VSS(20腳):接地。8圖2-2
AT89C51雙列直插封裝方式的引腳2.時鐘引腳
(1)XTAL1(19腳):片內振蕩器輸入端、外接時鐘源時,接時鐘源的輸入信號。(2)XTAL2(18腳):片內振蕩器的輸出端、采用外接時鐘源時懸空。9(2)
/VPP(EnableAddress/VoltagePulseofPrograming,31腳)
EA:為內外程序存儲器選擇控制端。
EA=1,訪問片內程序存儲器,但在PC(程序計數器)值超出片內程序存儲器地址范圍時(0FFFH),將自動轉向執行外部程序存儲器內的程序;
EA=0,只訪問外部程序存儲器。
VPP:本引腳的第二功能,對片內Flash編程,接編程電壓。對89C51,加在VPP腳的編程電壓為+12V或+5V。2.2.2控制引腳(1)RST(RESET,9腳)復位信號輸入,在引腳加上持續時間大于2個機器周期的高電平,可使單片機復位。10(3)ALE/(30腳)
ALE:為CPU訪問外部程序存儲器或外部數據存儲器提供地址鎖存信號,將P0口發出的低8位地址鎖存在片外的地址鎖存器中,P0口再作為數據端口。10:引腳第二功能,對片內
Flash編程,為編程脈沖輸入腳。(4)
(29腳)外部程序存儲器的讀選通信號。低電平有效。接外部程序存儲器的OE端。112.2.3I/O口引腳(1)P0口:8位,雙向I/O口當外擴存儲器及I/O接口芯片時,P0口作為低8位地址總線及數據總線的分時復用端口。P0口也可用作通用的I/O口,需加上拉電阻。作為通用I/O輸入口時,應先向端口的輸出鎖存器寫入1??沈寗?個LS型TTL負載。11(2)P1口:8位,具有內部上拉電阻。準雙向I/O口,作為通用I/O輸入時,應先向端口鎖存器寫1。P1口可驅動4個LS型TTL負載。12(3)P2口:8位,準雙向I/O口,具有內部上拉電阻。當外擴存儲器及I/O接口芯片時,P2口作為高8位地址總線,輸出高8位地址。P2口也可作為普通的I/O口使用。當作為通用I/O輸入口時,應先向端口輸出鎖存器寫1。P2口可驅動4個LS型TTL負載。(4)P3口:8位,準雙向I/O口,具有內部上拉電阻。可作為通用的I/O口使用。作為通用I/O輸入口時,應先向端口輸出鎖存器寫入1。可驅動4個LS型TTL負載。132.3AT89C51的CPU由運算器和控制器構成。2.3.1運算器對操作數進行算術、邏輯和位操作運算。主要包括:1.算術邏輯運算單元ALU邏輯運算(與、或、異或、循環、求補和清零)算術運算(加、減、乘、除)位操作,對位變量進行位處理,如置“1”、清“0”、求補、測試轉移及邏輯“與”、“或”等。13143.程序狀態字寄存器PSWPSW(ProgramStatusWord)位于片內特殊功能寄存器區,字節地址為D0H。包含了程序運行狀態的信息,其中4位保存當前指令執行后的狀態,供程序查詢和判斷。142.累加器A使用最頻繁的寄存器,可寫為Acc。圖2.3PSW的格式15PSW中各個位的功能:(1)Cy(PSW.7)進位標志位
可寫為C。在算術和邏輯運算時,若有進位/借位,Cy=1;否則,Cy=0。在位處理器中,它是位累加器。(2)Ac(PSW.6)輔助進位標志位
在BCD碼運算時,用作十進位調整。即當D3位向D4位產生進位或借位時,Ac=1;否則,Ac=0。(3)F0(PSW.5)用戶設定標志位
由用戶使用的一個狀態標志位,可用指令來使它置1或清0,控制程序的流向。用戶應充分利用。1516(4)RS1、RS0(PSW.4、PSW.3)4組工作寄存器區選擇
選擇片內RAM區中的4組工作寄存器區中的某一組為當前工作寄存區,見表2-2。17(5)OV(PSW.2)溢出標志位
當執行算術指令時,用來指示運算結果是否產生溢出。如果結果產生溢出,OV=1;否則,OV=0。(6)PSW.1位
保留位(7)P(PSW.0)奇偶標志位
指令執行完,累加器A中“1”的個數是奇數還是偶數。17P=1,表示A中“1”的個數為奇數。
P=0,表示A中“1”的個數為偶數。1818功能:控制指令的讀入、譯碼和執行,從而對各功能部件進行定時和邏輯控制??刂破靼ǎ撼绦蛴嫈灯鳌⒅噶罴拇嫫鳌⒅噶钭g碼器、定時及控制邏輯電路等。
程序計數器PC是一個獨立的16位計數器,不可訪問。單片機復位時,PC中內容為0000H,從程序存儲器0000H單元取指令,開始執行程序。2.3.2控制器PC的計數寬度決定了程序存儲器的地址范圍。PC為16位,故可對64KB(=216B)尋址。192.4AT89C51存儲器的結構將程序存儲器和數據存儲器分開(哈佛結構),并有各自的訪問指令。存儲器空間可分為4類。2.4.1程序存儲器空間存放程序和表格之類的固定常數。片內為4KB的Flash,地址為0000H~0FFFH。可外擴程序存儲器空間最大為64KB,地址為0000H~FFFFH。訪問片內的還是片外的程序存儲器,由
引腳電平確定。
=1時,從片內0000H開始取指令,當PC值超出0FFFH自動轉向讀片外程序存儲器空間1000H~FFFFH內的程序。=0時,只能執行片外程序存儲器(0000H~FFFFH)中的程序。2020程序存儲器某些固定單元用于各中斷源中斷服務程序入口在程序存儲器空間中有5個特殊單元分別對應于5個中斷源的中斷入口地址,見表2-3。通常這5個中斷入口地址處都放一條跳轉指令跳向對應的中斷服務子程序,而不是直接存放中斷服務子程序。212.4.2數據存儲器空間1.片內數據存儲器(128個單元,字節地址為00H~7FH)21圖2-489C51片內RAM結構00H~1FH:32個單元4組通用工作寄存器區,每區8B,用R7~R0表示。可通過指令改變RS1、RS0兩位來選擇20H~2FH:16個單元的128位可位尋址,也可字節尋址。30H~7FH:的單元只能字節尋址,用作存數據以及作為堆棧區。222.片外數據存儲器當片內128B的RAM不夠用時,需外擴,最多可外擴64KB的RAM。,片內RAM與片外RAM兩個空間是相互獨立的,片內RAM與片外RAM的低128B的地址是相同的,但由于使用的是不同的訪問指令,所以不會發生沖突。222.4.3特殊功能寄存器(SFR)對片內各功能部件的控制,采用特殊功能寄存器集中控制方式。特殊功能寄存器映射在片內RAM的80H~FFH區域中,共21個。其中字節地址的末位是0H或8H的SFR可以位尋址。23其中帶星的為可位尋址注24其中帶星的為可位尋址注251.堆棧指針SP指示堆棧頂部在內部RAM塊中的位置。堆棧結構—向上生長型。單片機復位后,SP為07H。復位后應把SP值改置為60H或更大的值,避免堆棧與工作寄存器沖突。252.寄存器B為執行乘法和除法而設。在不執行乘、除法操作的情況下,可把它當作一個普通寄存器來使用。3.數據指針DPTR作為外部數據存儲器進行尋址的地址指針,高位字節寄存器用DPH表示,低位字節寄存器用DPL表示??勺鳛橐粋€16位或二個八位的寄存器單獨使用262.4.4位地址空間211個尋址位的位地址,位地址范圍為00H~FFH。其中00H~7FH這128位處于片內RAM中,字節地址20H~2FH
單元中。其余的83個可尋址位分布在特殊功能寄存器SFR中的11個。2627表2-589C51內部RAM的可尋址位及其地址2828特殊功能寄存器位地址字節地址D7D6D5D4D3D2D1D0BF7HF6HF5HF4HF3HF2HF1HF0HF0HAccE7HE6HE5HE4HE3HE2HE1HE0HE0HPSWD7HD6HD5HD4HD3HD2HD1HD0HD0HIP———BCHBBHBAHB9HB8HB8HP3B7HB6HB5HB4HB3HB2HB1HB0HB0HIEAFH——ACHABHAAHA9HA8HA8HP2A7HA6HA5HA4HA3HA2HA1HA0HA0HSCON9FH9EH9DH9CH9BH9AH99H98H98HP197H96H95H94H93H92H91H90H90HTCON8FH8EH8DH8CH8BH8AH89H88H88HP087H86H85H84H83H82H81H80H80H表2-6SFR中的位地址分布29各類存儲器在存儲器空間的位置圖2-7AT89C51單片機的存儲器結構MOVXMOVCMOV總結:302.5AT89C51的并行I/O端口4個雙向的8位并行I/O端口,分別記為P0、P1、P2和P3,其中輸出鎖存器屬于特殊功能寄存器。端口的每一位均由輸出鎖存器、輸出驅動器和輸入緩沖器組成,4個端口按字節輸入/輸出外,也可位尋址。2.5.1P0口P0口是一個雙功能的8位并行端口,字節地址為80H,位地址為80H~87H。端口的各位具有完全相同但又相互獨立的電路結構,P0口某一位的位電路結構如圖2-8所示。303131圖2-8P0口某一位的位電路結構數據輸出的鎖存器,用于數據位的鎖存。兩個三態的數據輸入緩沖器,分別是用于讀鎖存器數據的輸入緩沖器BUF1和讀引腳數據的輸入緩沖器BUF2。多路轉接開關MUX,一個輸入來自鎖存器的
端,另一個輸入為地址/數據信號的反相輸出。MUX由“控制”信號控制。Q數據輸出的控制和驅動電路,由兩個場效應管(FET)組成。1.位電路結構322.工作過程分析(P0口用作地址/數據總線)輸出時:(1)與門處于開啟狀態10XP0.x引腳輸出為1地址/數據信息為1時332.工作過程分析(P0口用作地址/數據總線)輸出時:(1)與門處于開啟狀態01XP0.x引腳輸出為0地址/數據信息為0時342.工作過程分析(P0口用作地址/數據總線)輸入時:(0)與門處于截止狀態X從外部存儲器讀入信息P0口作為地址/數據復用方式訪問外部存儲器時,CPU自動向P0口寫入FFH,使下方場效應管截止。從外部存儲器輸入的數據信息直接由P0.x引腳通過輸入緩沖器BUF2進入內部總線。101X352.工作過程分析(P0口用作通用I/O口)(0)與門處于截止狀態XP0口作輸出口時:P0口輸出電路為漏極開路輸出。10X輸出1時:必須外接上拉電阻才能有高電平輸出;輸出0時:下方場效應管導通,P0口輸出為低電平。01P0口作為地址/數據復用口使用,就不能再作為通用I/O口使用。36當CPU發出“讀鎖存器”指令時,鎖存器的狀態由Q端經上方的三態緩沖器BUF1進入內部總線;P0口作輸入口使用時:有兩種讀入方式:“讀鎖存器”和“讀引腳”。當CPU發出“讀引腳”指令時,鎖存器的輸出狀態=1,而使下方場效應管截止,引腳的狀態經下方的三態緩沖器BUF2進入內部總線。0X10X373.P0口的特點P0口為雙功能口——地址/數據復用口和通用I/O口。(1)當P0口用作地址/數據復用口時,是一個真正的雙向口,
輸出低8位地址和輸出/輸入8位數據。(2)當P0口用作通用I/O口時,由于需要在片外接上拉電阻,端口不存在高阻抗(懸?。顟B,因此是一個準雙向口。為保證引腳信號的正確讀入,應首先向鎖存器寫1。單片機復位后,鎖存器自動被置1;當P0口由原來輸出轉變為輸入時,應先置鎖存器為1,方可執行輸入操作。37382.5.2P1口單功能的I/O口,字節地址為
90H,位地址為
90H~97H。P1口某一位的位電路結構如圖所示。1.位電路結構38數據輸出鎖存器,用于數據位的鎖存。兩個三態的數據輸入緩沖器,分別是用于讀鎖存器數據的輸入緩沖器BUF1和讀引腳數據的輸入緩沖器BUF2。數據輸出驅動電路,由一個場效應管(FET)和一個片內上拉電阻組成。39P1口作輸出口時:2.工作過程分析若CPU輸出1:場效應管截止,P1口引腳的輸出為1。10X1若CPU輸出0:場效應管導通,P1口引腳的輸出為0。01040當CPU發出“讀鎖存器”指令時,鎖存器的狀態由Q端經上方的三態緩沖器BUF1進入內部總線;有兩種讀入方式:“讀鎖存器”和“讀引腳”。當CPU發出“讀引腳”指令時,先向鎖存器寫1,使場效應管截止,P1.x引腳上的電平經輸入緩沖器BUF2進入內部總線。P1口作為輸入口時:10X413.P1口的特點由于內部上拉電阻,無高阻抗輸入狀態,故為準雙向口。P1口“讀引腳”輸入時,必須先向鎖存器寫入1。2.5.3P2口雙功能口,字節地址為A0H,位地址為A0H~A7H。P2口某一位的位電路結構如圖2-10所示。414242圖2-10P2口某一位的位電路結構1.位電路結構數據輸出鎖存器,用于數據位的鎖存。兩個三態的數據輸入緩沖器,分別是用于讀鎖存器數據的輸入緩沖器BUF1和讀引腳數據的輸入緩沖器BUF2。多路轉接開關MUX,一個輸入來自鎖存器的Q端,另一個輸入是高8位地址。驅動電路,由場效應管和片內上拉電阻組成。432.工作過程分析P2口用作地址總線:1當“地址”為0時:場效應管導通,P2口引腳輸出為0;當“地址”為1時:場效應管截止,P2口引腳輸出1。01010X1P2口用作通用I/O口:CPU輸出1時:場效應管截止,P2.x引腳輸出1;CPU輸出0時:場效應管導通,P2.x引腳輸出0。01101044
P2口輸入時,分“讀鎖存器”和“讀引腳”兩種方式:“讀鎖存器”時,Q端信號經輸入緩沖器BUF1進入內部總線“讀引腳”時,先向鎖存器寫1,使場效應管截止,P2.x引腳上的電平經輸入緩沖器BUF2進入內部總線。3.P2口的特點作為地址輸出線時,P2口高8位地址,P0口輸出的低8位地址,尋址64KB地址空間。作為通用I/O口時,P2口為準雙向口。功能與P1口一樣。一般情況下,P2口大多作為高8位地址總線口使用,這時就不能再作為通用I/O口。44452.5.4P3口P3口增加了第二功能。每1位都可以分別定義為第二輸入功能或第二輸出功能。P3口字節地址為B0H,位地址B0H~B7H。數據輸出鎖存器,用于數據位的鎖存3個三態數據輸入緩沖器BUF1、BUF2和BUF3,分別用于讀鎖存器、讀引腳數據和第二功能數據的輸入緩沖。驅動電路,由與非門場效應管和片內上拉電阻組成。1.位電路結構462.工作過程分析(用作第二輸入/輸出功能)當選擇第二輸出功能時,該位的鎖存器需要置1,使與非門為開啟狀態。當第二輸出為1時:效應管截止,P3.x引腳輸出為1;1110X1當第二輸出為0時:效應管導通,P3.x引腳輸出為0。010當選擇第二輸入功能時:鎖存器和第二輸出功能端應置1,場效應管截止,P3.x引腳的信息由輸入緩沖器BUF3的輸出獲得。10X1472.工作過程分析(用作第一功能——通用I/O口)輸出時,第二輸出功能端應保持高電平,與非門開啟。CPU輸出1時,Q=1,場效應管截止,P3.x引腳輸出為1;CPU輸出0時,Q=0,場效應管導通,P3.x引腳輸出為0。1111X00010輸入時,輸出鎖存器和第二輸出功能均應置1,場效應管截止。P3.x引腳信息通過輸入BUF3和BUF2進入內部總線,完成“讀引腳”操作。110X1483.P3口的特點P3口內部有上拉電阻,無高阻抗輸入態-準雙向口。P3口作為第二功能的輸出/輸入,或第一功能通用輸入,均須將相應位的鎖存器置1。實際應用中,由于復位后P3口鎖存器自動置1,滿足第二功能所需的條件,所以不需任何設置工作,就可以進入第二功能操作。當某位不作為第二功能用時,可作為第一功能通用I/O使用引腳輸入部分有兩個緩沖器,第二功能的輸入信號取自緩沖器BUF3的輸出端,第一功能的輸入信號取自緩沖器BUF2的輸出端。48492.6時鐘電路與時序時鐘電路產生AT89C51工作時所必需的控制信號,在時鐘信號的控制下,嚴格按時序執行指令。執行指令時,CPU首先到程序存儲器中取出需要執行的指令操作碼,然后譯碼,并由時序電路產生一系列控制信號完成指令所規定的操作。49CPU發的時序信號兩類:對片內各個功能部件控制,用戶無須了解;對片外存儲器或I/O口的控制,這部分時序對于分析、設計硬件接口電路至關重要。50AT89C51內部有一個用于構成振蕩器的高增益反相放大器,輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。這兩個引腳跨接石英晶體振蕩器和微調電容,構成一個穩定的自激振蕩器。502.6.1時鐘電路
常用的時鐘電路有兩種方式,一種是內部時鐘方式,另一種是外部時鐘方式。1.內部時鐘方式圖2-13
內部時鐘方式電路電容大小會影響振蕩器頻率高低、振蕩器的穩定性和起振的快速性。C1和C2的典型值為30pF,晶振頻率范圍通常是1.2~12MHz。51512.外部時鐘方式
用現成的外部振蕩器產生脈沖信號,外部時鐘源直接接到XTAL1端,XTAL2端懸空。
圖2-14
AT89S51的外部時鐘方式電路522.機器周期執行一條指令分為幾個機器周期。每個機器周期完成一個基本操作。89C51每12個時鐘周期為1個機器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學門衛合同協議書
- 親子餐廳可行性研究
- 空調合同協議書范本
- 游泳學員培訓合同協議書
- 團隊旅游合同協議書模板
- 音樂活動背景策劃書3
- 合同協議書防止賣方漲價
- 2025年鑄鐵及相關金屬制衛生、廚房器具、餐具項目規劃申請報告模稿
- 學校保潔員合同協議書
- 豬偽狂犬病的流行診斷及防控措施
- 2025年監理工程師考試《建設工程監理基本理論與相關法規》真題及答案
- 小學道德與法制教學中“責任擔當”核心素養的培養
- 東莞2025年東莞濱海灣新區管理委員會下屬事業單位招聘筆試歷年參考題庫附帶答案詳解
- 生死擂臺免責協議書
- 試管嬰兒合格協議書
- 事業單位公開招聘分類考試公共科目筆試考試大綱(2025版)
- 2023年甘肅省榆中縣事業單位公開招聘筆試題帶答案
- 高考考務人員培訓系統試題答案
- 2023年江蘇省沭陽縣事業單位公開招聘輔警33名筆試題帶答案
- 健康管理PBL教程 課件 項目八 肥胖癥的健康管理
- (二模)石家莊市2025屆高三教學質量檢測(二)英語試卷(含標準答案)
評論
0/150
提交評論