微控制器實驗報告

2021-03-04 02:49:43 字數 5072 閱讀 3186

通訊與資訊工程學院

2010/2011 學年第二學期

實驗報告

課程名稱微控制器原理及應用

專業班級學號學生姓名

指導教師

日期 : 2011 年 4 月 15 日

實驗一:微控制器組合語言程式設計

一.實驗目的

1. 學習medwin 或keil c51**軟體的使用。

2. 學習proteus**軟體的使用。

3. 在medwin 或keil**環境下編寫乙個標準的匯程式設計序,排除語法錯誤,完成**除錯和執行。

二.實驗內容

1. 程式設計實現在外部ram中把200ch開始的300h個位元組資料傳送到8100開始的單元中去.。

2. 已知在內部ram中有以array為首址的資料區,依次存放單位元組陣列長度及陣列內容,求這組資料的和,並將和接著該資料區存放.假定陣列之和小於255,請編寫程式。

三.主要儀器裝置:

pc機一台

medwin 或keil c51微控制器**軟體

proteus 軟體

四.實驗型別:

設計+驗證

備註:教師演示與學生操作結合。使學生了解proteus與medwin或keil c51的聯合使用方法。

五.實驗的過程與結果:

(1) *** 1000h

mov r0,#array

mov a,@r0

mov r7,a

clr a

inc r0

loop: add a,@r0

inc r0

djnz r7,loop

mov @r0,a

sjmp $

end(2) mov dptr,#200ch

mov p2,#81h

mov p0,#00h

mov r1,#30h

loop: movx a,@dptr

movx @r0,a

inc dptr

inc r0

djnz r1,loop

sjmp $

end六.實驗小結

本次實驗,我第一次進行微控制器上機操作,有以下幾點收穫:

1)上機前,應了解指令相關知識,為編寫組合語言源程式打下基礎.

2)按指令功能劃分的分類方式有助於掌握指令系統,應該重點掌握;指令系統中的符號說明任何一種機器語言都有自己的語法規則.

3)掌握微控制器指令系統並能很好地運用學會編寫常用程式,是應用好微控制器的基礎.

4)基本掌握了微控制器的程式設計,微控制器應用時應該注意的問題,能夠在medwin 或keil**環境下編寫乙個標準的51匯程式設計序,排除語法錯誤,完成**除錯和執行。

綜上,本次試驗成功完成。

實驗二: mcs-51微控制器中斷系統

mcs-51微控制器定時/計數器及其應用

一.實驗目的:

1. 根據proteus工程提供的電原理圖按要求編寫簡單演算法程式,並用medwin 或keil**軟體除錯,最後在proteus中驗證程式的正確性。

2. 掌握proteus與medwin 或keil的聯合使用方法。

3. 了解並掌握定時器中斷相關知識。

二.實驗內容

1. 試用定時器中斷技術設計乙個秒閃電路,其功能是使發光二極體led每秒閃亮400ms,設系統主頻為6mhz.

2. 設8051微控制器定時器t0作定時器用,時鐘頻率為6mhz,試程式設計由p1.0和p1.1分別輸出週期為2ms和500ms的方波.

三.主要儀器裝置:

pc機一台

medwin 或keil c51微控制器**軟體

proteus 軟體

四.實驗型別:

演示+設計+驗證

備註:教師演示與學生操作結合。使學生了解proteus與medwin或keil c51的聯合使用方法。

五.實驗的過程與結果:

(1)分析:

定時器工作在方式0,系統主頻為6mhz,最小定時時間為2us

需要計數器計數的個數: 100ms/2us=50000

計數初值:65536-50000=15536=3cb0h

程式段:

*** 0000h

reset: ljmp main

*** 000bh

ljmp it0p

*** 0100h

main: mov sp, #60h

mov tmod, #01h

ptomo: mov tl0,#0b0h

mov th0,#3ch

setb tr0

setb et0

setb ea

here: ljmp here

it0b : clr p1.5

mov b,#01h

loop1: mov tl0,#0b0h

mov th0,#3ch

djnz b,loop1

cpl p1.5

mov b,#02h

loop2: mov tl0,#0b0h

mov th0,#3ch

djnz b,loop2

cpl p1.5

reti

end**截圖:

(2)由p1.0輸出週期為2ms的方波:

分析: 週期為2ms,1ms處翻轉

(2^16-m)/6000000*12=0.01

65536-5000=60536=0fe0ch

*** 0000h

reset: ajmp main

*** 000bh

ajmp it0p

*** 0100h

main: mov sp, #60h

mov tmod, #01h

ptomo: mov tl0,#0ch

mov th0, #0feh

setb tr0

setb et0

setb ea

here: ajmp here

it0p: mov tl0, #0ch

mov th0, #0feh

cpl p1.0

reti

retend由p1.1輸出週期為500ms的方波:

分析:週期為500ms,250ms處翻轉

(2^16-m)/6000000*12=0.25

65536-12500=53036=0cf2ch

程式段:

*** 0000h

reset: ljmp main

*** 000bh

ljmp it0p

*** 0100h

main: mov sp, #60h

mov tmod, #01h

ptomo: mov tl0, #2ch

mov th0, #0cfh

setb tr0

setb et0

setb ea

here: ljmp here

it0p: mov b, #04h

loop: mov tl0, #2ch

mov th0, #0cfh

djnz b,loop

cpl p1.1

reti

end六.實驗小結

這次實驗,使我學會了使用proteus進行微控制器的**,學習了medwin 或keil c51**軟體的使用, 能夠在medwin 或keil**環境下編寫乙個標準的51匯程式設計序。能夠根據proteus工程提供的電原理圖按要求編寫簡單演算法程式,並用medwin 或keil**軟體除錯,最後在proteus中驗證程式的正確性。通過設計電子時鐘的綜合實驗掌握了微控制器程式設計的基本思想,以及中斷、定時程式的基本編寫方法。

獲益匪淺,本次試驗成功。

實驗三:微控制器序列通訊接**術

一.實驗目的

1. 掌握51微控制器串列埠通訊原理。

2. 學會運用**軟體編寫基本串列埠通訊程式。

3. 了解如何利用軟體自帶的功能觀察串列埠通訊的結果。

二.實驗內容

1. 試設計乙個8051微控制器的雙機通訊程式,並編寫程式將a機片內ram 40h-50h的資料塊通過序列口傳送到b機片內的ram 60h-7fh中去。

2. 以8051序列口按工作方式3進行資料通訊,設波特率為1200bit/s,第9資料位作奇偶校驗位,以中斷方式傳送資料,請編寫通訊程式。

三.主要儀器裝置:

pc機一台

medwin 或keil c51微控制器**軟體

proteus 軟體

四.實驗型別:

設計+驗證

備註:教師指導學生如何利用軟體自帶的功能觀察串列埠通訊的結果。

五.實驗的過程與結果:

分析:1200bit/s------**od=0

n=256-2^0*fosc/(1200*12*32)

方式二定時,tmod=02h,用到定時器0。

scon=d0h(方式三,ren=1)

該程式段呼叫了乙個迴圈程式在發、收兩端分別進行11次傳送。

程式段:

*** 0000h

ljmp main

*** 0023h

ljmp it0p

*** 0100h

main: mov tmod,#02h

mov tl1,#0f3h

mov th1,#0f3h

setb tr0

mov scon,#50h

mov r0,#40h

mov r1,#60h

acall sout

sjmp $

it0p: jnb ri,send

acall sin

clr ri

sjmp next

send: acall sout

clr ti

next: reti

sout: mov b,#0ah

loop1: mov sbuf,a

inc r0

dec b

微控制器實驗報告

1福建農林大學計算機與資訊學院 資訊工程類 實驗報告 2013 年 10 月 28 日 實驗專案列表 福建農林大學計算機與資訊學院資訊工程類實驗報告 系 電子資訊工程專業 電子資訊工程年級 2011級 姓名 詹緩輝學號 3116004094實驗課程 微控制器技術 實驗室號 田c513實驗時間 10....

微控制器實驗報告

一 實驗題目 試編寫一段程式,其功能為將21h單元的內容8位分別依次存放到從22h開始的8單元中。二 keil 0000h jmp start 0100h start mov 21h,8 mov a 21h 取出21中的數 mov r0,22h 初始化 mov r1,7h 迴圈次數為7 loop r...

微控制器實驗報告

學校 合肥工業大學 班級 電腦科學與技術 學號 姓名 實驗1 系統認識實驗 1 實驗目的 1 了解zy15mcu12bc2微控制器實驗開發裝置的接線與安排。掌握實驗箱內撥位開關kf,kc的使用方法。2 通過例項程式的編輯 編譯 鏈結及除錯,熟悉keilc51軟體的使用方法和基本操作。3 教育學生愛撫...