單片微型計算機的組成原理_第1頁
單片微型計算機的組成原理_第2頁
單片微型計算機的組成原理_第3頁
單片微型計算機的組成原理_第4頁
單片微型計算機的組成原理_第5頁
已閱讀5頁,還剩71頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

第四章單片微型計算機的組成原理

微處理器、微型計算機和單片機的概念;單片機的結構,指令的執行過程;

MCS-51單片機的組成原理。本節重點:MCS-51單片機的組成原理。本節難點:MCS-51單片機的組成原理。

本節內容:RAM00H01H02HFEHFFHD0HE0H001H000H002HFFFHROMPSWA………………………………7FH10110000100010111100001110001011ABAddressBusDBDataBusCBControlBus補充內容第一節微型計算機的結構及指令執行過程一、微型計算機結構五大部分:運算器,控制器,存儲器,輸入輸出裝置。

微處理器:由運算器和控制器組成,是計算機的核心,也稱中央處理單元(CPU)。常用的有Intel公司的8086系列,Zilog公司的Z80、Z8000,Motorola公司的6800等。總線:

所謂總線(Bus),一般指通過時分復用的方式,將信息以一個或多個源部件傳送到一個或多個目的部件的一組傳輸線。ABC總線ABC總線t1~t2t2~t3優點:(1)減少部件之間信息傳送線數,提高整機可靠性;(2)使得計算機擴充能力增強。單板機:微型計算機采用大規模集成電路組成,各組成部件可以方便地裝配在一塊印刷電路板上,構成單板機。由于單板機結構簡單、體積小、攜帶方便、抗干擾能力強、工作可靠、價格低廉、易于擴充使用,因此在國防、科研、工業、醫療衛生等許多方面得到了廣泛應用。

二、單片微型計算機結構4KBROM128BRAM8位CPU2X16位定時計數器可編程I/O接口時鐘單片微型機組成原理框圖

單片機的性能特點:(1)集成度高;(2)結構緊湊,可靠性好;(3)數據處理能力強、速度快;(4)功耗小、成本低。由于具有以上優點,若配以適當的外圍設備,構成單片單板機,則功能更強,應用更廣。目前單片機發展很快,大有取代當年單板機之勢,成為計算機發展的一個重要方面。

三、指令執行過程程序計數器地址寄存器累加器運算器寄存器區指令寄存譯碼數據緩沖器存儲器7409400000000001000200030004外部地址總線外部數據總線外部控制總線內部控制信號內部數據總線XXPCARDR時鐘及清零(1)程序計數器PC(16位)(2)地址寄存器AR(16位)(3)數據緩沖器DR(8位)(4)指令寄存譯碼器(5)寄存器區執行指令過程:取指階段;執行階段。第二節MCS-51單片計算機組成原理4KB程序存儲器128B數據存儲器2*16位定時/記數器64KB擴展控制器可編程I/O可編程串行口8051CPU振蕩器及定時器中斷RAM程序存儲器0000H0001H0002H0010HFFFFH00H01H02HFEHFFHD0HE0H001H000H002HFFFHROMPCPSWA………………………………8051單片機ABDB…………7FHCB…………數據存儲器一般緩沖區位尋址區寄存器3區寄存器2區寄存器1區寄存器0區00R007R708R00FR710R017R718R01FR7202F307F

一、寄存器1通用寄存器共分4個區,每個區8個寄存器:R0R1R2...R7。單片機每次只能選擇一個區,由程序狀態字中的RS1、RS0來確定。RS1RS0寄存器區000區011區102區113區2專用寄存器(1)程序計數器PC(2)累加器A(3)B寄存器(4)程序狀態字PSW7PSW6PSW5PSW4PSW3PSW2PSW1PSW0CYACF0RS1RS0OVP(I)CY(PSW7):進位標志。

11000111+)01101100100110011進位(II)AC(PSW6):輔助進位標志。加法或減法運算時,低4位向高四位數進位或借位。輔助進位(III)F0(PSW5):標志0。用戶定義的一個狀態標志(IV)RS0RS1:寄存器選擇控制位。(V)OV(PSW2):溢出標志。OV=1溢出溢出與進位的區別:進位表示8位二進制加法是否產生進位與借位。溢出則主要用于表示二進制加法的正確性。

0101101191+)001110115910010110符號位正數相加

11110110+)11101000111011110符號位進位位-10-24-34負數相減第6位第0位結論:當第6位與第7位同時不向前進位或同時向前進位時,沒有溢出,OV=0;當第6位與第7位只有一個發生進位,則溢出發生,OV=1乘法指令:無符號乘法MUL,當累加器A和寄存器B的乘積超過255時,OV=1,否則OV=0。除法指令:DIV,當除數為0時,OV=1,否則OV=0。(VI)P(PSW0):奇偶標志。累加器中值為1的位數的奇偶數。若為奇數則P=1,否則P=0。(5)棧指針寄存器SP堆棧是指在CPU外部存儲器中一個按先進后出原則組織的存儲區域。(1)是一個存儲區域;(2)按照先進后出原則組織。功用:1)子程序調用和中斷服務時CPU自動將當前PC

值壓棧保存,返回時自動將PC值彈棧;2)保護現場/恢復現場;3)數據傳輸。00H20H2FH7FH1FH30H普通RAM區位尋址區工作寄存器區SP棧頂下一個進棧的數據將存在此數據進棧已經進棧的數據存放在此初始SP復位后SP=07H,數據進棧時:首先SP+1指向08H單元,第一個放進堆棧的數據將放進08H單元,然后SP再自動增1,仍指著棧頂……堆棧區由特殊功能寄存器堆棧指針SP管理

堆棧區可以安排在RAM區任意位置,一般不安排在工作寄存器區和可按位尋址的RAM區,通常放在RAM區的靠后的位置。從堆棧取出數據時:取出的數據是最近放進去的一個數據,也就是當前棧頂的數據。然后SP再自動減1,仍指著棧頂……00H20H2FH7FH1FH30H普通RAM區位尋址區工作寄存器區SP棧頂當前要出棧的數據數據出棧SP-1指向下一個將要出棧的數據初始SP從堆棧取出數據時:取出的數據是最近放進去的一個數據,也就是當前棧頂的數據。然后SP再自動減1,仍指著棧頂……00H20H2FH7FH1FH30H普通RAM區位尋址區工作寄存器區SP-1指向新的棧頂,也就是下一個將要出棧的數據數據出棧初始SPpushapushbpushPSW……….

popapopbpopPSW這樣的指令順序對不對?

popPSWpopbpopa(6)其它專用寄存器數據指針寄存器(DPTR),端口寄存器(P0P1P2P3),串行數據緩沖器(SBUF),定時/計數器(T0T1),及IPIETMODTCONSCONPCON控制寄存器等等。

二、運算器包括:ALUA暫存寄存器、PSW。用來實現對操作數的算術/邏輯運算和位操作。帶進位和不帶進位的加法、減法運算;加1、減1和位操作;左移位、右移位和半字節移位;BCD碼調整等。

三、控制器控制器包括定時器控制邏輯電路、指令寄存器IR、指令譯碼器ID等,是微處理器的大腦中樞。需要掌握的問題:1單片微型計算機組成原理框圖?(Page.72Page.75)2指令的執行過程?(Page.73~75)3

MCS-51通用寄存器、專用寄存器作用?(Page.76~79)思考題:(不交作業)習題1習題4第三節MCS-51存儲器配置微處理器存儲器結構:ALU控制部件輸入/輸出部件存儲器ALU控制部件輸入/輸出部件程序存儲器數據存儲器CPU(a)(b)普林斯頓結構哈佛結構MCS-51單片機程序與數據分別在2個存儲器。因為:單片機往往為某個特定的對象服務,程序設計好后,一般固定不變。因而程序(包括常數表)可以而且也應該一次性永久放到單片機內。這樣不僅省去每次開機重新裝入步驟,還可以有效地防止因掉電和其它干擾而引起的程序丟失的錯誤。

MCS-51 單片機存儲器的配置:物理上:(1)片內程序存儲器(2)片外程序存儲器(3)片內數據存儲器(4)片外數據存儲器邏輯上:(1)片內外統一的64KB的程序數據存儲器(2)256B片內數據存儲器(3)64KB片外數據存儲器

一、程序存儲器作用:用于存放編好的程序和表格常數。牢記8051:4KB的ROM8751:4KB的EPROM8031:沒有程序存儲器程序存儲器可以通過MOVC指令訪問。使用方式:(1)片內程序存儲器EA=1(2)片外程序存儲器EA=0(3)內外結合的程序存儲器EA=1此時片外存儲器中低位地址未被使用。

二、內部數據存儲器數據存儲器的作用:用于存放運算的中間結果、數據暫存和緩沖以及標志位等。牢記訪問內部數據存儲器:MOV指令訪問外部數據存儲器:MOVX指令內部數據存儲器內部數據存儲器專用寄存器寄存器區位尋址區一般緩沖存儲區1內部數據存儲器(一般RAM區)一般緩沖區位尋址區寄存器3區寄存器2區寄存器1區寄存器0區00R007R708R00FR710R017R718R01FR7202F307F(1)寄存器區RS1RS0寄存器區000區011區102區113區單片機對寄存器操作最靈活,響應速度最快。內部數據寄存器4組工作寄存器根據PSW中的RS0和RS1來確定,每次只能選擇其中1組;單片機對寄存器操作最靈活,響應速度最快。因此編程時應首先選用;有效地設置4個寄存器工作區,可以提高現場保護能力和CPU的實時響應速度。4組工作寄存器如何選用?(2)位尋址區(20H~2FH共16個單元)位尋址空間(位地址)00~7FHH(3)一般緩沖區(字節尋址區)內部RAM塊中的30H~7FH構成一般緩沖區,可用于存放數據,也可以作為堆棧存儲區域。它是按照字節尋址。2專用寄存器8051內部有19個專用寄存器,其中4個雙字節寄存器,PC寄存器在物理上是獨立的,其余18個寄存器都屬于內部數據存儲器的專用寄存器(SFR)塊。特殊功能寄存器功能名稱地址復位后初態B通用寄存器F0H00HA累加器E0H00HPSW程序狀態寄存器D0H00HIP中斷優先級控制B8H***00000BP3P3口數據B0HFFHIE中斷允許A8H0**00000BP2P2口數據A0HFFH表4-3MCS-51專用寄存器特殊功能寄存器功能名稱地址復位后初態SBUF串行口發送接收99H不定SCON串行口控制98H00HP1P1口數據90HFFHTH1T1計數器高8位8DH00HTH0T0計數器高8位8CH00HTL1T1計數器低8位8BH00HTL0T0計數器低8位8AH00H表4-3MCS-51專用寄存器特殊功能寄存器功能名稱地址復位后初態TMOD定時器/計數器方式控制寄存器89H00HTCON定時器控制字88H00HPCON電源控制寄存器87H00HDPH地址寄存器高8位83H00HDPL地址寄存器低8位82H00HSP堆棧指針寄存器81H07HP0P0口數據80HFFH表4-3MCS-51專用寄存器在專用寄存器中有11個寄存器有專門的位地址,可以按位尋址(參考圖4-9)。

三、外部數據存儲器MCS51外部數據存儲器尋址空間為64KB。對外部數據存儲器可用R0、R1及DPTR間接尋址寄存器。R0、R1為8位寄存器,尋址范圍為256B;DPTR為16位寄存器,尋址范圍為64KB。第四節時鐘電路及時序

一、時鐘電路

圖4-10MCS-51內部方式時鐘電路圖4-11MCS-51外部方式時鐘電路外部晶振在2~12MHz,C1C2一般30或47PF1一般為頻率低于12MHz的方波

二、時序振蕩周期:單片機振蕩電路輸出的脈沖信號的周期。狀態周期:內部時鐘信號的周期,為振蕩周期的2倍。機器周期:CPU完成一個獨立操作的時間。指令周期:CPU執行一條指令的時間。一個機器周期有6個狀態,一個狀態有2個節拍P1P2。因此一個機器周期:S1P1、S1P2、S2P1、S2P2、...、S6P1、S6P6。圖4-128051取指/執行時序ALE:MCS51擴展系統的外部存儲器低8位的鎖存信號,在訪問程序存儲器的機器周期內,ALE信號二次有效(S1P2~S2P1產生正脈沖)因此可以作為時鐘信號輸出。CPU程序存儲器P0P1P3P2DATA地址:0~7位地址:8~15位ALE但是在執行MOVX命令時,要跳過一個ALE信號,因此ALE的頻率可能是不穩定的。需要掌握的問題:1數據存儲器和程序存儲器作用?2MCS-51數據存儲器和程序存儲器如何配置(記住地址分配)?(Page.80~81)3振蕩周期、狀態周期、機器周期、指令周期的定義?習題(本章結束后一起交上來)習題2習題3第五節輸入輸出端口MCS-51單片機有4個口,共32根I/O線。所有4個口都是雙向口,每口包含一個鎖存器,即專用寄存器P0~P3,一個輸出驅動和一個輸入緩沖器。CPU存儲器P0P1P3P2DATA地址:0~7位地址:8~15位ALE地址低8位地址高8位數據無MOVX指令(訪問程序存儲器)S1S2S3S4S5S6S1S2S3S4S5S6ALEPSENRDP2P0PCHOUTPCHOUTDPHOUT或P2OUTPCLOUTPCLOUTPCLOUTPCLOUTINSTININSTINDATAIN機器周期機器周期一P0口(1)作輸出口時,接上拉電阻(2)準雙向口:作輸入口時,必須先向鎖存器寫1,關斷2個輸出場效應管。作I/O口時:作地址/數據總線:(1)在實際應用中,P0口常用來傳送8位數據信息。(2)當P0口當地址數據總線使用時,就不能做為I/O口使用了。

P0口給出地址低8位。二P1口P1口是8位準雙向口,作通用輸入/輸出使用;在輸出部分有別于P0口,它接有上拉電阻;每一位可以獨立的定義為輸入或輸出。CPU既可以對P1口進行字節操作,也可以位操作;當做輸入方式時,該位鎖存器必須寫1。DQCLKQP1.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP1口引腳內部上拉電阻12三P2口P2口是8位準雙向口,可作通用輸入/輸出用;在輸出部分接有上拉電阻;當外接程序存儲器時,P2口給出地址高8位,此時不能作I/O口;當外接數據存儲器時,分為兩種情況:(1)RAM<256B;(2)RAM>256B。D

QCLP2.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP2口引腳內部上拉電阻121地址控制四P3口P3口是8位準雙向口,可作通用輸入/輸出用;在輸出部分接有上拉電阻;可以獨立地作為串行輸入/輸出口;作為控制信號線。DQCLKQP3.n讀鎖存器內部總線寫鎖存器讀引腳VCCRTP3口引腳第二輸入功能第二輸出功能W&123P3口的第二功能五P0-P3口的負載能力及接口要求每位輸出驅動P0可驅動8個LSTTL輸入當通用口時需接上拉電阻當地址數據總線不接上拉電阻P1~P3可驅動8個LSTTL輸入六I/O口的讀-修改-寫特性讀鎖存器指令是從鎖存器中讀出數據,進行處理,并把處理以后的數據重新寫入鎖存器,這類指令稱為“讀-修改-寫”指令。如:ANL(邏輯與,例如ANLP1,A)

INC(遞增,例如INCP2)

“讀-修改-寫”指令的理由:避免誤解引腳上的電平。第六節復位電路復位即

溫馨提示

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

評論

0/150

提交評論