久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

杭電單片機實驗報告一

2021-04-23 21:40:12下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了這篇《杭電單片機實驗報告一》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《杭電單片機實驗報告一》。

單片機原理與應用技術實驗報告

實驗題目:

Keil軟件使用及匯編語言編程

姓名:

*

*

*

學號:

********

實驗日期:

2017

指導教師:

1.Keil軟件的簡介和使用

1.1

Keil

uVision4的簡介

最新的Keil

uVision4

IDE,旨在提高開發人員的生產力,實現更快,更有效的程序開發。

uVision4引入了靈活的窗口管理系統,能夠拖放到視圖內的任何地方,包括支持多顯示器窗口。

uVision4在μVision3

IDE的基礎上,增加了更多大眾化的功能:

·

多顯示器和靈活的窗口管理系統

·

系統瀏覽器窗口的顯示設備外設寄存器信息

·

調試還原視圖創建并保存多個調試窗口布局

·

多項目工作區簡化與眾多的項目

1.2

Keil

uVision4的使用

①,打開Keil

4應用軟件,其初始界面如下:

②、點擊菜單項“Project”下的“New

uVisionProject”,如下圖所示。

③、選擇文件夾,并輸入工程名。

④、輸入工程名并保存后會彈出選擇芯片界面

⑤、這里我們選擇Atmel公司的AT89S51單片機,選擇后,點擊“OK”,即創建完工程。

⑥、單擊點擊下圖所示圓圈圈起的部分建立一個文件。也可以點擊菜單“File”下面的“NEW”來新建一個文件。

⑦、之后輸入程序的代碼后,單擊File—Save

as,根據代碼語言的格類型,可保存為后綴為.asm(匯編語言)和.c(C語言)的文件。

⑧、單擊“Target1”前面的“+”號,并用鼠標右鍵點擊“SourceGroup1”,界面如圖10所示。在用鼠標左鍵點擊“Add

Files

to

Group

Source

Group1...”即可把剛剛的代碼文件添加到工程。最后點擊左上角的編譯按鈕即可完成編譯。之后即可進行程序的調試了。

2.實驗內容

使用匯編語言完成課本P95的(2)、(5)、(8)三道題以及一個跑馬燈程序。

2.1

P95-(2)

設內部RAM

5AH單元中有一個變量X,請編寫計算下述函數式的程序,結果存入5BH。

設計思路:顯然本題要使用分支語句,不妨使用JZ,JNB等,并通過X-10,X-15綜合判斷X處于哪個區間。

代碼如下:

ORG

0000H

JMP

START

ORG

1000H

START:

MOV

A,5AH

;直接尋址,將5AH地址上的數據X存入寄存器A

MOV

B,5AH

;直接尋址,將5AH地址上的數據X再一次存入寄存器B

SUBB

A,#0FH

;將A中數據X先減去15,初步判斷X所屬區間

JNB

ACC.7,DO3

;若A的第7位不為1(X>=15)則程序跳到DO3,否則順序執行

MOV

A,5AH

;若X比15小,再次將X存入累加器A中

CLR

C

;清零進位C

SUBB

A,#0AH

;將X減去10

JNB

ACC.7,DO1

;若A的第7位不為1,(X>=10),跳到DO1

JMP

DO2

;剩下的情況就是:X<10,跳到DO2

DO1:MOV

A,5AH

;10<=X<=15

MUL

AB

;相當于X*X,結果的低八位存入A

ADD

A,#08H

;即X*X+8→A

MOV

5BH,A

;即X*X+8→B

JMP

DONE

;跳到程序結束段

DO2:MOV

A,5AH

;X<10

MUL

AB

;X*X→A

CLR

C

;進位C清零

SUBB

A,#01H

;

X*X-1→A

MOV

5BH,A

;

X*X-1→B

JMP

DONE

;跳到程序結束段

DO3:MOV

A,#29H

;41→A

MOV

5BH,A

;41→B

JMP

DONE

;跳到程序結束段

DONE:SJMP

$

END

程序截圖:

程序結果:

①、當X=12時,Y=12*12+8=152

②、當X=8時,Y=8*8-1=63

③、當X=18時,Y=41

2.2

P95-(5)

設有兩個長度均為15的數組,分別存放在以2000H和2100H為首的存儲區中,試編程求其對應項之和,結果存放到以2200H為首的存儲區中。

設計思路:本題需要用到LOOP進行15次的求和及存放。并且由于地址過高,應采用DPTR進行訪問。

代碼如下:

ORG

0000H

JMP

START

ORG

1000H

START:

MOV

R1,#00H

;求和寄存器,初始清零

MOV

R2,#0FH

;循環次數為15次

MOV

DPL,#00H

;類似段內偏移地址地址

LOOP:

MOV

DPH,#20H

;DPTR的高八位,可理解為段地址,這里先指向第一個數組的首

;地址2000H

MOVX

A,@DPTR

;A←((DPTR))

MOV

R1,A

;R1←(A)

INC

DPH

;DPH改成指向高8位是21H的存儲區

MOVX

A,@DPTR

;A←((DPTR))

ADD

A,R1

;兩數組對應項求和

INC

DPH

;DPH改成指向高8位是22H的存儲區

MOVX

@DPTR,A

;求和結果送入上述地址區

INC

DPL

;低8位地址自增

DJNZ

R2,LOOP

;若循環次數-1后不為0,則跳轉到LOOP處進行循環

END

程序截圖:

程序結果:

首先分別在2000H和2100H存入15數,這里我都存入了1,2,3,…,14,15。

結果得到:

2.3

P95-(8)

將片外數據存儲器地址為1000H~1030H的數據塊,全部搬遷到片內RAM

30H~60H中,并將原數據塊區域全部清零。

設計思路:顯然還是得用LOOP進行搬遷,且每搬完一個就得清零原地址數據,并用DPTR訪問片外存儲器。

代碼如下:

ORG

0000H

JMP

START

ORG

1000H

START:

MOV

R1,#30

;用R1保存循環次數

30次

MOV

R0,#30H

;將地址30H存入R0中

MOV

DPTR,#1000H

;將1000H這個地址存入DPTR中

LOOP:

MOVX

A,@DPTR

;寄存器間接尋址。A←((DPTR))

MOV

@R0,A

;(R0)←A

CLR

A

;A←0

MOVX

@DPTR,A

;原地址數據清零

INC

R0

;數據的寫入地址

自增

INC

DPTR

;數據的讀取地址

自增

DJNZ

R1,LOOP

;若循環次數-1不為0,則跳轉到LOOP處進行循環

END

程序截圖:

程序結果:

先在片外存儲器1000H開始存入數據

接下來開始將數據搬遷到片內30H開始的區域中

且原地址數據依次被清零

2.4

P95-(8)

題目:設計一個6+50=56ms跑馬燈,并在P1端口顯示。

設計思路:首先我得設計一個56ms的延遲。這里已知當單片機系統的振蕩頻率為fosc=12MHz時,一個機器周期為1T=1us;執行一條DJNZ指令需要2個機器周期,執行一條NOP需要一個機器周期,執行一條MOV也是一個機器周期。

接著,再通過循環左移指令RL

A實現跑馬等效果。

代碼如下:

ORG

0000H

JMP

START

ORG

0800H

START:MOV

A,#01H

;即將0000

0001存入A,后面會將最右邊1循環左移。

SJMP

DELAY

;進入延時段起點

LOOP:

RL

A

;從此處開始跑馬燈模塊。先將A循環左移

MOV

P1,A

;將A的值賦給端口P1的8位

SJMP

DELAY

;從56ms的延遲程序段再跑一遍

DELAY:

MOV

R7,#224

;設置外循環次數224次

DLY1:

MOV

R6,#123

;設置內循環次數123次

DLY2:

DJNZ

R6,DLY2

NOP

DJNZ

R7,DLY1

;延時程序段結束,總用時(123*2+2+1+1)T*224T+2T+1T=56ms

SJMP

LOOP

SJMP

END

程序截圖:

程序結果:

初始狀態

執行一次56ms延遲后左移

再一次56ms延遲后左移

Proteus仿真截圖:

3.實驗心得

通過以上4個實驗,我學會了KEIL軟件的使用,即創建工程,創建并添加項目,編譯與調試等等。更重要的是學習了很多單片機編程方面的只是。比如用匯編語言實現數據的傳送、運算、移位等,同時還有一些簡單的程序設計,如分支程序、循環程序等等。

這些實驗使我更好的從底層了解單片機系統的運行機制,尤其的匯編語言的使用更是提高了我對各類端口、存儲器的運用水平。另一方面我也感受到匯編語言雖然十分直接,但面對大型的程序項目就顯得力不從心,所以這就體現了后期實驗使用C語言編寫的簡便性。

我想,通過更多的運用各類指令及對更多端口、元件的綜合使用,我會對變得越來越熟練,且能不斷地提升自己的邏輯思維。

下載杭電單片機實驗報告一word格式文檔
下載杭電單片機實驗報告一.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    單片機實驗報告

    目錄 第一章單片機簡介.................................................... 2 第二章實驗要求.................................................. 3 第三章實驗設備.........

    單片機實驗報告

    單片機實驗報告 一、實驗目的 1.熟練使用Keil、Protues兩款軟件 2.通過上機操作,增強個人動手實踐能力 3.加深對理論知識的理解 4.培養運用匯編語言進行初步編寫程序的能力......

    單片機實驗報告

    實驗四、中斷交通燈實驗 林立強1000850116 一、實驗目的 1、了解MCS-51單片機的組成、中斷原理,中斷處理過程、外部中斷的中斷方式。 2、掌握中斷響應及處理的編程方法。 二......

    單片機實驗報告

    單片機實驗一 實驗報告 課程名稱: 姓名: 系別: 專業: 年級: 學號: 指導教師: 單片機原理及應用實驗 陳璐 信息系 電氣工程及其自動化 2012級 120712041 李莉 2015 年6 月 25 日......

    單片機實驗報告

    51單片機控制流水燈 目錄 (1)51精簡開發板簡介 (2)實驗目的 (3)實驗內容 (4)元件 (5)原理圖 (6)實驗步驟 (7)主要功能介紹(8)實驗錯誤及分析 (9)調試及程序 (10)系統測試 (11)實驗心得 一、51精簡......

    單片機實驗報告

    實驗一 uVision2 集成開發環境的使用 一、 實驗目的和要求二、實驗設備與儀器三、實驗內容四、實驗原理、方法與步驟 五、實驗小結:1.簡述生成應用程序的過程。2.記錄程序調試......

    單片機實驗報告

    《單片機原理及應用》 實 驗 報 告 2017—2018學年第一學期 班級: 152 專業: 電子科學與技術 姓名: 子路 學號: 教師: 實驗一:Keil C51 一、實驗目的 1、熟悉Keil C51單片機應用......

    單片機實驗報告一(精選多篇)

    南昌大學實驗報告 學生姓名:曾華兆學號: 6110116078 專業班級:電子163班 實驗類型:?驗證 ?綜合 ?設計?創新 實驗日期:2018.4.17 實驗成績: 實驗一 單片機軟件實驗 (一) 實驗目......

主站蜘蛛池模板: 亚洲综合精品第一页| 国产在线高清视频无码| 日本免费更新一二三区不卡| 国产免费拔擦拔擦8x高清在线| 亚洲精品成人片在线观看精品字幕| 国产69精品久久久久app下载| 日韩欧美群交p片內射中文| 久青草久青草视频在线观看| 少妇人妻丰满做爰xxx| 中文精品一区二区三区四区| 国产精品高潮呻吟av久久软件| 中文字幕av一区中文字幕天堂| 国产精品99久久99久久久| 免费无码午夜福利片| y111111少妇影院无码| 亚洲精品鲁一鲁一区二区三区| 欧美三级午夜理伦三级| 丝袜美腿一区二区三区| 亚洲国产精品无码久久久高潮| 无码人妻黑人中文字幕| 欧美日韩在手机线旡码可下载| 亚洲国产成人精品无码区在线播放| 亚洲乱亚洲乱妇| 免费看国产成年无码av片| 99久久超碰中文字幕伊人| 窝窝午夜理论片影院| 国产重口老太和小伙| 欧美丰满熟妇bbb久久久| 少妇人妻综合久久中文字幕| 日本无码人妻丰满熟妇区| 精品无码三级在线观看视频| 51久久成人国产精品麻豆| 亚洲精品色情app在线下载观看| 97超碰人人人人人人少妇| 国产精品麻豆aⅴ人妻| 久久久综合九色综合88| 无码影片| 无码h肉在线观看免费一区| 啪啪激情婷婷久久婷婷色五月| 97久久久亚洲综合久久88| 专干老熟女视频在线观看|