51單片機最小系統(tǒng)工程訓練指導書_第1頁
51單片機最小系統(tǒng)工程訓練指導書_第2頁
51單片機最小系統(tǒng)工程訓練指導書_第3頁
51單片機最小系統(tǒng)工程訓練指導書_第4頁
51單片機最小系統(tǒng)工程訓練指導書_第5頁
已閱讀5頁,還剩144頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單片機實驗板

工程訓練指導書

物理與電子工程系

目錄

實驗一LED閃爍燈設(shè)計-------------------------------------------------------4

實驗二模擬開關(guān)控制指示燈設(shè)計-----------------------------------------------7

實驗三多路開關(guān)狀態(tài)指示設(shè)計-------------------------------------------------10

實驗四廣告燈左、右移設(shè)計------------------------------------------------14

實驗五查詢法設(shè)計廣告燈------------------------------------------------18

實驗六報警產(chǎn)生器設(shè)計-----------------------------------------------------21

實驗七I/O并行口直接驅(qū)動LED顯示設(shè)計------------------------------------25

實驗八單鍵識別設(shè)計-------------------------------------------------------29

實驗九一鍵多功能按鍵識別設(shè)計-------------------------------------------33

實驗十00-99計數(shù)器設(shè)計--------------------------------------------------38

實驗H"一,六十秒計時器設(shè)計---------------------------------------------------42

實驗十二可預(yù)置可逆4位計數(shù)器設(shè)計-----------------------------------------46

實驗十三動態(tài)數(shù)碼顯示設(shè)計--------------------------------------------------51

實驗十四4X4矩陣式鍵盤識別設(shè)計-----------------------------------------55

實驗十五定時計數(shù)器T0作定時應(yīng)用設(shè)計(一)-----------------------------64

實驗十六定時計數(shù)器T0作定時應(yīng)用設(shè)計(二)--------------------------------71

實驗十七9.9秒跑馬表設(shè)計---------------------------------------------------76

實驗十八“嘀、嘀、……”報警聲設(shè)計----------------------------------------82

實驗十九“叮咚”門鈴設(shè)計---------------------------------------------------87

實驗二十智能電子鐘設(shè)計------------------------------------------------------92

實驗二十一“新年好”音樂設(shè)計--------------------------------------------------102

實驗二十二電子琴設(shè)計--------------------------------------------------------108

實驗二十三模擬計算器數(shù)字輸入及顯示設(shè)計---------------------------------119

實驗二十四數(shù)字電壓表設(shè)計----------------------------------------------------126

實驗二十五DS18B20數(shù)字溫度計設(shè)計-----------------------------------------131

附錄A實驗板中模擬/數(shù)字轉(zhuǎn)換器ADC0804的參數(shù)及使用說明-------------------------139

附錄B實驗板中DS18B20智能溫度控制器的參數(shù)及使用-----------------------------141

單片機實驗板詳細說明

該單片機實驗板設(shè)計巧妙,經(jīng)過了嚴格的檢查,可放心使用。

由于考慮到眾多的實驗要在此單片機實驗板上完成,然而每個實驗用到的單片機的I/O

口不盡相同,所以設(shè)計時采用撥動撥碼開關(guān)和替換跳線帽的位置來完成每個實驗內(nèi)容。

在完成各個實驗內(nèi)容時,首先要看清楚實驗電路原理圖,然后按照實驗內(nèi)容給出的單片

機實驗板上的硬件連線、撥動撥碼開關(guān)或替換跳線帽的位置來完成系統(tǒng)設(shè)計。檢查無誤后下

載程序。由于每個程序都經(jīng)過了單片機實驗板的驗證,證明程序沒有問題。所以要是調(diào)不出

來,肯定是硬件沒有連好,再次檢查直到完成實驗。每做完一個實驗后,把撥動撥碼開關(guān)和

跳線帽恢復(fù)到初始狀態(tài)。

一、撥碼開關(guān)和跳線帽的初始化狀態(tài)介紹如下:

單片機實驗板上有8聯(lián)撥動撥碼開關(guān)4個(JP1、JP2、JP3、JP4),2聯(lián)撥動撥碼開關(guān)

1個(JP5),跳線帽13個。在初始化狀態(tài)下,撥動撥碼開關(guān)都處于緊靠數(shù)字的位置,此

位置下的撥動撥碼開關(guān)為不用狀態(tài)。8排針接插件J3上的8個跳線帽要全部連接在標號為

P0位置上。單排針接插件J4上的跳線帽要連接在0E和GND的位置上。單排針接插件J5上

的跳線帽連接在0E和GND的位置上。單排針接插件J6上的跳線帽要連接在0E和VCC的位

置。單排針接插件J7上的跳線帽要連接在CS和GND的位置。雙排針接插件J8上的跳線帽

應(yīng)該和J8上排插針相連。4個8聯(lián)撥動撥碼開關(guān)(JP1、JP2、JP3、JP4)應(yīng)該全部所至下

方。

二、實驗中具體使用介紹如下:

(1)當用到發(fā)光二極管時,要把8聯(lián)撥動撥碼開關(guān)JP4撥到ON狀態(tài)。

(2)當用到喇叭輸出時,把2聯(lián)撥動撥碼開關(guān)JP5的1號撥動開關(guān)撥上去;當用DS18B20

做測溫時,把2聯(lián)撥動撥碼開關(guān)JP5的2號撥動開關(guān)撥上去。

(3)當用到矩陣鍵盤輸入時,把8聯(lián)撥動撥碼開關(guān)JP3的撥動開關(guān)全部撥上去。

(4)當用到撥動開關(guān)SW1-SW4時,把8聯(lián)撥動撥碼開關(guān)JP2對應(yīng)的撥動開關(guān)撥上去。

(5)當用到按鍵開關(guān)S18-S21時,把8聯(lián)撥動撥碼開關(guān)JP2對應(yīng)的撥動開關(guān)撥上去。

(6)當用8個動態(tài)數(shù)碼管顯示時,首先應(yīng)該把單排針接插件J4的0E與VCC用跳線帽

相連。同時8聯(lián)撥動撥碼開關(guān)JP1對應(yīng)的撥動開關(guān)撥上去。8聯(lián)撥動撥碼開關(guān)JP1的S1-S8

分別對應(yīng)三極管Q2—Q9o

(7)當用8個動態(tài)數(shù)碼管輸入a—h數(shù)碼時,如果用到POD,不用移動跳線帽;如果

用到P1口,把8個跳線帽移到下面的標有P1的位置。

(8)當用P0口做數(shù)碼管靜態(tài)顯示時,把單排針接插件J5的0E與VCC用跳線帽相連。

(9)當用P2口做數(shù)碼管靜態(tài)顯示時,把單排針接插件J6的0E與GND用跳線帽相連。

總之,在用單片機編寫簡單程序時,匯編語言編寫起來比較簡單,但復(fù)雜的程序還是用

C51編寫起來比較簡單。所以C51編程是必學的。這里基本上所有的實驗程序都采用匯編和

C51兩種編程方法。有的實驗還給出了兩套設(shè)計方案,便于比較學習。

實驗一LED閃爍燈設(shè)計

一、實驗?zāi)康?/p>

1、初步了解單片機I/O口的簡單控制。

2、掌握單片機外圍常用電路的固定接法。

二、設(shè)計原理

利用單片機控制一個發(fā)光二極管,使此發(fā)光二極管間隔0.2秒亮、滅一次。

三、參考電路

VCCR15

VCC

圖1.1LED閃爍燈外部電路原理圖

四、電路硬件說明

如圖1.1所示:在單片機的P1.0端口上通過8聯(lián)撥動撥碼開關(guān)JP4的相應(yīng)撥碼開關(guān)連

接一個發(fā)光二極管D1。

五、程序設(shè)計內(nèi)容

(1)延時程序的設(shè)計方法:

單片機指令的執(zhí)行時間是很短的,它的數(shù)量級為微秒級。在本程序設(shè)計中,要求LED

閃爍燈的閃爍時間間隔為0.2秒。相對于微秒來說,相差太大,所以在執(zhí)行某一指令時,需

要插入延時程序,來達到的要求。然而這樣的延時程序是如何設(shè)計呢?下面具體介紹其原理:

如圖1.1所示,單片機所用的石英晶體為12MHz。因此,1個機器周期為1微秒。

延時10ms子程序機器周期微秒

MOVR6,#201個1

DI:MOVR7,#2481個1+1X20

DJNZR7,$2個2X248+2X20X248

DJNZR6,DI2個2X20

因此,上面的延時程序時間為10.478ms。

由以上可知,當R6=10、R7=248時,延時時間為5ms;R6=20、R7=248時,延時時

間為10ms。通常所用延時時間以此為基本的計時單位。比如本實驗要求為0.2秒=200ms,

所以用10msXR5=200ms,得到R5=20。延時子程序如下:

DELAY:MOVR5,#201

D1:MOVR6,#201+20

D2:MOVR7,#2481+20+20(1+20)

DJNZR7,$2X248+20X2X248+20(2X248+20X2X248)

DJNZR6,D22X20+2X20X20

DJNZR5,D12X20

RET2

上面的延時程序為0.220081so

(2)單片機的PL0端口的輸出控制方法:

如圖1.1所示,根據(jù)發(fā)光二極管的單向?qū)щ娦?,當單片機的P1.0端口輸出高電平,即

P1.0=l時,發(fā)光二極管D1熄滅;當單片機的P1.0端口輸出低電平,即P1.0=0時,發(fā)光

二極管D1亮??梢允褂肧ETBP1.0指令使單片機的P1.0端口輸出高電平,使用CLRP1.0

指令使單片機的P1.0端口輸出低電平。

六、程序流程圖(如圖1.2所示)

圖1.2LED閃爍燈設(shè)計流程圖

七、匯編源程序

ORG0000H系統(tǒng)復(fù)位

LJMPSTART轉(zhuǎn)入主程序

ORG0003H外部中斷0

RETI中斷返回

ORGOOOBH定時器。溢出中斷

RETI

ORG0013H外部中斷1

RETI

ORG001BH定時器1溢出中斷

RETI

ORG0023H外部中斷2

RETI

ORG0100H

START:CLRP1.0和P1.0口接的二極管亮

LCALLDELAY200MS延時0.2秒

SETBP1.0和P1.0口接的二極管滅

LCALLDELAY200MS延時0.2秒

LJMPSTART循環(huán)

DELAY200MS:MOVR5,#20延時子程序

DI:MOVR6,#20

D2:MOVR7,#248

DJNZR7,$

DJNZR6,D2

DJNZR5,D1

RET

END

八、C語言源程序

ftinclude<AT89X51.H>

sbitL1=P1"O;

voiddelay02s(void)〃延時子程序〃

unsignedchari,j,k;

for(i=20;i>0;i--)

for(j=20;j>0;j—)

for(k=248;k>0;k一);

)

voidmain(void)〃主程序//

{while(1)//進入循環(huán)//

{Ll=0;//指示燈亮//

delay02s();//延時0.2秒//

Ll=l;〃指示燈滅//

delay02s();〃延時0.2秒//

}

九、注意事項

(1)用Keil軟件時,注意中文說明及注釋。

(2)用匯編語言編寫程序時不區(qū)分大小寫,但用C語言編寫程序時注意區(qū)分大小寫。

(3)匯編語言和C語言定義口的方式不同,如匯編語言為P1.0,P2.0,P3.0,而C語

言為Pl_0,P2_0,P3_0?

實驗二模擬開關(guān)控制指示燈設(shè)計

一、實驗?zāi)康?/p>

1、掌握單片機外圍常用電路的固定接法。

2、掌握單片機利用模擬開關(guān)控制指示燈的簡單設(shè)計。

二、設(shè)計原理

如圖2.1所示,用發(fā)光二極管監(jiān)視模擬開關(guān)的狀態(tài)。如果模擬開關(guān)合上,發(fā)光二極管點

亮;如果模擬開關(guān)打開,發(fā)光二極管熄滅。

三、參考電路

VCCR15

「10K

]40

二TP10VCC~39_1

~TPHPOO莖2

二±P12P01373

P13P024

二53?

P14P035

二737

P15P046

二717

P16P057

二TUI

P17P06亙8

~~RST"AT89C51

RESETP079

P3.010

P30EA

11

---vccP31ALE

10K12

1~P32PSEN

P33P27

14

P34P26

15

P35P25

C316

P36P24

17

P37P23

18

HPT-iXTAL1P22

19

XTAL2P21

憚吊2募Z120

EVSS20

圖2.1模擬開關(guān)控制指示燈原理圖

四、電路硬件說明

如圖2.1所示,模擬開關(guān)SW1通過8聯(lián)撥動撥碼開關(guān)連接在單片機的P3.0端口上,用

發(fā)光二極管D1(通過8聯(lián)撥動撥碼開關(guān)接在單片機的P1.0端口上)顯示模擬開關(guān)SW1的狀

態(tài)。當模擬開關(guān)SW1斷開時,單片機的P3.0端口為高電平;當模擬開關(guān)閉合時,單片機的

P3.0端口為低電平。

五、程序設(shè)計內(nèi)容

(1)開關(guān)狀態(tài)的檢測過程

對于單片機來說,開關(guān)狀態(tài)的檢測是從單片機的P3.0端口輸入信號,然而輸入的信號

只有高、低電平兩種。當撥動開關(guān)SW1撥上去(輸入高電平)時,撥動開關(guān)SW1斷開;當撥

動開關(guān)SW1撥下來(輸入低電平)時,撥動開關(guān)SW1閉合。單片機可以采用JBBIT或者

JNBBIT指令來完成對撥動開關(guān)狀態(tài)的檢測。

(2)輸出控制

如圖2.1所示,當單片機的PL0端口輸出為高電平,即P1.0=1時,根據(jù)發(fā)光二極管

的單向?qū)щ娦钥芍?,這時發(fā)光二極管D1熄滅;當單片機的P1.0端口輸出為低電平,即P1.0

=0時,發(fā)光二極管D1亮??梢允褂肧ETBP1.0指令使單片機的P1.0端口輸出高電平,

使用CLRP1.0指令使單片機PL0端口輸出低電平。

六、程序流程圖(如圖2.2所示)

圖2.2模擬開關(guān)控制指示燈程序流程圖

七、匯編源程序

0RG0000H程序復(fù)位入口地址

LJMPSTART跳到主程序

0RG0003H外部中斷0入口地址

RETI中斷返回

0RGOOOBH定時器中斷0入口地址

RETI中斷返回

0RG0013H外部中斷1入口地址

RETI中斷返回

0RG001BH定時器中斷1入口地址

RETI中斷返回

ORG0023H串行口中斷入口地址

RETI中斷返回

ORG002BH定時器中斷2入口地址

RETI中斷返回

ORG0100H

START:JBP3.0,NEXP3.0為1,則跳NEX

CLRP1.0PL0亮

SJMPSTART

NEX:SETBP1.0P1.0滅

SJMPSTART

END

八、C語言源程序

ttinclude<AT89X51.H>

main()

{if(P3_0==l)

{P1_O=O;//Pl_o亮//

else

{P1_O=1;//Pl_o滅//

}

九、注意事項

如果程序下載到實驗板上后,要把8聯(lián)撥動撥碼開關(guān)JP2和JP4的相應(yīng)開關(guān)合上去。

實驗三多路開關(guān)狀態(tài)指示設(shè)計

一、實驗?zāi)康?/p>

利用多路模擬開關(guān)進行指示燈控制。

二、設(shè)計原理

如圖3.1所示,單片機的Pl.0-P1.3端口通過8聯(lián)撥動撥碼開關(guān)連接四個發(fā)光二極管

Dl-D4o單片機的P3.0—P3.3端口通過8聯(lián)撥動撥碼開關(guān)連接四個撥動開關(guān)SW1—SW4。編

程時將撥動開關(guān)的狀態(tài)反映到發(fā)光二極管上(開關(guān)閉合,對應(yīng)的燈亮,開關(guān)斷開,對應(yīng)的燈

滅)。

三、參考電路

VCCVCCR15

T10K

40

P10VCC1

39

P11POO2

JP438

P12P013

37

P13P024

36

P14P035

35

P15P046

34

P16P057

m33

ui8

AT89C51鱉32

RESETP079

n30

P30EAC

P31ALE29VC

P32PSEN28

P33P2727

P34P2626

P35P2525

24

P36P24

23

P37P23

22

XTAL1P2221

XTAL2P21

VCIC

1

2

3

4

5

6

7

8

圖3.1多路開關(guān)狀態(tài)指示電路原理圖

四、電路硬件說明

如圖3.1所示,撥動開關(guān)SWKSW2、SW3、SW4通過8聯(lián)撥動撥碼開關(guān)JP2接連單片機

的P3.0、P3.1、P3.2、P3.3端口。單片機的Pl.O、PL1、PL2、P1.3口通過8聯(lián)撥動撥碼

開關(guān)JP4分別連接四個指示燈DI、D2、D3、D4O

五、程序設(shè)計內(nèi)容

(1)開關(guān)狀態(tài)檢測

撥動開關(guān)狀態(tài)的檢測,對于單片機來說,是一種輸入關(guān)系,輪流檢測每個開關(guān)的狀態(tài),

根據(jù)每個開關(guān)的狀態(tài)讓相應(yīng)的發(fā)光二極管指示顯示。在編寫程序時,可以使用JBP3.X或

JNBP3.X指令來完成指示控制。

(2)單片機的輸出控制

根據(jù)撥動開關(guān)SW1、SW2、SW3,SW4的狀態(tài),經(jīng)由發(fā)光二極管DI-D4來指示顯示。在編

寫程序時,可以用SETBP1.X和CLRP1.X指令來完成。

七、匯編源程序

ORG0000H程序復(fù)位入口地址

LJMPSTART跳到主程序

ORG0003H外部中斷0入口地址

RETI中斷返回

ORGOOOBH定時器中斷0入口地址

RETI中斷返回

ORG0013H外部中斷1入口地址

RETI中斷返回

ORGOO1BH定時器中斷1入口地址

RETI中斷返回

ORG0023H串行口中斷入口地址

RETI中斷返回

ORG0100H

START:LCALLKAIGUAN調(diào)用檢測開關(guān)狀態(tài)子程序

LJMPSTART跳回繼續(xù)檢測

KAIGUAN:JBP3.0,N1判斷P3.0是否按下

CLRP1.0p3.0按下則亮pl.0

SJMPMl跳到ml

Nl:SETBP1.0p3.0沒有按下則滅pl.O

Ml:JBP3.1,N2判斷p3.1是否按下

CLRPl.1p3.1按下則亮pl.1

SJMPM2跳到m2

N2:SETBPl.1p3.1沒有按下則滅pl.1

M2:JBP3.2,N3判斷p3.2是否按下

CLRPl.2p3.2按下則亮pl.2

SJMPM3跳到m3

N3:SETBPl.2p3.2沒有按下則滅pl.2

M3:JBP3.3,N4判斷P3.3是否按下

CLRPl.3p3.3按下則亮pl.3

SJMPM4跳到m4

N4:SETBPl.3P3.3沒有按下則滅pl.3

M4:LJMPKAIGUAN跳回檢測開關(guān)狀態(tài)子程序進行循環(huán)

RET子程序返回

END結(jié)束

八、c語言源程序

#include<AT89X51.H>

main()

{if(P3_0==0)

{P1_O=O;

)

else

{P1_O=1;

}

if(P3_l==0)

{P1_1=O;

}

else

{Pl」=l;

}

if(P3_2==0)

{Pl_2=0;

)

else

{Pl_2=l;

)

if(P3_3==0)

{Pl_3=0;

}

else

{Pl3=1:

九、注意事項

(1)程序下載到實驗板上后,要把8聯(lián)撥動撥碼開關(guān)JP2和JP4的相應(yīng)按鍵合上去。

(2)與8聯(lián)撥動撥碼開關(guān)JP4相連的指示燈是高電平亮,低電平滅。

實驗四廣告燈左、右移設(shè)計

一、實驗?zāi)康?/p>

1.初步了解廣告燈的移動設(shè)計。

2.掌握循環(huán)移動的原理。

二、設(shè)計原理

如圖4.1所示,八個發(fā)光二極管D1-D8通過8聯(lián)撥動撥碼開關(guān)JP4分別連接在單片機

的PLO—P1.7端口上,做單一燈的左移右移。如果單片機的P1端口輸出為“0”時,發(fā)光

二極管亮,依次為PLO-Pl.1-Pl.2-P1.3-----*P1.7fPL6---->PL0亮,重復(fù)循環(huán)。

三、參考電路

VCCU1

圖4.1廣告燈左、右移設(shè)計電路原理圖

四、電路硬件說明

把“單片機系統(tǒng)”區(qū)域中的單片機的PLO—P1.7端口通過8聯(lián)撥動撥碼開關(guān)JP4連接

到“八路發(fā)光二極管指示模塊”區(qū)域中的DI—D8端口上,要求:P1.0對應(yīng)著DI,Pl.1對

應(yīng)著D2,....,PL7對應(yīng)著D8。

五、程序設(shè)計內(nèi)容

運用輸出端口指令MOVPLA或MOVPl,#DATA,給累加器值或常數(shù)值,然后執(zhí)行

上述的指令,即可達到輸出控制的動作。

每次送出的數(shù)據(jù)是不同的,具體的數(shù)據(jù)如下表4.2所示

表4.28個LED循環(huán)顯示真值表

P1.7P1.6P1.5P1.4P1.3P1.2Pl.1P1.0說明

D8D7D6D5D4D3D2D1

11111110D1亮

11111101D2亮

11111011D3亮

11110111D4亮

11101111D5亮

11011111D6亮

10111111D7亮

01111111D8亮

六、程序流程圖(如圖4.3所示)

圖4.3廣告燈左右移程序流程圖

七、匯編源程序

ORG0000H系統(tǒng)復(fù)位

LJMPSTART轉(zhuǎn)入主程序

ORG0003H外部中斷0

RETI中斷返回

ORGOOOBH定時器0溢出中斷

RETI

ORG0013H外部中斷1

RETI

ORGOO1BH定時器1溢出中斷

RETI

ORG0023H外部中斷2

RETI

ORG0100H

START:MOVR2,#7

MOVA,#OFEH

SETBc給CY置1

LOOP:MOVPl,A

LCALLDELAY

RLCA帶進位左移

DJNZR2,LOOPR2減1不為0轉(zhuǎn)至1]LOOP

MOVR2,#8

L00P1:MOVPl,A

LCALLDELAY

RRCA;帶進位右移

DJNZR2,LOOP1;R2減1不為0轉(zhuǎn)到LOOP1

LJMPSTART

DELAY:MOVR5,#20;延時0.2秒子程序

DI:MOVR6,#20

D2:MOVR7,#248

DJNZR7,$

DJNZR6,D2

DJNZR5,DI

RET

END

八、C語言源程序

#include<AT89X51.H>

unsignedchari;

unsignedchartemp;

unsignedchara,b;

voiddelay(void)〃延時子程序〃

{unsignedcharm,n,s;

for(m=20;m>0;m--)

for(n=20;n>0;n--)

for(s=248;s>0;s--);

}

voidmain(void)

{while(1)

{temp=0xfe;

Pl=temp;

delay();

for(i=l;i<8;i++)

{a=temp?i;〃向左移i位〃

b=temp?(8-i);〃向右移8-i位〃

Pl=ab;〃@或”/

delay();

}

for(i=l;i<8;i++)

{a=temp>>i;

b=temp?(8-i);

Pl=a|b;

delay();

九、注意事項

(1)程序下載到實驗板上后,要把8聯(lián)撥動撥碼開關(guān)JP4的相應(yīng)按鍵合上去。

(2)用C語言編寫程序,利用左移和右移指令時,移入單元的數(shù)為0。

(3)在硬件電路中,發(fā)光二極管和電源之間必須加上合適的電阻。

實驗五查詢法設(shè)計廣告燈

一、實驗?zāi)康?/p>

1.熟悉廣告燈的移動設(shè)計。

2.掌握查詢法在單片機編程中的使用。

二、設(shè)計原理

利用取表的方法,使單片機的P1端口做單一燈的變化:左移2次,右移2次,閃爍2

次(間隔的時間為0.2秒)。

三、參考電路

圖5.1查詢設(shè)計廣告燈電路原理圖

四、電路硬件說明

在“單片機系統(tǒng)”區(qū)域中,把單片機

的Pl.0-P1.7端口通過8聯(lián)撥動撥碼開關(guān)

JP4連接到“八路發(fā)光二極管指示模塊”

區(qū)域中的D1—D8端口上。要求:P1.0對

應(yīng)DI,Pl.1對應(yīng)D2,....,P1.7對應(yīng)D8?

五、程序設(shè)計內(nèi)容

在利用表格進行程序設(shè)計時,要用以

下的指令來完成:

(1)利用MOVDPTR,#DATA16指

令使數(shù)據(jù)指針寄存器指到數(shù)據(jù)表格的首地

址。

(2)利用MOVCA,@A+DPTR指令,

根據(jù)累加器A的值再加上DPTR的值,就可

以使程序計數(shù)器PC指針指到表格內(nèi)所需

要取出的數(shù)據(jù)。因此,只要把控制碼組建

圖5.2查詢法設(shè)計廣告燈流程圖

成一個表格,利用MOVCA,@A+DPTR做取控制碼的操作,就可方便地處理一些復(fù)雜的控

制動作。

六、程序流程圖(如圖5,2所示)

七、匯編源程序

ORG0000H系統(tǒng)復(fù)位

LJMPSTART轉(zhuǎn)入主程序

ORG0003H外部中斷0

RETI中斷返回

ORGOOOBH定時器。溢出中斷

RETI

ORG0013H

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論