湖工單片機(jī)實驗報告_第1頁
湖工單片機(jī)實驗報告_第2頁
湖工單片機(jī)實驗報告_第3頁
湖工單片機(jī)實驗報告_第4頁
湖工單片機(jī)實驗報告_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第第頁湖工單片機(jī)實驗報告厚德博學(xué)和而不同

單片機(jī)與應(yīng)用技術(shù)試驗

學(xué)院:電氣與信息工程學(xué)院專業(yè):電氣工程及其自動化年級:學(xué)號:

同學(xué)姓名:指導(dǎo)老師:

二〇一三年一月四日

試驗一存儲器讀寫

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

1、掌控寄存器、存儲器讀寫等匯編指令;2、掌控編程軟件編輯、編譯、調(diào)試等基本操作;3、學(xué)習(xí)簡約程序的基本調(diào)試方法。

二、試驗內(nèi)容:

將70H-7FH16個字節(jié)單元的數(shù)據(jù)復(fù)制到片外存儲器2000H開始的地址單元中,程序清單如下:

ORG0000H

SJMPSTARTORG0030HSTART:MOVR1,#10HMOVR0,#70HMOVDPTR,#2000HMOV70H,#01HMOV71H,#02HMOV72H,#03HMOV73H,#04HMOV74H,#05HMOV75H,#06HMOV76H,#07HMOV77H,#08HMOV78H,#09HMOV7AH,#0AHMOV7BH,#0BH

MOV7CH,#0CHMOV7DH,#0DHMOV7EH,#0EHMOV7FH,#0FHLOOP:MOVA,@R0MO@DPTR,AINCR0INCDPTRDJNZR1,LOOPEND

三、試驗報告

〔1〕、說明試驗操作的基本步驟;

1.打開偉?;蛘逰eil,本報告中運(yùn)用的是偉福。進(jìn)行相關(guān)參數(shù)的設(shè)置,選擇仿真器。

2.選擇文件菜單下新建指令,在新建頁面的空白處輸入程序,輸入完畢后選擇文件菜單下的保存指令,文件的后綴名需要保存為“.ASM”格式。

3

.選擇項目菜單下編譯指令,軟件下方會涌現(xiàn)

“.BIN”和“.HE*”文件,如有錯誤,下方會涌現(xiàn)Error字樣,雙擊該處,相應(yīng)的程序會變成紅色,修改之后重新進(jìn)行編譯,知道沒有錯誤。

4.單擊左側(cè)對話框中的Watch中可以添加觀測項,選擇執(zhí)行菜單下,添加觀測項的指令,填入2000H,缺省方式前面的勾取消,存儲區(qū)域選擇*DATA。再選擇執(zhí)行菜單下的全速運(yùn)行,觀測左側(cè)對話框中*DATA選項卡的改變,假如涌現(xiàn)問題也可選擇但不運(yùn)行,每次按下F8會運(yùn)行一步,便于檢查錯誤。

5、為每一條匯編指令寫出中文說明;

ORG0000H;偽指令

SJMPSTART;跳轉(zhuǎn)到START處ORG0030H;偽指令

START:MOVR1,#10H;寄存器R1送入10MOVR0,#70H;寄存器R0送入70MOVDPTR,#2000H;DPTR中送入2000MOV70H,#01H;給70H地址中送數(shù)01MOV71H,#02H;71H地址中送入02

...

...

MOV7FH,#0FH;71H地址中送入0F

LOOP:MOVA,@R0;將70H地址中的數(shù)送給A

MO@DPTR,A;將A的數(shù)送到片外2000H中INCR0;R0內(nèi)容加一INCDPTR;DPTR內(nèi)容加一DJNZR1,LOOP;R1不為0就轉(zhuǎn)到LOOPEND;結(jié)束

3、記錄下程序單步運(yùn)行時,寄存器〔R0、R1〕、累加器〔A〕、程序狀態(tài)字〔PSW〕、內(nèi)部存儲器〔70H—7FH單元〕、外部存儲器〔2000H—200FH單元〕的數(shù)據(jù)改變。R1的值從10減到0;R0的值從70加到7F;A的值從1到F;內(nèi)部存儲器70H到7FH單元中的內(nèi)容被復(fù)制到片外以2000H為首地址的單元中。

四、配分、評分標(biāo)準(zhǔn)〔參考〕

試驗二數(shù)據(jù)排列

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

熟識單片機(jī)匯編指令系統(tǒng),掌控匯編程序設(shè)計方法。

二、試驗內(nèi)容

編寫并調(diào)試一個排序子程序,其功能為用冒泡法將內(nèi)容RAM中幾個單字節(jié)無符號的正整數(shù),按從小到大的次序重新排列。

三、試驗程序框圖

試驗參考程序;ORG09B0H

7B50QUE:MOVR3,#50H

EBQUE1:MOVA,R3;指針?biāo)蚏0F8MOVR0,A

7F0AMOVR7,#0AH;長度送R7C200CLR00H;標(biāo)識位為0E6MOVA,@R008QL2:INCR0FAMOVR2,AC3CLRC8622MOV22H,@R0

B52201CJNEA,22H,QL3;相等嗎?D3SETBCEAQL3:MOVA,R2

4006JCQL1;大于交換位置D200SETB00HC6*CHA,@R018DECR0C6*CHA,@R0

08INCR0;大于交換位置E6QL1:MOVA,@R0DFEBDJNZR7,QL2

2000E1JB00H,QUE1;一次循環(huán)中有交換繼80FELOOP:SJMPLOOP;無交換退出

四、試驗步驟

把用keil軟件將單片機(jī)RAM50H~5AH中放入不等的數(shù)據(jù),并通過keil軟件的數(shù)據(jù)觀測窗口觀測運(yùn)行本試驗程序后50H~5AH中內(nèi)容是否按從小到大排列。

1、試驗程序匯編指令及中文說明;ORG0000H;程序開始地址MOV50H,#12H;隨機(jī)生成10個數(shù)

MOV51H,#15HMOV52H,#2HMOV53H,#8hMOV54H,#56HMOV55H,#51HMOV56H,#33HMOV57H,#21HMOV58H,#14HMOV59H,#22HMOV5AH,#18HCLR00H

;清交換標(biāo)識位SETBPSW.3;工作寄存器選擇

SETBPSW.4

SUB:MOVR3,#0AH;11個數(shù)據(jù)循環(huán)次數(shù)movR0,#50H;數(shù)據(jù)存放區(qū)首址MOVA,@R0;取前數(shù)

L2:INCR0;取下一地址中的值MOVR2,A;保存前數(shù)SUBBA,@R0;相鄰兩數(shù)相減MOVA,R2;復(fù)原前數(shù)JCL1;順次那么繼續(xù)比較SETB00H;逆序那么建立標(biāo)識位*CHA,@R0;前數(shù)與后數(shù)交換DECR0;長度減1*CHA,@R0

INCR0;仍指向后數(shù)單元L1:MOVA,@R0

DJNZR3,L2;依次重復(fù)比較JB00H,SUB;交換后重新比較RETEND

;結(jié)束

2、排序結(jié)果〔抓圖〕。

程序開始前數(shù)據(jù)

程序執(zhí)行后數(shù)據(jù)

六、配分、評分標(biāo)準(zhǔn)〔參考〕

試驗三I/O端口操作

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

1、掌控I/O端口讀寫等基本匯編指令;

2、掌控單片機(jī)最小系統(tǒng)硬件電路設(shè)計及仿真軟件PROTEUS仿真、調(diào)試等基本操作方法。

二、試驗儀器設(shè)備

1、PC機(jī),1臺2、WAVE軟件開發(fā)系統(tǒng)3、仿真軟件PROTEUS

三、試驗內(nèi)容:

編寫一段匯編程序,使與單片機(jī)P0.3口相連的發(fā)光二極管循環(huán)點(diǎn)亮,亮滅時間需要大于0.5秒〔肉眼能清楚辨別二極管的亮滅改變〕。要求用PROTEUS軟件完成仿真電路設(shè)計,并進(jìn)行功能驗證。

四、試驗步驟:

1、運(yùn)用Protues完成硬件仿真電路的繪制。

2、用WAVE軟件完成發(fā)光二級管亮滅程序,用延時子程序設(shè)計一段時間延時,編譯通過后生成16進(jìn)制文件〔.HE*〕,加載到PROTEUS中仿真驗證。

五、試驗報告

1、PROTEUS仿真效果圖;

2、試驗程序匯編指令及中文說明;

ORG0000H;偽指令LJMPSTART;跳轉(zhuǎn)到STARTORG0030H;偽指令

START:SETBP0.3;P0.3置1

ACALLDELAY;調(diào)用延時CLRP0.3;P0.3清零ACALLDELAY;調(diào)用延時LJMPSTART;跳轉(zhuǎn)到START

DELAY:MOVR0,#05H;延時程序R0賦值5,下面程序走5遍就是0.5秒LOOP1:MOVR1,#200;0.1秒的延時程序LOOP2:MOVR2,#126LOOP3:DJNZR2,LOOP3DJNZR1,LOOP2DJNZR0,LOOP1

RET;調(diào)用結(jié)束返回

SJMP$;死循環(huán),防止程序跑飛END;結(jié)束

六、思索題:

單片機(jī)晶振設(shè)為12MHZ,試計算自己編寫的延時子程序的精確延時時間?

試驗四定時中斷

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

1、熟識單片機(jī)定時器工作原理;2、掌控定時器定時掌握的編程方法。

二、試驗基本原理

1、定時/計數(shù)器工作原理

INT1引腳

圖2.11定時/計數(shù)器原理圖

〔1〕定時時間的求取。

例:設(shè)單片機(jī)晶振頻率為12MHZ,定時時間為1ms,求時間常數(shù)?

定時器計數(shù)周期=12/fosc=1us,1ms/1us=1000,因此,計數(shù)初值=65535+1-1000=64536=FC18H〔2〕定時/計數(shù)器初始化

三、試驗內(nèi)容:

編寫一段匯編程序,使單片機(jī)P1.0口輸出一段時鐘周期為2ms的方波。要求采納T1中斷方式,工作方式1。用PROTEUS軟件完成仿真電路設(shè)計,并用軟件中自帶的示波器觀測輸出結(jié)果。

四、試驗操作步驟:

1、硬件電路設(shè)計

圖2.12硬件電路設(shè)計

2、單片機(jī)晶振頻率為12MHZ,用WAVE軟件編寫P1.0引腳上輸出周期為2ms的方波程序。編譯通過后生成16進(jìn)制文件〔.HE*〕,加載到PROTEUS中仿真驗證。

3、PROTEUS仿真驗證。

五、試驗報告

1、PROTEUS仿真效果圖;

2、試驗程序匯編指令及中文說明;

ORG0000HSJMPSTARTORG0013HLJMPIOP0ORG0030HSTART:MOVSP,#60HMOVTMOD,#10HSTART

T1計時器中斷入口地址;跳轉(zhuǎn)到IOP0;偽指令

;將堆棧指針放到60H處

;T1計時器工作方式1

;偽指令;跳轉(zhuǎn)到;偽指令,

MOVTH1,#0FCH;賦初值MOVTL1,#18HSETBP1.0

;P1.0置1

SETBEA;打開中斷允許總掌握位SETBTR1;啟動計時器T1

SETBET1;打開定時器1的中斷允許掌握位

IOP0:CLREA;關(guān)閉中斷

MOVTH1,#0FCH;重新賦初值MOVTL1,#18H

CLRP1.0;P1.0清零SETBEA;打開中斷開關(guān)RETI;調(diào)用結(jié)束END;結(jié)束

六、配分、評分標(biāo)準(zhǔn)〔參考〕

試驗五十字路口交通燈

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

1、掌控ISP在線調(diào)試的方法;2、掌控硬件試驗箱的運(yùn)用方法;3、熟識匯編程序基本格式與編程方法。

二、試驗儀器設(shè)備:

1、PC機(jī)

2、PROTEUS仿真環(huán)境。

三、試驗內(nèi)容:

編寫十字路口交通燈掌握程序,掌握紅、黃、綠交通指示燈的亮滅,模擬十字路口交通燈掌握。參考程序如下:

PORTEQU0CFA0H;片選地址CS0CSEGAT0000HLJMPSTARTCSEGAT4100H

START:MOVA,#11H;兩個紅燈亮,黃燈、綠燈滅ACALLDISP

;調(diào)用273顯示單元〔以下雷同〕

ACALLDE3S;延時3秒

LLL:MOVA,#12H;東西路口綠燈亮;南北路口紅燈亮ACALLDISP

ACALLDE10S;延時10秒

MOVA,#10H;東西路口綠燈滅;南北路口紅燈亮ACALLDISP

MOVR2,#05H;R2中的值為黃燈閃耀次數(shù)

TTT:MOVA,#14H;東西路口黃燈亮;南北路口紅燈亮ACALLDISP

ACALLDE02S;延時0.2秒

MOVA,#10H;東西路口黃燈滅;南北路口紅燈亮ACALLDISP

ACALLDE02S;延時0.2秒

DJNZR2,TTTMOVA,#11HACALLDISP

ACALLDE02SMOVA,#21HACALLDISP

ACALLDE10SMOVA,#01HACALLDISP

MOVR2,#05HGGG:MOVA,#41HACALLDISP

ACALLDE02SMOVA,#01HACALLDISP

ACALLDE02SDJNZR2,GGGMOVA,#03HACALLDISP

ACALLDE02SJMPLLL;返回TTT,使東西路口;黃燈閃耀五次;兩個紅燈亮,黃燈、綠燈滅;延時0.2秒

;東西路口紅燈亮;南北路口綠燈亮;延時10秒

;東西路口紅燈亮;南北路口綠燈滅;黃燈閃耀五次

;東西路口紅燈亮;南北路口黃燈亮;延時0.2秒

;東西路口紅燈亮;南北路口黃燈滅;延時0.2秒

;返回GGG,使南北路口;黃燈閃耀五次;兩個紅燈亮,黃燈、綠燈滅;延時0.2秒;轉(zhuǎn)LLL循環(huán)

厚德博學(xué)和而不同

單片機(jī)與應(yīng)用技術(shù)試驗

學(xué)院:電氣與信息工程學(xué)院專業(yè):電氣工程及其自動化年級:學(xué)號:

同學(xué)姓名:指導(dǎo)老師:

二〇一三年一月四日

試驗一存儲器讀寫

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

1、掌控寄存器、存儲器讀寫等匯編指令;2、掌控編程軟件編輯、編譯、調(diào)試等基本操作;3、學(xué)習(xí)簡約程序的基本調(diào)試方法。

二、試驗內(nèi)容:

將70H-7FH16個字節(jié)單元的數(shù)據(jù)復(fù)制到片外存儲器2000H開始的地址單元中,程序清單如下:

ORG0000H

SJMPSTARTORG0030HSTART:MOVR1,#10HMOVR0,#70HMOVDPTR,#2000HMOV70H,#01HMOV71H,#02HMOV72H,#03HMOV73H,#04HMOV74H,#05HMOV75H,#06HMOV76H,#07HMOV77H,#08HMOV78H,#09HMOV7AH,#0AHMOV7BH,#0BH

MOV7CH,#0CHMOV7DH,#0DHMOV7EH,#0EHMOV7FH,#0FHLOOP:MOVA,@R0MO@DPTR,AINCR0INCDPTRDJNZR1,LOOPEND

三、試驗報告

〔1〕、說明試驗操作的基本步驟;

1.打開偉?;蛘逰eil,本報告中運(yùn)用的是偉福。進(jìn)行相關(guān)參數(shù)的設(shè)置,選擇仿真器。

2.選擇文件菜單下新建指令,在新建頁面的空白處輸入程序,輸入完畢后選擇文件菜單下的保存指令,文件的后綴名需要保存為“.ASM”格式。

3

.選擇項目菜單下編譯指令,軟件下方會涌現(xiàn)

“.BIN”和“.HE*”文件,如有錯誤,下方會涌現(xiàn)Error字樣,雙擊該處,相應(yīng)的程序會變成紅色,修改之后重新進(jìn)行編譯,知道沒有錯誤。

4.單擊左側(cè)對話框中的Watch中可以添加觀測項,選擇執(zhí)行菜單下,添加觀測項的指令,填入2000H,缺省方式前面的勾取消,存儲區(qū)域選擇*DATA。再選擇執(zhí)行菜單下的全速運(yùn)行,觀測左側(cè)對話框中*DATA選項卡的改變,假如涌現(xiàn)問題也可選擇但不運(yùn)行,每次按下F8會運(yùn)行一步,便于檢查錯誤。

5、為每一條匯編指令寫出中文說明;

ORG0000H;偽指令

SJMPSTART;跳轉(zhuǎn)到START處ORG0030H;偽指令

START:MOVR1,#10H;寄存器R1送入10MOVR0,#70H;寄存器R0送入70MOVDPTR,#2000H;DPTR中送入2000MOV70H,#01H;給70H地址中送數(shù)01MOV71H,#02H;71H地址中送入02

...

...

MOV7FH,#0FH;71H地址中送入0F

LOOP:MOVA,@R0;將70H地址中的數(shù)送給A

MO@DPTR,A;將A的數(shù)送到片外2000H中INCR0;R0內(nèi)容加一INCDPTR;DPTR內(nèi)容加一DJNZR1,LOOP;R1不為0就轉(zhuǎn)到LOOPEND;結(jié)束

3、記錄下程序單步運(yùn)行時,寄存器〔R0、R1〕、累加器〔A〕、程序狀態(tài)字〔PSW〕、內(nèi)部存儲器〔70H—7FH單元〕、外部存儲器〔2000H—200FH單元〕的數(shù)據(jù)改變。R1的值從10減到0;R0的值從70加到7F;A的值從1到F;內(nèi)部存儲器70H到7FH單元中的內(nèi)容被復(fù)制到片外以2000H為首地址的單元中。

四、配分、評分標(biāo)準(zhǔn)〔參考〕

試驗二數(shù)據(jù)排列

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

熟識單片機(jī)匯編指令系統(tǒng),掌控匯編程序設(shè)計方法。

二、試驗內(nèi)容

編寫并調(diào)試一個排序子程序,其功能為用冒泡法將內(nèi)容RAM中幾個單字節(jié)無符號的正整數(shù),按從小到大的次序重新排列。

三、試驗程序框圖

試驗參考程序;ORG09B0H

7B50QUE:MOVR3,#50H

EBQUE1:MOVA,R3;指針?biāo)蚏0F8MOVR0,A

7F0AMOVR7,#0AH;長度送R7C200CLR00H;標(biāo)識位為0E6MOVA,@R008QL2:INCR0FAMOVR2,AC3CLRC

溫馨提示

  • 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

提交評論