第2章單片機系統(tǒng)組成原理_第1頁
第2章單片機系統(tǒng)組成原理_第2頁
第2章單片機系統(tǒng)組成原理_第3頁
第2章單片機系統(tǒng)組成原理_第4頁
第2章單片機系統(tǒng)組成原理_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第2章

單片機系統(tǒng)組成原理2.1MCS-51單片機組成原理2.2單片機復(fù)位電路設(shè)計2.3MCS-51存儲器配置2.4定時器/計數(shù)器2.5中斷系統(tǒng)

2.1

MCS-51單片機組成原理

MCS-51單片機的組成:1.

8位CPU2.片內(nèi)ROM/EPROM、RAM3.片內(nèi)并行I/O接口4.片內(nèi)16位定時器/計數(shù)器5.片內(nèi)中斷處理系統(tǒng)6.片內(nèi)全雙工串行I/O口不同型號MCS-51單片機CPU處理能力和指令系統(tǒng)完全兼容,只是存儲器和I/O接口的配置有所不同。MCS-51單片機結(jié)構(gòu)2.2

MCS-51單片機引腳1.I/O口線功能4個8位并行I/O接口引腳P0.0~P0.7、P1.0~P1.7、P2.0~P2.7和P3.0~P3.7為多功能引腳,可自動切換用作數(shù)據(jù)總線、地址總線、控制總線和或I/O接口外部引腳2.控制線ALE:地址鎖存允許信號端PSEN:外部程序存儲器讀選通信號端EA/VPP:程序存儲器選擇信號端和編程電源輸入端復(fù)位:

RST/VPD:復(fù)位信號端和后備電源輸入端。輸入10ms以上高電平脈沖,單片機復(fù)位。VPD使用后備電源,可實現(xiàn)掉電保護(hù)。電源工作電源:VCC、VSS、

復(fù)位電路: 1)上電復(fù)位 2)外部信號復(fù)位單片機RSTK+5V200Ω1K30μF時鐘時鐘頻率:范圍要求在1.2MHz~12MHz之間。一般從外部振蕩器輸入時鐘信號。機器周期:完成一個基本操作所需要的時間。一個機器周期由12個時鐘周期組成。指令周期:一條指令的執(zhí)行時間。以機器周期為單位:單周期、雙周期和四周期指令。思考題:設(shè)應(yīng)用單片機晶振頻率為12MHz,問機器周期為多少?指令周期分別為多少?XTAL1

單片機

XTAL20000HFFFFH0000HFFFFHROM內(nèi)RAM外RAM00HFFH寄存器區(qū)位尋址區(qū)數(shù)據(jù)緩沖區(qū)SFR20H30H80HE0HA2.3

MCS-51寄存器配置物理上4個存儲器地址空間:片內(nèi)/片外程序存儲器空間片內(nèi)/片外數(shù)據(jù)存儲器空間邏輯上3個存儲器地址空間:64KB程序存儲器256B片內(nèi)數(shù)據(jù)存儲器64KB片外數(shù)據(jù)存儲器一、物理空間與地址二、程序和數(shù)據(jù)存儲器邏輯空間普林斯頓結(jié)構(gòu):程序和數(shù)據(jù)共用一個存儲器邏輯空間,統(tǒng)一編址。哈佛結(jié)構(gòu):程序與數(shù)據(jù)分為兩個獨立存儲器邏輯空間,分開編址。三、片內(nèi)RAM寄存器MCS-51的寄存器在片內(nèi)RAM都有映像地址。使用時,既可用寄存器名,也可用對應(yīng)單元地址。1.片內(nèi)RAM工作寄存器區(qū):字節(jié)地址:00H~1FH位尋址區(qū):字節(jié)地址:20H~2FH位地址為:00H~7FH數(shù)據(jù)緩沖區(qū)/堆棧區(qū):字節(jié)地址:00H~7FH一般使用30H~7FH2.特殊功能寄存器SFR占用字節(jié)地址:80H~FFH位尋址寄存器:其字節(jié)地址可被8整除。專用寄存器:A、B、PSW、DPTR、SPI/O接口寄存器:

P0、P1、P2、P3、SBUF、TMOD、TCON、SCON…

實質(zhì)是計數(shù)器,脈沖每一次下降沿,計數(shù)寄存器數(shù)值將加1。計數(shù)的脈沖如果來源于單片機內(nèi)部的晶振,由于其周期極為準(zhǔn)確,這時稱為定時器。計數(shù)的脈沖如果來源于單片機外部的引腳,由于其周期一般不準(zhǔn)確,這時稱為計數(shù)器。

8031有2個可獨立控制的16位定時器/計數(shù)器:T0、T1。+1計數(shù)器溢出中斷脈沖控制開關(guān)2.4

MCS-51定時器/計數(shù)器

2.4.1MCS-51計數(shù)/定時器的原理定時器控制、狀態(tài)寄存器1)TMOD定時器方式寄存器(89H)1)功能選擇位C/T:=0,定時功能,計數(shù)內(nèi)部機器周期脈沖;=1,計數(shù)功能,計數(shù)引腳T0(T1)輸入的負(fù)脈沖。2)方式選擇位M1、M0:3)門控方式選擇位GATE

計數(shù)器啟動方式的選擇確定定時器工作方式指令:

MOVTMOD,#方式字例:設(shè)T0用方式2非門控定時,T1用方式1門控計數(shù)。

MOVTMOD,#0D2H;11010010B

T1T02.4.2

定時器工作方式由方式選擇位M1、M0設(shè)定一、

方式013位定時/計數(shù)器。THx8位和TLx低5位組成13位加1計數(shù)器,此種方式與MCS-48系列兼容,如果不是為了兼容的目的,一般不用方式0.方式0的全部功能,方式1都可以代替。二、

方式116位定時/計數(shù)器。THx8位和TLx8位組成16位加1計數(shù)器最大計數(shù)脈沖個數(shù):1~65536(216),最長定時時間(晶振12MHzT=1s):1s~65536×T=65.54ms非門控方式:當(dāng)GATE=0,

控制權(quán)由TRx決定

TRx=1計數(shù)開始

TRx=0計數(shù)停止門控方式:當(dāng)GATE=1、TRx=1

控制權(quán)由INTx決定

INTx=1計數(shù)開始

INTx=0計數(shù)停止啟動計數(shù)方式:三、

方式2

用于需要重復(fù)定時和計數(shù)的場合。最大計數(shù)值:256(28)最大定時時間(晶振12MHz時T=1s):256s自動恢復(fù)初值8位定時/計數(shù)器。TLx為8位加1計數(shù)器,THx為8位初值暫存器。四、方式3

T0分成2個8位定時器:TL0定時/計數(shù)器和TH0定時器TL0占用T0控制位:C/T,TR0,GATE;TH0占用T1控制位:TR1。T1不能使用方式3工作2.4.3

計算時間常數(shù)X(計算初值)計數(shù)功能:X=2n-計數(shù)值n:8/13/16定時功能:X=2n-t/Tt:定時時間(s)T:機器周期 =12/晶振頻率如:晶振為12MHz時,T=12/12MHz=12÷(12×10-6)(秒)=1×10-6=1us一、

MCS-51定時器的應(yīng)用定時器初始化編程:使用定時器工作之前,先寫入控制寄存器,確定好定時器工作方式。初始化編程格式:MOVTMOD,#方式字;選擇方式MOVTHx,#XH ;裝入Tx時間常數(shù)MOVTLx,#XLSETBEA ;開Tx中斷SETBETxSETBTRx ;啟動Tx定時器。

例:由P1.0輸出方波信號,周期為2ms,設(shè)fosc=12MHz。2ms解:每隔1ms改變一次P1.0的輸出狀態(tài),即形成方波,用T0非門控方式1定時。計算時間常數(shù):X=216-t/T=216–(/1000)/10-6=65536-1000=64536=FC18H

ORG 0000H AJMP MAIN ORG 000BH;T0中斷硬件入口地址

AJMP PT0INT;跳到中斷服務(wù)程序

ORG 0030H

MAIN: MOV TMOD,#01H;中斷方式

MOV TL0,#18H;計數(shù)初值

MOV TH0,#0FCH SETB EA;開放總中斷

SETB ET0;開放T0中斷

SETB TR0;啟動定時器

HERE: SJMP HERE;等待中斷,相當(dāng)于執(zhí)行其它任務(wù)

PT0INT: MOV TL0,#18H;中斷服務(wù)程序;置初值

MOV TH0,#0FCH CPL P1.0;取反,產(chǎn)生方波

RETI;中斷返回例

P1.7驅(qū)動LED亮1秒滅1秒地閃爍,設(shè)時鐘頻率為12MHz。

長定時方法:增加一個軟件計數(shù)器(如R7),記錄中斷次數(shù),計滿n個中斷為1秒。

ORG 0000H AJMP MAIN ORG 001BH AJMP PT1INT ORG 0030HSTART:MOVR7,#00H

MOVTMOD,#10H MOVTL1,#0F0H MOVTH1,#0D8HSETB EA SETB ET1 SETB TR1HERE:SJMPHEREPT1INT:MOVTL1,#0F0H MOVTH1,#0D8H INCR7CJNER7,#10,PENDMOVR7,#00HCPLP1.7PEND:RETI例

定時器外部引腳T0(T1)用作外部中斷信號輸入端。外部負(fù)脈沖引起中斷請求,選計數(shù)方式,時間常數(shù)為FFH。

例:門控方式測量正脈沖寬度

解:INT1引腳輸入被檢測信號,記錄在正脈沖的時間內(nèi)包含機器脈沖個數(shù)。

設(shè)脈寬小于65.5ms

等待查詢INT0,正脈沖過后,讀出TH1TL1。START: MOVTMOD,#90H MOVTL1,#00H MOVTH1,#00HWAIT1: JB P3.3,WAIT1 SETBTR1WAIT2:JNB P3.3,WAIT2WAIT3:JB P3.3,WAIT3 CLR TR1 MOV R2,TL1 MOV R3,TH1 …TR1=1 T1啟動TR1=0 T1停止INT1一、中斷系統(tǒng)——重要指標(biāo)日常生活中的中斷與計算機中斷的比較:

某人看書 執(zhí)行主程序 日常事務(wù)電話鈴響 中斷信號如INT=0 中斷請求暫??磿?/p>

暫停執(zhí)行主程序中斷響應(yīng)書中作記號當(dāng)前PC入棧 保護(hù)斷點電話談話 執(zhí)行中斷程序 中斷服務(wù)繼續(xù)看書 返回主程序 中斷返回日常事務(wù)程序中斷服務(wù)程序2.5中斷系統(tǒng)

2.5.1

中斷概念

所謂“中斷”,是指CPU執(zhí)行正常程序時,系統(tǒng)中出現(xiàn)特殊請求,CPU暫時中止當(dāng)前的程序,轉(zhuǎn)去處理更緊急的事件,處理完畢后,CPU返回原程序的過程。中斷與子程序的最主要區(qū)別:子程序是預(yù)先安排好的;中斷是隨機發(fā)生的。二、中斷的定義,與子程序的區(qū)別三、MCS-51中斷系統(tǒng)內(nèi)部結(jié)構(gòu)2.5.2

中斷系統(tǒng)控制

一、中斷控制寄存器1.中斷標(biāo)志位:TF1、TF0、IE1、IE0、RI、TI登記各中斷源請求信號:=1,有中斷請求;=0,無中斷請求。CPU響應(yīng)中斷后,該中斷標(biāo)志自動清零。TI,RI標(biāo)志必須軟件清零。2.外部中斷觸發(fā)方式選擇位:IT0、IT1=1:負(fù)邊沿觸發(fā)中斷請求;=0:低電平觸發(fā)中斷請求。二、

中斷允許寄存器

中斷允許控制位:EA、ES、ET1、EX1、ET0、EX0=1開中斷;=0關(guān)中斷。例:允許CPU響應(yīng)INT0的中斷請求

SETBEX0 SETBEA 三、

中斷優(yōu)先寄存器中斷優(yōu)先級控制位:PS、PT1、PX1、PT0、PX02級優(yōu)先級:=1為高優(yōu)先級,=0為低優(yōu)先級。同一優(yōu)先級別按內(nèi)部查詢順序排列優(yōu)先級:高INT0、T0、INT1、T1、SIO低。2.5.3

中斷響應(yīng)和中斷返回

一、中斷響應(yīng)周期時序

每個機器周期采樣中斷標(biāo)志位,若有中斷請求,將在下一個機器周期按優(yōu)先級順序進(jìn)行中斷查詢。

二、各中斷源中斷服務(wù)程序的入口地址

三、中斷響應(yīng)阻斷

1.當(dāng)CPU未執(zhí)行完一條指令。2.當(dāng)有同級或高級中斷服務(wù)。3.執(zhí)行RETI指令或訪問IE、IP的指令后,不能立即響應(yīng)中斷。

四、中斷返回中斷返回指令:RETI=RET指令+通知CPU中斷服務(wù)已結(jié)束。中斷響應(yīng)時間:正常中斷響應(yīng)時間至少為3~8個機器周期,如果有同級或高級中斷服務(wù),將延長中斷響應(yīng)時間。2.5.4

中斷處理過程(基本理解的要求)一、中斷響應(yīng)條件1.有中斷請求信號2.系統(tǒng)處于開中斷狀態(tài)二、中斷響應(yīng)過程1.保護(hù)斷點:將斷點地址壓入堆棧保存,即當(dāng)前PC值入棧。2.尋找中斷源:中斷服務(wù)程序硬件入口?PC,轉(zhuǎn)入中斷服務(wù)。3.中斷處理:執(zhí)行中斷源所要求的程序處理段。4.中斷返回:執(zhí)行RETI指令,棧頂內(nèi)容?PC,程序跳轉(zhuǎn)回斷點處。

2.5.5

多中斷源系統(tǒng)當(dāng)外部中斷源多于中斷輸入引腳時,可采取以下措施:1.用定時器計數(shù)輸入信號端T0、T1作外部中斷入口引腳2.用串行口接收端RXD作外部中斷入口引腳3.用一個中斷入口接受多個外部中斷源,并加入中斷查詢電路。

2.5.6

處理外部中斷舉例要求每次按動按鍵,使外接發(fā)光二極管LED改變一次亮滅狀態(tài)。解:INT0輸入按鍵信號,P1.0輸出改變LED狀態(tài)。一、跳變觸發(fā):每次跳變引起一次中斷請求

ORG 0000H

AJMPMAIN ORG 0003H ;中斷入口 AJMP PINT0 ORG 0100H ;主程序MAIN:SETB EA ;開總允許開關(guān)

SETB EX0 ;開INT0中斷

SETB IT0;負(fù)跳變觸發(fā)中斷Here:SJMP Here;相當(dāng)于執(zhí)行其

溫馨提示

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

評論

0/150

提交評論