青島科技大學(xué)單片機(jī)課件電專復(fù)習(xí)_第1頁
青島科技大學(xué)單片機(jī)課件電專復(fù)習(xí)_第2頁
青島科技大學(xué)單片機(jī)課件電專復(fù)習(xí)_第3頁
青島科技大學(xué)單片機(jī)課件電專復(fù)習(xí)_第4頁
青島科技大學(xué)單片機(jī)課件電專復(fù)習(xí)_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

單片機(jī)原理及應(yīng)用復(fù)習(xí)大綱青島科技大學(xué)自動(dòng)化與電子工程學(xué)院第二章MCS-51內(nèi)部結(jié)構(gòu)1MCS-51的引腳功能2當(dāng)前工作寄存器區(qū)的選擇

RS1RS0所選的4組寄存器

000區(qū)(內(nèi)部RAM地址00H~07H)

011區(qū)(內(nèi)部RAM地址08H~0FH)

102區(qū)(內(nèi)部RAM地址10H~17H)

113區(qū)(內(nèi)部RAM地址18H~1FH)3機(jī)器周期、指令周期與指令時(shí)序一、時(shí)鐘周期單片機(jī)的基本時(shí)間單位。若時(shí)鐘的晶體的振蕩頻率為fosc,則振蕩周期Tosc=1/fosc,時(shí)鐘周期T=2Tosc;例如:fosc=6MHz,Tosc=166.7ns。二、機(jī)器周期CPU完成一個(gè)基本操作所需的時(shí)間稱為機(jī)器周期。執(zhí)行一條指令分為幾個(gè)機(jī)器周期。每個(gè)機(jī)器周期完成一個(gè)基本操作。MCS-51單片機(jī)每12個(gè)振蕩周期為1個(gè)機(jī)器周期,第三章MCS-51單片機(jī)指令系統(tǒng)1.指令系統(tǒng)的尋址方式尋址方式就是在指令中說明操作數(shù)所在地址的方法。共7種尋址方式。

1.寄存器尋址方式

操作數(shù)在寄存器中

MOVA,Rn;(Rn)→A,n=0~7

表示把寄存器Rn的內(nèi)容傳送給累加器A2.直接尋址方式

操作數(shù)直接以單元地址的形式給出:

MOVA,40H

尋址范圍:

(1)內(nèi)部RAM的128個(gè)單元

(2)特殊功能寄存器。除了以單元地址的形式外,還可用寄存器符號(hào)的形式給出。例如:

MOVA,80H

與MOVA,P0是等價(jià)的。3.寄存器間接尋址方式

寄存器中存放的是操作數(shù)的地址,在寄存器前加前綴標(biāo)志“@”

。訪問內(nèi)部RAM或外部RAM的低256個(gè)字節(jié)時(shí),只能采用R0或R1作為間址寄存器。例如:

MOVA,@Ri

;i=0或1

其中Ri中的內(nèi)容為40H,把內(nèi)部RAM40H單元內(nèi)容送A。尋址范圍:(1)訪問內(nèi)部RAM低128個(gè)單元,其通用形式為@Ri(2)對(duì)外部內(nèi)部RAM的64K字節(jié)的間接尋址,例如: MOVXA,@DPTR(3)片外數(shù)據(jù)存儲(chǔ)器的低256字節(jié)例如:MOVXA,@Ri(4)堆棧區(qū)堆棧操作指令PUSH(壓棧)和POP(出棧)使用堆棧指針(SP)作間址寄存器4.立即尋址方式

操作數(shù)在指令中直接給出,需在操作數(shù)前面加前綴“#”。例如:

MOVA,#40H

5.基址寄存器加變址寄存器間址尋址方式

本尋址方式是以DPTR或PC作基址寄存器,以累加器A作為變址寄存器。6.位尋址方式

MCS-51有位處理功能,可以對(duì)數(shù)據(jù)位進(jìn)行操作。例如:MOVC,40H

是把位40H的值送到進(jìn)位位C。尋址范圍包括:(1)內(nèi)部RAM中的位尋址區(qū)。位有兩種表示方法,例如,40H;另一種是單元地址加上位,例如,(28H).0,指的是28H單元中的最低位。它們是等價(jià)的。(2)特殊功能寄存器中的可尋址位

可尋址位在指令中有如下4種的表示方法:a.直接使用位地址。例如PSW.5的位地址為0D5H。b.位名稱的表示方法。例如:PSW.5是F0標(biāo)志位,可使用F0表示該位。c.單元地址加位數(shù)的表示方法。例如:(0D0H).5。d.特殊功能寄存器符號(hào)加位數(shù)的表示方法。例如:PSW.5。7.相對(duì)尋址方式

在相對(duì)尋址的轉(zhuǎn)移指令中,給出了地址偏移量,以“rel”表示,即把PC的當(dāng)前值加上偏移量就構(gòu)成了程序轉(zhuǎn)移的目的地址:目的地址=轉(zhuǎn)移指令所在的地址+轉(zhuǎn)移指令的字節(jié)數(shù) +rel

偏移量rel是一帶符號(hào)的8位二進(jìn)制數(shù)補(bǔ)碼數(shù)。范圍是:–128-+127

偽指令在MCS-51匯編語言源程序中應(yīng)有向匯編程序發(fā)出的指示信息,告訴它如何完成匯編工作,這是通過使用偽指令來實(shí)現(xiàn)的。也稱為匯編程序控制命令。只有在匯編前的源程序中才有偽指令。經(jīng)過匯編得到目標(biāo)程序(機(jī)器代碼)后,偽指令已無存在的必要,所以“偽”體現(xiàn)在匯編時(shí),偽指令沒有相應(yīng)的機(jī)器代碼產(chǎn)生。常用的偽指令:

1.ORG(ORiGin)匯編起始地址命令2.END(ENDofassembly)匯編終止命令3.DB(DefineByte)定義字節(jié)命令

4.DW(DefineWord)定義數(shù)據(jù)字命令

5.EQU(EQUate)賦值命令6.DS定義空間命令7.BIT位地址符號(hào)命令

第4章MCS-51匯編語言程序設(shè)計(jì)1.

變量X存放在VAR單元中,函數(shù)值Y存放在FUNC單元中,試按下式的要求給Y賦值,寫出匯編語言程序。ORG1000HVARDATA30HFUNCDATA31HMOVA,VAR;XAJZDONE;若A=0,則轉(zhuǎn)到DONEJNBACC.7POSI;若A>0,則轉(zhuǎn)到POSIMOVA,#0FFH;若A<0,則Y=-1SJMPDONEPOSI:MOVA,#01HDONE:MOVFUNC,ASJMP$END給出80C51單片機(jī)產(chǎn)生三角波的匯編程序,假設(shè)起始地址為2000H。

ORG2000HSTART:MOVR0,#0FEHUP:MOVX @R0,A;三角波上升邊INCAJNZUPDOWN:DECA;A=0時(shí)再減1又為FFHJNZDOWNSJMPUP第5章MCS-5 1中斷系統(tǒng)1中斷源入口地址

外部中斷0 0003H定時(shí)器/計(jì)數(shù)器T0 000BH 外部中斷1 0013H

定時(shí)器/計(jì)數(shù)器T1 001BH 串行口中斷 0023H2外部中斷的觸發(fā)方式

電平觸發(fā)和邊沿觸發(fā)假設(shè)允許外部中斷0中斷,并設(shè)定它為高級(jí)中斷,其它中斷源為低級(jí)中斷,采用跳沿觸發(fā)方式。在主程序中編寫如下程序段:

SETBEA;CPU開中斷SETBEX0;允許外中斷0產(chǎn)生中斷SETBPX0;外中斷0為高級(jí)中斷SETBIT0;外中斷0為跳沿觸發(fā)方式第6章MCS-51定時(shí)器/計(jì)數(shù)器1.單片機(jī)復(fù)位時(shí),兩個(gè)寄存器的所有位都被清0。6.1.1工作方式控制寄存器TMOD8位分為兩組,高4位控制T1,低4位控制T0。(1)GATE——門控位

0:以TRX(X=0,1)來啟動(dòng)定時(shí)器/計(jì)數(shù)器運(yùn)行。

1:用外中斷引腳(INT0*或INT1*)上的高電平和TRX來啟動(dòng)定時(shí)器/計(jì)數(shù)器運(yùn)行。(2)M1、M0——工作方式選擇位

M1M0工作方式

00 方式0,13位定時(shí)器/計(jì)數(shù)器。01 方式1,16位定時(shí)器/計(jì)數(shù)器。10 方式2,8位常數(shù)自動(dòng)重新裝載11 方式3,僅適用于T0,T0分成兩個(gè)8 位計(jì)數(shù)器,T1停止計(jì)數(shù)。

(3)C/T*——計(jì)數(shù)器模式和定時(shí)器模式選擇位 0:定時(shí)器模式。 1:計(jì)數(shù)器模式。

2.定時(shí)器/計(jì)數(shù)器初始化

MCS-51單片機(jī)采用12MHz晶振,定時(shí)2ms,用定時(shí)器方式0時(shí)的16進(jìn)制初值應(yīng)為多少?

根據(jù)公式T=(TM-TC)*12/fosc(us)

(213-TC)×12/fosc=2msTC=8192-2000=6192=1830H第7章MCS-51串口通信1.1)SM0、SM1——串行口4種工作方式的選擇位

串行口的4種工作方式SM0SM1方式 功能說明

000同步移位寄存器方式(用于擴(kuò)展I/O口)0118位異步收發(fā),波特率可變(由定時(shí)器控制)1029位異步收發(fā),波特率為fosc/64或fosc/32113

9位異步收發(fā),波特率可變(由定時(shí)器控制)2.波特率的定義波特率的定義。對(duì)于定時(shí)器的不同工作方式,波特率的范圍不一定時(shí)器T1產(chǎn)生波特率的計(jì)算(1)方式0波特率=時(shí)鐘頻率fosc×1/12,不受SMOD位的值的影響。若fosc=12MHz,波特率為fosc/12即1Mb/s。(2)方式2波特率=(2SMOD/64)×fosc若fosc=12MHz:SMOD=0波特率=187.5kb/s;SMOD=1波特率=375kb/s

3)方式1或方式3時(shí),波特率為:

波特率=(2SMOD/64)×T1的溢出率實(shí)際設(shè)定波特率時(shí),T1常設(shè)置為方式2定時(shí)(自動(dòng)裝初值)這種方式不僅操作方便,也可避免因軟件重裝初值而帶來的定時(shí)誤差。綜合應(yīng)用題1.利用74LS273擴(kuò)展輸出口接8路發(fā)光二極管,按循環(huán)點(diǎn)亮方式輸出。并行口地址是8060H,晶振為12MHz。如下圖所示:要求:1、利用定時(shí)器T1實(shí)現(xiàn)120ms定時(shí),給出T1的定時(shí)常數(shù)。2、編程實(shí)現(xiàn)發(fā)光二極管每隔1.2秒鐘,右循環(huán)點(diǎn)亮1個(gè)燈。即初始L1亮,過1.2秒后L1滅,L2亮,1.2秒鐘后L2滅L3亮,...依次循環(huán)。

定時(shí)器T1的定時(shí)時(shí)間是60毫秒,定時(shí)器T1的初值應(yīng)該是216-60000,即15A0H.ORG0000H LJMPMAINORG000BH LJMPINTT1ORG0030HMAIN:MOVSP,#60HMOVA,#0FEHMOVDPTR,#8060HMOV@DPTR,AMOVR1,#20MOVTMOD,#10H;00010000BMOVTH1,#15H;120ms

溫馨提示

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

評(píng)論

0/150

提交評(píng)論