單片機-2章課件_第1頁
單片機-2章課件_第2頁
單片機-2章課件_第3頁
單片機-2章課件_第4頁
單片機-2章課件_第5頁
已閱讀5頁,還剩78頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第1章概述主要介紹:單片機的基本概念、發(fā)展概況及趨勢、應用范圍、MCS-51系列片機的資源。什么是單片機?在單個芯片中集成了組成一臺計算機所必需的各功能部件:CPU、RAM、ROM、C/T、I/O、INTERRUPTE、A/DC、D/AC、UART等等。INTERRUPT:中斷。如:8259I/O(input/outputport):I/O口。如:8255、8155C/T(COUNTER/TIMER):計數(shù)器、定時器。如8253、8254ROM(readonlymemory):只讀存儲器、程序存儲器。如:2764、27256RAM(randomaccessmemory):隨機存取存儲器、數(shù)據(jù)存儲器。如:6264、6116CPU(CentralProcessorUnit):中央處理單元。如:8086/8088A/DC.(AnalogtoDigitalConvert):A/D轉(zhuǎn)換器。如:0809D/AC.(DigitaltoAnalogConvert):D/A轉(zhuǎn)換器。如:0832UART(UniversalAsynchronousReceiver/Transmitter)通用異步串行通訊接口。如8251單片機名字的來由:早期構(gòu)成一臺包含以上部件的計算機最小系統(tǒng),需要設計一個400×400線路板,在該線路板上安裝以上各部件。如“Z80”單板計算機,包括Z80CPU、Z80CTC、Z80PIO、8259、8253、AD0809、DA0832等等。在單個2.單片機的發(fā)展過程及趨勢

發(fā)展過程:自上個世紀70年代以來,經(jīng)歷4位機、1位機、8位機、16位機、32位機的過程。發(fā)展趨勢:⑴趨向于功能完善、處理快。例:加快數(shù)據(jù)處理速度:美國ATMEL公司的AVR系列單片機,具有精簡指令的RISC結(jié)構(gòu),一個時鐘周期執(zhí)行一例:快速數(shù)字信號處理:在航天、航空等領域,為滿足快速處理數(shù)字信號的需要,有美國TI公司生產(chǎn)的TMS320系列DSP——數(shù)字信號處理器(DIGITALSIGNALPROCESSOR)。條指令;具有32個通用工作寄存器,可直接進行數(shù)據(jù)交換。比傳統(tǒng)的單片機的數(shù)據(jù)處理速度快十幾倍到幾十倍。⑵硬件資源進一步加強或擴充:1)擴充程序存儲器:AT89C55將內(nèi)部ROM擴充到20KB;2)嵌入其他功能芯片:WINBOND公司的W78E52嵌入WDT;3)INTEL公司的80C196XX嵌入了8通到的A/DC,一個PWM。

還有專用于處理多任務的雙CPU單片機;多通訊接口的單片機等等。

4.單片機的主流機型——MCS-51

80年代初,美國INTEL公司在MCS-488位單片機基礎上推出。由于以下幾方面的因素,在國內(nèi)一直處于主流地位:1)

INTEL公司作為世界最大的集成電路、CPU生產(chǎn)廠家,其產(chǎn)品的技術性能優(yōu)良。2)

較早進入中國市場,擁有最多的用戶。3)性能/價格比高。

主要性能:下表1表1MCS-51系列單片機資源:5.當前單片機市場主流機型——AT89系列單片機

簡介:美國ATMEL公司,F(xiàn)LASH型存儲器生產(chǎn)具有一流水平,購買INTEL公司MCS-51內(nèi)核,將FLASH存儲器與MCS-51單片機集成在單個芯片內(nèi),構(gòu)成了具有FLASH型程序存儲器的、與MCS-51系列單片機在指令系統(tǒng)及管腳完全兼容的8位單片機。具有掉電、閑置兩種省電工作方式。常見機型及資源、性能見下表2。當前從應用情況看,以AT89C52為主流機型。本課主要以AT89C52為例講述其原理及應用。第1章概述

1.

8031單片機的片內(nèi)資源,RAM、ROM、I/O、計數(shù)器、中斷源、UART。2.

AT89C52單片機的片內(nèi)資源,RAM、ROM、

I/O、計數(shù)器、中斷源、UART。

第2章MCS-51系列單片機的硬件系統(tǒng)

2.1MCS-51單片機的硬件結(jié)構(gòu)

見圖2.1MCS-51單片機的片內(nèi)結(jié)構(gòu)。MCS-51單片機的片內(nèi)結(jié)構(gòu)如下圖所示。如果按功能劃分,它由8個部件組成:1.CPU,8位微處理器,內(nèi)含1個1位微處理器C。實現(xiàn)算術運算與邏輯運算。特殊功能寄存器——SFR:8031:21個;AT89C52:

27個。用于對片內(nèi)各功能模塊進行管理、控制、監(jiān)視。實際上是一些控制寄存器和狀態(tài)寄存器,是一個特殊功能的RAM區(qū)。單片機內(nèi)所有硬件資源的使用都是通過訪問SFR實現(xiàn)。7.中斷源:2級5個(2字綴尾的單片機有6個)。

由上可見,MCS-51單片機的硬件結(jié)構(gòu)具有功能部件種類全,功能強等特點。特別值得一提的是MCS-51CPU中的位處理器,它實際上是一個完整的1位微計算機,這個一位微計算機有自己的CPU、位寄存器I/O口、和指令集。l位機在開關決策、邏輯電路仿真、過程控制方面非常有效;而8位機在數(shù)據(jù)采集,運算處理方面有明顯的長處。MCS單片集中8位機和1位機的硬件資源復合在一起,二者相輔相承,它是單片機技術上的一個突破,這也是MCS-51在設計上的精美之處。2.2引腳描述及片外總線結(jié)構(gòu)

2.2.1芯片的引腳描述

40個引腳,可分為4組:

1.主電源引腳

Vcc(40腳):接十5V電壓;Vss(20腳)接地。①RST/VPD(9腳):

當振蕩器運行時,在此引腳上出現(xiàn)兩個機器周期的高電平將使單片機復位。推薦在此引腳與Vss引腳之間連接一個約8.2k的下拉電阻,與Vcc引腳之間連接一個約10μF的電容,以保證可靠地復位。Vcc掉電期間,此引腳可接上備用電源,以保持內(nèi)部RAM的數(shù)據(jù)不丟失。當VCC主電源下掉到低于規(guī)定的電平,而VPD在其規(guī)定的電壓范圍(5士0.5V)內(nèi),VPD就向內(nèi)部RAM提供備用電源。②ALE/*PROG(30腳):當訪問外部存儲器時,ALE(允許地址鎖存)的輸出用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲器,ALE端仍以不變的頻率周期性地出現(xiàn)正脈沖信號,此頻率為振蕩器頻率的1/6。因此,它可用作對外輸出的時鐘,或用于定時目的。然而要注意的是,每當訪問外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。對于EPROM型的單片機(如8751),在EPROM編程期間,此引腳用于輸入編程脈沖(*PROG)。ALE端可以驅(qū)動(吸收或輸出電流)8個LS型的TTL輸入電路。③/PSEN(29腳):此腳的輸出是外部程序存儲器的讀選通信號。在從外部程序存儲器取指令(或常數(shù))期間,每個機器周期兩次/PSEN有效。但在此期間,每當訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。/PSEN同樣可以驅(qū)動(吸收或輸出)8個LS型的TTL輸入。

1)P0口(39腳~32腳):(1)是雙向8位三態(tài)I/O口;(2)在外接存儲器時,與地址總線的低8位及數(shù)據(jù)總線復用,能以吸收電流的方式驅(qū)動8個LSTTL負載。

D[7:0]/A[7:0]4.輸入/輸出(I/O)引腳P0、P1、P2、P3(共32根)

2)P1口(1腳~8腳):是8位準雙向I/O口。由于這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向I/O口。P1口能驅(qū)動(吸收或輸出電流)4個LSTTL負載。對AT89C52,P1.0引腳的第二功能為T2定時/計數(shù)器的外部輸入,P1.1引腳的第二功能為T2EX捕捉、重裝觸發(fā)控制端,即T2的外部控制端。對EPROM編程和程序驗證時,它接收低8位地址。

4)P3口(10腳~17腳):(1)

是8位準雙向I/O口,作為第一功能使用時,就作為普通I/O口用,功能和操作方法與P1口相同。3)P2口(21~28)雙向I/O口。在訪問外部存儲器時,它可以作為擴展電路高8位地址總錢送出高8位地址。在對EPROM編程和程序驗證期間,它接收高8位地址。P2可以驅(qū)動(吸收或輸出)電流4個LSTTL負載。

值得強調(diào)的是,P3口的每一條引腳均可獨立定義為第一功能的輸入輸出或第二功能。

2.2.2MCS—5l單片機的片外總線結(jié)構(gòu)

鎖存器—74LS373的原理:①地址總線(AB):地址總線寬度為16位,因此,其外部存儲器直接尋址為64K字節(jié),16位地址總線由P0口經(jīng)地址鎖存器提供低8位地址(A0~A7);P2口直接提供高8位地址(A8~A15)。②數(shù)據(jù)總線(DB):數(shù)據(jù)總線寬度為8位,由P0口提供。

③控制總線(CB):由P3口的第二功能狀態(tài)和4根獨立控制線RESET、ALE、*PSEN、*EA、*WR、*RD構(gòu)成。2.3中央處理器CPU包括運算部件與控制部件。

2.3.1運算部件由ALU、 C、A、B、暫存器、PSW等構(gòu)成。

ALU:實現(xiàn)算術、邏輯運算,包括:邏輯運算:邏輯與、邏輯或、異或、循環(huán)、求補、清零。算術運算:加、減、乘、除。

C:與、或、求反、求反與。B:乘、除法運算時的一個專用寄存器。非乘、除時可做一般寄存器用。

A:8位累加器。其進位位C同時作位處理器。

PSW:程序狀態(tài)字:

程序狀態(tài)寄存器PSW,是一個8位可讀寫的寄存器,它的不同位包含了程序狀態(tài)的不同信息,掌握并牢記PSW各位的含義是十分重要的,因為在程序設計中,經(jīng)常會與PSW的各個位打交道。PSW各位的定義如下:(l)Cy(PSW.7)進位標志位,在執(zhí)行算術和邏輯指令時,可以被硬件或軟件置位或清除,在位處理器中,它是位累加器。加法:有進位,C=1;無進位,C=0。減法:有借位:C=1;無借位,C=0。(2)AC(PSW.6)輔助進位標志位,當進行加法或減法操作而產(chǎn)生由低4位數(shù)(十進制中的一個數(shù)字)向高4位進位或借位時,AC將被硬件置1,否則就被清除。AC被用于十進位調(diào)整,同DA指令結(jié)合起來用。(3)F0(PSW.5)標志位,它是由用戶使用的一個狀態(tài)標志位,可用軟件來使它置位或清除,也可以靠軟件測試F0以控制程序的流向。編程時,該標志位特別有用。(4)RS1、RS0(PSW.4、PSW.5)寄存器區(qū)選擇控制位,利用這兩位來選擇4組工作寄存器區(qū)(4組寄存器在單片機內(nèi)的RAM區(qū)中,將在本章稍后介紹),它們與4組工作寄存器區(qū)的對應關系如下:RS1RS000選擇內(nèi)部RAM寄存器地址(00H~07H)01選擇內(nèi)部RAM寄存器地址(08H~0FH)10選擇內(nèi)部RAM寄存器地址(10H~17H)11選擇內(nèi)部RAM寄存器地址(18H~1FH)(5)OV(PSW.2)溢出標志位。當執(zhí)行算術指令時,由硬件置1或清0,以指示溢出狀態(tài)。各種算術運算對該位的影響情況較為復雜,將在第三章詳細說明。

(6)P(PSW.0)奇偶標志位。每個指令周期都由硬件來置位或清除,以表示累加器A中值為1的位數(shù)的奇偶數(shù)。若為奇數(shù),則P=1,否則P=0。此標志位對串行口通訊中的數(shù)據(jù)傳輸有重要的意義,常用奇偶檢驗的方法來檢驗數(shù)據(jù)傳輸?shù)目煽啃浴?.3.2控制部件

控制部件是單片機的神經(jīng)中樞,以主振頻率為基準(每個主振周期稱為振蕩周期),控制CPU的時序,對指令進行譯碼,然后發(fā)出各種控制信號,它將各個硬件環(huán)節(jié)組織在一起。

控制CPU的時序包含兩方面的意義:1.)CPU內(nèi)部微操作的時序;2.)外部控制信號的時序。若干概念:時鐘周期、狀態(tài)周期、機器周期、指令周期。

時序:一條指令包含若干微操作,各個微操作在時間順序上是嚴格區(qū)分的,實現(xiàn)區(qū)分的方法就是讓每個微操作對應不同的時鐘脈沖。微操作與時鐘的對應關系,外部控制信號與時鐘的對應關系為時序。

時鐘周期:晶體振蕩器周期。上圖中的P1、P2。狀態(tài)周期:兩個時鐘周期組成一個狀態(tài)周期。上圖中的S1、S2、S3、S4、S5、S6。機器周期:6個狀態(tài)周期組成一個機器周期。指令周期:執(zhí)行一條指令所花費的時間。MCS51執(zhí)行一條指令花費1~4個機器周期。

CPU的時序如圖2-4所示。每個機器周期(12個振蕩周期)由6個狀態(tài)周期組成,即S1、S2、……S6,而每個狀態(tài)周期由兩個時相P1,P2組成(即為2個主振振蕩周期)。所以一個機器周期可依次表示為S1P1、S1P2、S2P1、S2P2……S6P1、S6P1。一般情況下,算術邏輯操作發(fā)生在時相P1期間,而內(nèi)部寄存器之間的傳送發(fā)生在時相P2期間,這些內(nèi)部時鐘信號無法從外部觀察,故用XTAL2振蕩信號作參考,而ALE可作為外部工作狀態(tài)指示信號用。在一個機器周期中通常出現(xiàn)兩次ALE信號,即從ROM中取兩次操作碼,讀入指令寄存器,指令周期的執(zhí)行開始于S1P2時刻,而總是結(jié)束于S6P2時刻。MCS-51的指令周期一般只有l(wèi)~2個機器周期,只有乘、除兩條指令占4個機器周期,當用12MHZ晶體作主頻率時,執(zhí)行一條指令的時間,也就是一個指令周期為1μS(這樣的指令約占全部指令的一半)2μS及4μS。主振頻率越高,指令執(zhí)行速度越快。

由上可見,MCS一51單片機的時序比較簡單。對應用者來說,當需要精確分析程序中各指令執(zhí)行時間或者是研究單片機與用戶樣機各外設時序關系時,才需要分析它。

2.4存儲器的組織

MCS-51單片機具有兩種存儲器:程序存儲器。數(shù)據(jù)存儲器。2.4.1程序存儲器的組織

1.內(nèi)部程序存儲器的組織

不同型號單片機可以有不同容量。如:AT89C51:4K;AT89C52:8K;AT89C55:20K。W78E58:32K。最大可擴展為:64K。當/EA=0時,上電時自動運行外部程序存儲器程序。2.外部程序存儲器的組織

極限情況為:64K。當/EA=1時,上電時自動運行內(nèi)部程序存儲器程序。3.從內(nèi)部程序存儲器運行到外部程序存儲器的情形當運行到內(nèi)部程序存儲器上端時,自動轉(zhuǎn)去外部程序存儲器。4.幾個固定的中斷入口地址5.避免同時使用內(nèi)、外部程序存儲器。

2.4.2數(shù)據(jù)存儲器的組織

1.外部數(shù)據(jù)存儲器外部數(shù)據(jù)存儲器最大空間為64KB,與內(nèi)部數(shù)據(jù)存儲器在物理上是分開的,有各自的尋址方式。

1)128字節(jié)情形:2)工作寄存器的分布

2.內(nèi)部數(shù)據(jù)存儲器

3)位變量的分布

4)256字節(jié)情形80H~FFH僅支持間接尋址方式。

3.特殊功能寄存器SFR(SPECIALFUNCTIONREGISTER)

所有的硬件應用都是通過訪問SFR實現(xiàn)。1)分布

注意:SFR與高128字節(jié)RAM(80H~FFH)有不同的物理空間,相同的地址。對二者的訪問依靠尋址方式區(qū)別,前者靠直接尋址;后者靠間接尋址。

2)具有位地址的SFR的分布。3)部分SFR介紹

全部單片機內(nèi)部資源的應用都是通過訪問、操作SFR實現(xiàn)。其中I/O口、計數(shù)器/定時器、中斷、串行通訊部分在以后的章節(jié)中詳細介紹。首先介紹A、B、PSW、SP、DPTR及非SFR中的PC。①A累加器,在加、減、乘、除運算中存放被加、被減、被乘、被除數(shù)及結(jié)果。所有的算術、邏輯運算都通過其進行。

②PC程序計數(shù)器,用以指出運行程序的地址。

⑥D(zhuǎn)PTR數(shù)據(jù)指針,16位。在訪問程序存儲器與外部數(shù)據(jù)存儲器時,用做存放數(shù)據(jù)地址。也可做一般寄存器用??刹鹱鰞蓚€8位寄存器用,DPH、DPL。

⑤SP堆棧指針,用于指出堆棧頂部RAM地址。堆棧向上生成。堆棧按先進后出、后進先出的方式組織。④PSW程序狀態(tài)字,意義如前述。

③B寄存器,在乘、除運算中指定用做存放第二操作數(shù),其他場合做一般寄存器用。

4.總結(jié)注意:1.)MCS-51采用哈佛(HARVARD)結(jié)構(gòu),即外部數(shù)據(jù)存儲空間與地址存儲空間是獨立的,通過不同的控制信號選通數(shù)據(jù)存儲器或程序存儲器。

2)內(nèi)部RAM

高128字節(jié)與SFR位于不同的物理存儲空間,相同的地址,依靠不同的尋址方式區(qū)別。前者支持間接尋址;后者支持直接尋址。3)工作寄存器份四組,通過PSW中的RS0、RS1選擇。5)堆棧按先進后出、后進先出方式組織,向上生成。

4)位地址位于內(nèi)部RAM20H~2FH16字節(jié)。2.5I/O端口

2.5.1I/O口的功能

1.P0、P2口功能:1)普通的I/O口。2)擴展外部數(shù)據(jù)存儲器或程序存儲器時,構(gòu)成8位數(shù)據(jù)總線與16位地址總線的低8位。

2.P1口I/O口。對AT89C52,P1.0~T2、P1.1~T2EX。

3.P3口復用功能:I/O口或第二功能,見表2-3(P18)。

2.5.2I/O口操作要領與結(jié)構(gòu)

1.操作要領

1)P0口做I/O口使用時,必須上掛電阻(10K左右)。

2)P0、P1、P2、P3口做“I”口使用時及P3口做第二功能使用時,輸出鎖存器必須首先“置1”。

2.結(jié)構(gòu)分析

分別P0、P1、P2、P3的結(jié)構(gòu)分析入手,說明上述要領。P0口:P1口:P2口:P3口:

3.I/O口的負載能力P0為8個TTL負載;P1、P2、P3為4個TTL負載。從靜態(tài)與動態(tài)兩個方面說明負載能力問題。2.5.3I/O口的讀操作

在結(jié)構(gòu)分析中可見,有兩類讀指令:讀引腳、讀鎖存器。

讀引腳指令——當某一I/O口或I/O口的某一位為源操作數(shù)時,所執(zhí)行的指令為讀引腳指令。例:MOV A,P1MOV C,P0.2等。

例:ANL P1,AORL P2,#55H

讀鎖存器指令一般用于將I/O內(nèi)容讀出來進行修改,然后再送回該I/O口。所以,有時將讀鎖存器指令稱為:讀—修改—寫指令。讀鎖存器指令——當某一I/O口或I/O口的某一位為目的操作數(shù)時,所執(zhí)行的指令為讀鎖存器指令。

2.6復位電路與WDT技術2.6.1復位后各SFR的狀態(tài)

復位的意義在于使單片機內(nèi)SFR處于一個確定的狀態(tài),尤其重要的是要使PC=0000,使程序從頭運行。2.6.2常用上電復位電路

硬件復位電路的要求:上電時,在RST引腳產(chǎn)生一個寬度大于兩個機器周期的高電平。

上圖中,R=8.2K、C=10Uf。能保證可靠上電復位。

關于其他復位電路的討論:P22。2.6.3WDT技術

1.“死機”的概念

程序處于死循環(huán)。

2.WDT的功能

3.WDT的原理

及時發(fā)現(xiàn)“死機”,通過強制復位,使PC=0,程序從頭運行。4.成品WDT介紹

對WDT復位操作后,每隔固定的時間間隔(該間隔可預先選定)產(chǎn)生一個復位脈沖。該脈沖接至單片機的復位引腳。單片機正常運行時,以小于WDT時間間隔的周期對WDT進行復位操作,則WDT不能產(chǎn)生復位脈沖。當系統(tǒng)“死機”時,無法周期地對WDT進行復位操作,WDT經(jīng)過一個時間間隔后產(chǎn)生復位脈沖,使單片機強制復位,退出“死機”。

典型WDT——X5045簡介:TIMEINTERVAL:1.4S、600ms、200ms,三檔。編程選定。四項功能:上電復位、WDT、電壓監(jiān)控、EEPROM(512B)。

5.WDT技術需要很好的軟件配合

防止局部“死機”技術;防止系統(tǒng)外特性受“死機”影響技術;軟件任務分步記錄,“死機”后接續(xù)運行技術。

WDT技術是硬件技術與軟件技術相結(jié)合的技術。2.7時鐘電路

典型時鐘電路:

CX1、CX2為起振電容,一般為30PF。

其他時鐘電路的討論,P23。

溫馨提示

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

評論

0/150

提交評論