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

下載本文檔

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

文檔簡介

1、西京學院工程技術系電子信息教研室單片機原理與應用課程單片機原理與應用1第2章 單片機原理及應用 2.1 單片機分類及內部組成 1.51系列單片機的分類51系列單片機有一下兩種分類方法: (1)按芯片的半導體制造工藝劃分,可以分為HMOS工藝性單片機和CHMOS工藝性單片機兩種。HMOS工藝性單片機包括8051、8751、8052、8032;CHMOS工藝性單片機80C51、83C51、87C51、80C31、80C32和80C52。這兩類器件在功能上是完全兼容的,但采用CHMOS工藝制造的芯片具有低功耗的特點,它所消耗的電流比HMOS器件消耗的電流小的多。另2第2章 單片機原理及應用外,CHM

2、OS器件比HMOS器件多了兩種節(jié)電的工作方式(掉電方式和待機方式),常用于構成低功耗的應用系統(tǒng)。按片內不同容量的存儲器配置劃分,可以分為51子系列和52子系列單片機。51子系列單片機最后一位數字以“1”作為標志,片內帶有4KB ROM/EPROM、128B RAM、兩個16位定時器/計數器和5個中斷源等;52子系列單片機最后一位數字以“2”作為標志,片內帶有8KB ROM/EPROM、256B RAM、3個16位定時器/計數器和6個中斷源等。3第2章 單片機原理及應用外,CHMOS器件比HMOS器件多了兩種節(jié)電的工作方式(掉電方式和待機方式),常用于構成低功耗的應用系統(tǒng)。(2)按片內不同容量的

3、存儲器配置劃分,可以分為51子系列和52子系列單片機。51子系列單片機最后一位數字以“1”作為標志,片內帶有4KB ROM/EPROM、128B RAM、兩個16位定時器/計數器和5個中斷源等;52子系列單片機最后一位數字以“2”作為標志,片內帶有8KB ROM/EPROM、256B RAM、3個16位定時器/計數器和6個中斷源等。4第2章 單片機原理及應用2. 51單片機的兼容性MCS-51系列單片機以優(yōu)異的性價比使它從面世以來就獲得了廣大用戶的認可,Intel公司把這種單片機的內核,即8051內核,以出售或互換專利的方式授權給一些公司,如Atmel、Philips等。這些公司在保持與805

4、1單片機兼容的基礎上,改造了8051單片機的許多性能。例如,80C51單片機就是在8051的基礎上發(fā)展起來的更低功耗的單片機,兩者外形完全相同,其指令系統(tǒng)、引腳信號、總線等也都完全相同,其指令系統(tǒng)、引腳信號、總線等也都完全一致。也就是說,5第2章 單片機原理及應用7第2章 單片機原理及應用MCS-51的內部結構如圖1.3所示。下面介紹各個組成部分的基本功能。8第2章 單片機原理及應用常所說的內部數據存儲器是指前128個單元,簡稱內部RAM。(3)內部程序存儲器(4K ROM)MCS-51共有4KB 的掩膜ROM,用于存放程序或原始數據,因此成為程序存儲器,簡稱內部ROM。(4)定時/計數器MC

5、S-51共有兩個16位定時/計數器,以實現(xiàn)定時或計數功能,并以定時或計數結果對計算機進行控制。(5)可編程I/O口MCS-51共有4個8位的I/O口(P0、P1、P2、P3),通過10第2章 單片機原理及應用編寫程序可以實現(xiàn)數據的并行輸入/輸出,從而實現(xiàn)接收外部信號或輸出控制信號。(6)串行接口MCS-51單片機有一個全雙工的串行口,以實現(xiàn)單片機和其他設備之間的串行數據傳送。該串行口功能較強,既可以作為全雙工異步通信收發(fā)器使用,也可以作為同步移位器使用。(7)中斷控制系統(tǒng) 當CPU執(zhí)行正常的程序時,如果收到一個中斷請求(如11第2章 單片機原理及應用定時時間到,需要鳴笛報警),中斷控制系統(tǒng)馬上

6、會讓CPU停止正在執(zhí)行的程序,轉而去執(zhí)行程序存儲器ROM中特定的某段程序,執(zhí)行完成該段程序后再繼續(xù)執(zhí)行先前中斷的程序。MCS-51單片機共有5個中斷源,即兩個外中斷源、兩個定時/計數中斷源和一個串行中斷源。(8)時鐘電路 時鐘電路產生時鐘信號送給單片機內部各電路,以控制這些電路,使它們有節(jié)拍地工作。時鐘信號頻率越高,內部電路工作速度越快。12第2章 單片機原理及應用14第2章 單片機原理及應用2.工作過程下面以上圖搶答器的單片機控制電路為例,介紹單片機應用系統(tǒng)的工作過程。當按下?lián)尨疰IS后,按鈕接地,發(fā)光二極管VD1亮。同時,單片機輸入低電平,經單片機內部的數據傳輸后,馬上輸出控制信號(這里為低

7、電平),該信號經過R2送到驅動三極管的基極,三極管導通,有電流通過蜂鳴器,蜂鳴器發(fā)聲。一旦松開搶答鍵,單片機輸入信號為高電平,經過內部數據傳輸,馬上輸出高電平,三極管截止,蜂鳴器停止發(fā)聲。15第2章 單片機原理及應用2.3 單片機I/O口的使用實例4:用單片機控制一個燈閃爍 本實例通用單片機控制一個燈(發(fā)光二極管)閃爍的實例來介紹單片機的工作頻率電路圖如下圖所示。 (1)實現(xiàn)方法 P1.0輸出低電平,使VD1正向偏置,就會點亮發(fā)光二極管LED;P1.0輸出高電平時,LED就熄滅。如果P1.0輸出電平在高低電平之間不停轉換,則LED會產生閃爍。也就是說先點亮LED一段時間之后,再熄滅LED等,再

8、延時一段時間后點亮LED等,如此反復。17第2章 單片機原理及應用18第2章 單片機原理及應用 (2)程序設計 19第2章 單片機原理及應用 (3)軟件仿真 啟動軟件仿真后,將示波器輸入端A連接在P1.0引腳上,觀察輸出電平的變化。 為了研究單片機工作頻率對閃爍速度的影響,將單片機的晶振改為“2MHz”后啟動仿真,可以看到閃爍頻率變慢。 (4)延時程序分析 為什么單片機時鐘頻率(工作頻率)的改變會引起燈閃爍速度的變化?弄清楚這個問題很重要。 單片機需要一個時鐘信號送給內部各電路,才能使它們20第2章 單片機原理及應用有節(jié)奏的工作。時鐘信號的21第2章 單片機原理及應用2.3 單片機I/O口的使

9、用實例5:將P1口狀態(tài)送入P0、P2和P3口 本實例通過一個將P1口狀態(tài)送入P0、P2和P3口的實例,介紹單片機的輸入/輸出的基本結構和使用方法。本例采用的電路原理圖如圖3.1所示.要求當按下按鍵S時,發(fā)光二極管VD0VD3均被點亮;松開按鍵S時,VD0VD3均被熄滅。 (1)實現(xiàn)方法 利用單片機工作速度快的特點,通過編程設置一個無限循環(huán),讓單片機不停地把P1口的電平狀態(tài)送到P0、P2和P3口。在按下按鍵S時,P1.7引腳的燈被點亮的瞬間,P0.7引腳、P2.7引腳和P3.7引腳的三個燈也接著被點亮。22第2章 單片機原理及應用 (2)程序設計 24第2章 單片機原理及應用 (3)實例演示 實

10、例1表明,單片機的P0口、P1口、P2口和P3口具有輸入/輸出(I/O)功能。雖然P1.7引腳電平在編程時被置為高電平(P1=0 xff),但是當按下按鍵S時,該引腳接地,電平也被強制變?yōu)榈碗娖?。此時,低電平“0”通過P1.7引腳被輸入到單片機,可見P1口具有輸入功能。在按下按鍵S時,不僅 P1.7引腳LED點亮,而且P0.7引腳LED也被點亮,這表明P1口的狀態(tài)被送到了P0口,所以P1口還具有輸出功能。同樣的,P0、P2和P3口也有類似的輸入/輸出功能。251、P0口作為普通I/O口輸出時CPU發(fā)出控制電平“0”封鎖“與”門,將輸出上拉場效應管T1截止,同時使多路開關MUX把鎖存器與輸出D

11、QCLK QMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳27驅動場效應管T2柵極接通。故內部總線與P0口同相。由于輸出驅動級是漏極開路電路,若驅動NMOS或其它拉流負載時,需要外接上拉電阻。P0的輸出級可驅動8個LSTTL負載。D QCLK QMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳28 輸入時-分讀引腳或讀鎖存器讀引腳:由傳送指令(MOV)實現(xiàn); 下面一個緩沖器用于讀端口引腳數據,當執(zhí)行一條由端口輸入的指令時,讀脈沖把該三態(tài)緩沖器打開,這樣端口引腳上的數據經過緩沖器讀入到內部總線。D QCLK QMUXP0.n讀

12、鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳29D QCLK QMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳 輸入時-分讀引腳或讀鎖存器讀鎖存器:有些指令 如:ANL P0,A稱為“讀-改-寫” 指令,需要讀鎖存器。 上面一個緩沖器用于讀端口鎖存器數據。30*原因:如果此時該端口的負載恰是一個晶體管基極,且原端口輸出值為1,那么導通了的PN結會把端口引腳高電平拉低;若此時直接讀端口引腳信號,將會把原輸出的“1”電平誤讀為“0”電平?,F(xiàn)采用讀輸出鎖存器代替讀引腳,圖中,上面的三態(tài)緩沖器就為讀鎖存器Q端信號而設,讀輸出鎖存器可避免上述可能

13、發(fā)生的錯誤。*D QCLK QMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳31P0口必須接上拉電阻;在讀信號之前數據之前,先要向相應的鎖存器做寫1操作的I/O口稱為準雙向口;三態(tài)輸入緩沖器的作用:(ANL P0,A)32D QCLK QMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳準雙向口: 從圖中可以看出,在讀入端口數據時,由于輸出驅動FET并接在引腳上,如果T2導通,就會將輸入的高電平拉成低電平,產生誤讀。所以在端口進行輸入操作前,應先向端口鎖存器寫“1”,使T2截止,引腳處于懸浮狀態(tài),變?yōu)楦咦杩馆斎?。這就是所謂的準

14、雙向口。 33D QCLK QMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳準雙向口: 從圖中可以看出,在讀入端口數據時,由于輸出驅動FET并接在引腳上,如果T2導通,就會將輸入的高電平拉成低電平,產生誤讀。所以在端口進行輸入操作前,應先向端口鎖存器寫“1”,使T2截止,引腳處于懸浮狀態(tài),變?yōu)楦咦杩馆斎?。這就是所謂的準雙向口。 34 CPU發(fā)出控制電平“1”,打開“與”門,又使多路開關MUX把CPU的地址/數據總線與T2柵極反相接通,輸出地址或數據。由圖上可以看出,上下兩個FET處于反相,構成了推拉式的輸出電路,其負載能力大大增強。D QCLK QMUXP0

15、.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳2、P0作為地址/數據總線35 P0引腳輸出地址/輸入數據 輸入信號是從引腳通過輸入緩沖器進入內部總線。 此時,CPU自動使MUX向下,并向P0口寫“1”,“讀引腳”控制信號有效,下面的緩沖器打開,外部數據讀入內部總線。2、P0作為地址/數據總線-真正的雙向口D QCLK QMUXP0.n讀鎖存器內部總線寫鎖存器讀引腳地址/數據控制VCCT1T2P0口引腳36二、P2的內部結構1.P2口作為普通I/O口D QCLK QMUXP2.n讀鎖存器內部總線寫鎖存器讀引腳地址控制VCCRTP2口引腳CPU發(fā)出控制電平“0” ,使多路

16、開關MUX倒向鎖存器輸出Q端,構成一個準雙向口。其功能與P1相同。37 2.P2口作為地址總線 在系統(tǒng)擴展片外程序存儲器擴展數據存儲器且容量超過256B (用MOVX DPTR指令)時,CPU發(fā)出控制電平“1”,使多路開關MUX倒內部地址線。此時,P2輸出高8位地址。D QCLK QMUXP2.n讀鎖存器內部總線寫鎖存器讀引腳地址控制VCCRTP2口引腳38三、P1口、P3口的內部結構 P1口的一位的結構 它由一個輸出鎖存器、兩個三態(tài)輸入緩沖器和輸出驅動電路組成-準雙向口。D QCLK QP1.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP1口引腳39P3的內部結構D QCLK QP3.n讀鎖存

17、器內部總線寫鎖存器讀引腳VCCRTP3口引腳第二輸入功能第二輸出功能作為通用I/O口與P1口類似-準雙向口(W=1)W40P3的內部結構D QCLK QP3.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP3口引腳第二輸入功能第二輸出功能P3第二功能(Q=1)此時引腳部分輸入(Q=1、W=1) ,部分輸出(Q=1、W輸出) 。W41P3第二功能各引腳功能定義:P3.0:RXD串行口輸入P3.1:TXD串行口輸出P3.2:INT0外部中斷0輸入P3.3:INT1外部中斷1輸入P3.4:T0定時器0外部輸入P3.5:T1定時器1外部輸入P3.6:WR外部寫控制P3.7:RD外部讀控制42綜上所述:當P

18、0作為I/O口使用時,特別是作為輸出時,輸出級屬于開漏電路,必須外接上拉電阻才會有高電平輸出;如果作為輸入,必須先向相應的鎖存器寫“1”,才不會影響輸入電平。當CPU內部控制信號為“1”時,P0口作為地址/數據總線使用,這時,P0口就無法再作為I/O口使用了。43P1、P2 和P3 口為準雙向口, 在內部差別不大, 但使用功能有所不同。 P1口是用戶專用 8 位準雙向I/O口, 具有通用輸入/輸出功能, 每一位都能獨立地設定為輸入或輸出。當有輸出方式變?yōu)檩斎敕绞綍r, 該位的鎖存器必須寫入“1”, 然后才能進入輸入操作。 P2口是 8 位準雙向I/O口。外接I/O設備時, 可作為擴展系統(tǒng)的地址總

19、線, 輸出高8位地址, 與P0 口一起組成 16 位地址總線。 對于 8031 而言, P2 口一般只作為地址總線使用, 而不作為I/O線直接與外部設備相連。 44實例2:使用P3口流水點亮8位LED 本實例通過使用P3口控制其外接8位LED流水點亮,來介紹單片機I/O使用方法。本例采用的電路圖如圖3.2所示。 1.實現(xiàn)方法 通過循環(huán)執(zhí)行以下操作來實現(xiàn)流水點亮8位LED。 (1)先點亮P3.0引腳LED,利用延時程序延時一段時間。 (2)接著點亮P3.1引腳LED,利用延時程序延時一段時間。 依照同樣的方法點亮其他引腳的LED。452 程序設計 46第2章 單片機原理及應用3.5 MCS-51

20、單片機存儲器的基本結構 MCS-51單片機有兩種存儲器,即程序存儲器和數據存儲器。程序存儲器用來存儲編入的程序;而數據存儲器用來存放單片機工作時用到的一些臨時數據。 從物理地址空間來看,MCS-51有四個存儲地址空間,即片內程序存儲器和片外程序存儲器,以及片內數據存儲器和片外數據存儲器。3.5.1 程序存儲器 對單片機進行編程時,一般現(xiàn)在計算機中用軟件編寫程序,再通過編程器將編好的程序寫入程序存儲器。 MCS-51單片機在一般情況下使用內部程序存儲器,當內47部存儲空間不夠時需要使用外部程序存儲器。程序存儲器受EA端外接電平的控制。 當EA=0(接地)時,單片機只能使用外部程序存儲器 當EA=1(接+5V電源)時,單片機先使用內部程序存 儲器,容量不夠時自動使用外部程序存儲器。 89C51系列單片機內部有4KB程序存儲器,存儲單元的地址編號是0000H0FFFH,當擴展外接60KB程序存儲器時,外部程序存儲器的地址編碼是1000HFFFFH。 MCS-51單片機上電復位后程序計數器PC的內容為0000H,因此系統(tǒng)從00

溫馨提示

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

評論

0/150

提交評論