第一篇:單片機(jī)綜合實(shí)驗(yàn)報(bào)告格式
(在所做過的實(shí)驗(yàn)內(nèi)容里挑選一個(gè)自己最有收獲,最有感想的實(shí)驗(yàn)內(nèi)容)
綜合實(shí)驗(yàn)報(bào)告標(biāo)題(可與實(shí)驗(yàn)名稱不同)
一、實(shí)驗(yàn)?zāi)康暮鸵蟆?/p>
二、實(shí)驗(yàn)儀器設(shè)備。
三、實(shí)驗(yàn)設(shè)計(jì)及調(diào)試:
(一)實(shí)驗(yàn)內(nèi)容。
(二)實(shí)驗(yàn)電路:畫出與實(shí)驗(yàn)內(nèi)容有關(guān)的簡單實(shí)驗(yàn)電路。
(三)實(shí)驗(yàn)設(shè)計(jì)及調(diào)試步驟:
(1)對實(shí)驗(yàn)內(nèi)容和實(shí)驗(yàn)電路進(jìn)行分析,理出完成實(shí)驗(yàn)的設(shè)計(jì)思路。(2)列出程序設(shè)計(jì)所需的特殊標(biāo)志位、堆棧sp、內(nèi)部ram、工作寄存器等資源的分配列表,分配列表時(shí)注意考慮資源在程序執(zhí)行過程可能會(huì)出現(xiàn)沖突的問題。
(3)畫出程序設(shè)計(jì)流程圖,包括主程序和各子程序流程圖。
(4)根據(jù)(2)、(3)的內(nèi)容寫出實(shí)驗(yàn)程序。
(5)調(diào)試程序(可以使用模擬仿真器)。
a、根據(jù)程序確定調(diào)試目的,即調(diào)試時(shí)所需觀察的內(nèi)容結(jié)果。
b、根據(jù)各調(diào)試目的分別選擇調(diào)試所需的方法,如單步、斷點(diǎn)等命令,分別列出各調(diào)試方法中所需要關(guān)注記錄的內(nèi)容。
c、調(diào)試程序,按各種調(diào)試方法記錄相應(yīng)的內(nèi)容。
d、分析調(diào)試記錄的內(nèi)容和結(jié)果,找出程序中可能出錯(cuò)的地方,然后修改程序,繼續(xù)調(diào)試、記錄、分析,直到調(diào)試成功。
(四)實(shí)驗(yàn)調(diào)試過程中所遇到的問題、解決問題的思路和解決的方法。
四、實(shí)驗(yàn)后的經(jīng)驗(yàn)教訓(xùn)總結(jié)。
第二篇:單片機(jī)交通燈綜合實(shí)驗(yàn)報(bào)告
河 北 工 業(yè) 大 學(xué)
實(shí)
驗(yàn)
報(bào)
告
學(xué)
院:
專
業(yè):
班
級:
姓
名:
學(xué)
號:
實(shí)驗(yàn)課程:單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)開發(fā)入門 指導(dǎo)教師:
實(shí)驗(yàn)名稱:
交通信號燈控制實(shí)驗(yàn)
實(shí)驗(yàn)時(shí)間:
2019 年
月 23 日
2019 年 5 月 23 日
一
實(shí)驗(yàn)要求
實(shí)驗(yàn)?zāi)康募皩?shí)驗(yàn)內(nèi)容要求 實(shí)驗(yàn)?zāi)康模?.熟悉外部中斷源的擴(kuò)展方法。
2.初步掌握單片機(jī)綜合應(yīng)用系統(tǒng)設(shè)計(jì)。
3.掌握用 Proteus 調(diào)試匯編源程序的方法。
實(shí)驗(yàn)內(nèi)容要求:
用發(fā)光二極管模擬交通信號燈,用邏輯電平開關(guān)模擬控制開關(guān),設(shè)計(jì)一個(gè)交通信號燈控制系統(tǒng)。設(shè)計(jì)要求如下:
(1)A 車道與 B 車道交叉組成十字路口,A 是主道,B 是支道;正常情況下,A、B 兩車道輪流放行。具體放行時(shí)間和要求如下:
(2)A 車道放行 50s,其中綠燈常亮 44s,綠燈閃爍 3s(用于警告),黃燈常亮 3s(用于警告)。
(3)B 車道放行 30s,其中綠燈常亮 24s,綠燈閃爍 3s(用于警告),黃燈常亮 3s(用于警告)。
在交通繁忙時(shí),交通信號燈控制系統(tǒng)應(yīng)有手控開關(guān),可人為地改變信號燈的狀態(tài),以緩解交通擁擠狀況。控制要求如下:
(1)在 B 車道放行期間,若 A 車道有車而 B 車道無車,按下開關(guān)使 A 車道放行 15s。
(2)在 A 車道放行期間,若 B 車道有車而 A 車道無車,按下開關(guān)使 B 車道放行 15s。
(3)有緊急車輛通過時(shí),按下開關(guān)使 A、B 車道均為紅燈,禁行 15s。
實(shí)驗(yàn)設(shè)備或運(yùn)行軟件平臺(tái) 完成本實(shí)驗(yàn)需要使用到單片機(jī)仿真軟件 Proteus8,該軟件是英國 Lab Center Electronics 公司出版的 EDA 工具軟件,是目前比較好的仿真單片機(jī)及外圍器件的工具。從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到 PCB 設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB 設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái)。在編譯方面,它也支持 IAR、Keil、MATLAB 等多種編譯器。其具有的基本功能特點(diǎn)為:1.原理布圖。2.PCB 自動(dòng)或人工布線。3.SPICE 電路仿真。革命性的特點(diǎn)是 1.互動(dòng)的電路仿真。
2.仿真處理器及其外圍電路。
二
實(shí)驗(yàn)內(nèi)容及過程
實(shí)驗(yàn)設(shè)計(jì)及分析(或者實(shí)驗(yàn)程序)
實(shí)驗(yàn)原理圖如下所示:
交通信號燈模擬控制系統(tǒng)程序流程圖如下圖所示:
主程序
一道有車另一道無車時(shí)
緊急車輛通過時(shí) 的中斷服務(wù)程序的中斷服務(wù)程序
A
綠燈閃、B
紅燈延時(shí)
s
A
紅燈、B
綠燈閃動(dòng)延
s
A
紅燈、B
綠燈延時(shí)
s
A
綠燈、B
紅燈延時(shí)
s
A
紅燈、B
黃燈延時(shí)
s
A
黃燈、B
紅燈延時(shí)
s
初始化
開中斷
保護(hù)現(xiàn)場
關(guān)中斷
A
道有車
B
道有車
A
紅燈、B
綠燈延時(shí)
s
A
綠燈、B
紅燈延時(shí)
s
關(guān)中斷
恢復(fù)現(xiàn)場
開中斷
返回
中斷響應(yīng)
保護(hù)現(xiàn)場
A
紅燈、B
紅燈延時(shí)
s
恢復(fù)現(xiàn)場
返回
N
N
Y
Y
中斷響應(yīng)
開始
實(shí)驗(yàn)程序及程序分析如下:
ORG
0000H LJMP
MAIN ;LJMP,轉(zhuǎn)向主程序 ORG
0003H LJMP
INT00 ;轉(zhuǎn)向緊急車輛中斷服務(wù)程序 ORG
0013H LJMP
INT11 ;轉(zhuǎn)向有車車道放行中斷服務(wù) ORG
0030H MAIN : SETB
PX0
;置外部中斷 0 為高優(yōu)先級中斷 MOV
TCON,#00H ;置外部中斷 0、1 為電平觸發(fā) MOV
IE,#85H ;開 CPU 中斷、外部中斷 0、1 中斷 LOOP:
;A 道綠燈亮;B 紅燈亮 MOV
P1,#0F3H MOV
R1,#88 ;44s 延時(shí)循環(huán)次數(shù) AP1:
;調(diào)用 0.5s 延時(shí)子程序 DELAY LCALL
DELAY DJNZ
R1,AP1 ;44s 不到,繼續(xù)循環(huán)(DJNZ RN,REL 是一條件轉(zhuǎn)移指令,先將工作寄存器Rn 中的數(shù)減“1”,判斷結(jié)果是否為“0”,不為“0”程序就跳轉(zhuǎn)到行標(biāo)為REL 的地方執(zhí)行,否則,為“0”就不轉(zhuǎn)移,繼續(xù)執(zhí)行下一條指令。)
MOV
R1,#6 ;3s 延時(shí)的循環(huán)次數(shù)(循環(huán)一次延時(shí) 0.5 秒。)
AP2:
;A 道綠燈閃爍 CPL
P1.2 LCALL
DELAY ;參考程序中缺少此句,若缺失會(huì)導(dǎo)致無法延時(shí)。
DJNZ
R1,AP2 ;3s 未到,繼續(xù)循環(huán) MOV
P1,#0F5H ;A 道黃燈亮,B 道紅燈亮 MOV
R1,#6
AP3: LCALL
DELAY DJNZ
R1,AP3
;3s 未到,繼續(xù)循環(huán) MOV
P1,#0DEH ;A 道紅燈亮,B 道綠燈亮 MOV
R1,#48
;延時(shí)循環(huán) 48 次
BP1: LCALL
DELAY
DJNZ
R1,BP1 ;24s 未到繼續(xù)循環(huán) MOV
R1,#6 BP2: CPL
P1.5 ;B 道綠燈閃爍 LCALL
DELAY DJNZ
R1,BP2 ;3s 未到,繼續(xù)循環(huán) MOV
P1,#0EEH;A 道紅燈亮,B 道黃燈亮 MOV
R1,#6 BP3: LCALL
DELAY DJNZ
R1,BP3 ;3s 未到,繼續(xù)循環(huán) SJMP
LOOP ORG
0200H INT00:
保護(hù) P1 口數(shù)據(jù) PUSH
P1
;PUSH 入棧指令 MOV
P1,#0F6H
;A 道紅燈亮;B 道紅燈亮 MOV
R2,#30
;15 秒延時(shí)的循環(huán)次數(shù) DELAY0: LCALL
DELAY DJNZ
R2,DELAY0
POP
P1
;恢復(fù) P1 口數(shù)據(jù) POP 是出棧指令 RETI
;返回主程序 ORG
0300H INT11: CLR
EA
;關(guān)中斷 EA 為總中斷 PUSH
P1
;保護(hù)現(xiàn)場 PUSH
04H PUSH
05H PUSH
06H SETB
EA
;開中斷 JNB
P3.0,AP0 ;A 道無車,轉(zhuǎn)向判斷 B 道(JNB 比較轉(zhuǎn)移指令。當(dāng) P3.0 是 0 時(shí)就轉(zhuǎn)移執(zhí)行 AP0,否則就順序執(zhí)行。)
MOV
P1,#0F3H;A 道綠燈亮,B 道紅燈亮 SJMP
DEL1
;轉(zhuǎn)向 15 秒延時(shí)程序 AP0: JNB
P3.1,EXIT ;B 道無車,退出中斷
MOV
P1,#0DEH;A 道紅燈亮,B 道綠燈亮 DEL1 : MOV
R3,#30 ;15s 延時(shí)的循環(huán)次數(shù) NEXT : LCALL
DELAY DJNZ
R3,NEXT ;15 秒未到循環(huán)繼續(xù) EXIT : CLR
EA POP
06H
;恢復(fù)現(xiàn)場 POP
05H POP
04H POP
P1 SETB
EA RETI
;返回原程序 ORG
0350H DELAY : MOV
R4,#20;0.5 秒延時(shí)子程序參考程序中為#10,經(jīng)實(shí)驗(yàn)發(fā)現(xiàn)只能延時(shí) 0.25s 故改為#20,以達(dá)到實(shí)驗(yàn)?zāi)康摹?/p>
LP1 : MOV
R5,#50 LP2 : MOV
R6,#248 NOP LP3: DJNZ
R6,LP3 DJNZ
R5,LP2 DJNZ
R4,LP1 RET END
交通信號燈與控制管腳的對應(yīng)關(guān)系如下:
控制狀態(tài)
P1 口控制碼
P1.7
P1.6
P1.5
P1.4
P1.3
P1.2
P1.1
P1.0
未用
未用
B 道
綠燈
B 道
黃燈
B 道
紅燈
A 道
綠燈
A 道
黃燈
A 道
紅燈
A 綠燈亮、B 紅燈亮
F3H
0
0
A 黃燈亮、B 紅燈亮
F5H
0
0
A 紅燈亮、B 綠燈亮
DEH
0
0
A 紅燈亮、B 黃燈亮
EEH
0
0
A 紅燈亮、B 紅燈亮
F6H
0
0
實(shí)驗(yàn)步驟及實(shí)驗(yàn)數(shù)據(jù)記 錄 1.先接線按下表所示的管腳與 LED 或邏輯開關(guān)的對應(yīng)關(guān)系接線。在 Proteus8 中原理圖繪制界面中將接線接好。
管腳
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P3.0
P3.1
P3.3
P3.2
LED 或邏輯開關(guān)
L3
L1
L2
L7
L5
L6
K1
K2
K3
K8
控制對象
A 紅燈
A 黃燈
A 綠燈
B 紅燈
B 黃燈
B 綠燈
A 道
B 道
使有車車道放行低電平有效
緊急車輛放行低電平有效
高電平表示有車低電平表示無車
接線完成后如圖所示:
2.輸入程序,在 Proteus8 中 SourceCode 界面將程序輸入完成后試運(yùn)行保證程序正確。
出現(xiàn)編譯成功后進(jìn)行下一步。運(yùn)行程序。
4.觀察六只發(fā)光二極管的亮滅規(guī)律。
實(shí)驗(yàn)中六只發(fā)光二極管亮滅規(guī)律:(0 代表滅,1 代表亮,2 代表閃)
運(yùn)行時(shí)間(s)
A 綠 A 黃 A 紅 B 綠 B 黃 B 紅 0 1 0 0 0 0 1 44 2 0 0 0 0 1 47 0 1 0 0 0 1 50 0 0 1 1 0 0 74 0 0 1 2 0 0 77 0 0 1 0 1 0 80 1 0 0 0 0 1 八十秒后開始重復(fù) 0-80 秒內(nèi)的亮滅規(guī)律。
5.
部分連接圖如圖所示。
1)
在 A 紅燈、B 綠燈亮?xí)r,先將 K1 撥至高電平(表示 A 道有車)、K2 撥至低電平(表示 B 道無車),再將 K3 撥至低電平使有車車道(A 道)放行,A 綠燈、B 紅燈同時(shí)亮 5s 后返回原先狀態(tài)。
對邏輯開關(guān) K1、K2、K3 的操作對應(yīng)于 SW2 開關(guān),閉合 SW2 后,A 紅燈滅,綠燈亮,B 綠燈滅,紅燈亮。15s 后恢復(fù)回閉合開關(guān)前的的亮燈狀態(tài)。
2)
在 A 綠燈、B 紅燈亮?xí)r,先將 K1 撥至低電平(表示 A 道無車)、K2 撥至高電平(表示 B 道有車),再將 K3 撥至低電平使有車車道(B 道)放行,A 紅燈、B 綠燈同時(shí)亮 5s 后返
回原先狀態(tài)。
對邏輯開關(guān) K1、K2、K3 的操作對應(yīng)于 SW1 開關(guān),閉合 SW1 后,A 綠燈滅,紅燈亮,B 紅燈滅,綠燈亮。15s 后恢復(fù)回閉合開關(guān)前的的亮燈狀態(tài)。
(提示:K3 撥至低電平后,應(yīng)在 5s 內(nèi)改為高電平,否則,單片機(jī)可能將再一次響應(yīng)中斷。)
6.不論 A 道、B 道的信號燈處于什么狀態(tài),將 K8 撥至低電平后,A 紅燈、B 紅燈同時(shí)亮 20s后返回原先狀態(tài)。(提示:K8 撥至低電平后,應(yīng)在 20s 內(nèi)改為高電平,否則,單片機(jī)可能將再一次響應(yīng)中斷。)
對邏輯開關(guān) K8 的操作對應(yīng)于 JINJI 開關(guān),閉合 JINJI 后,A 只有紅燈亮,B也只有紅燈亮。20s 后恢復(fù)回閉合開關(guān)前的的亮燈狀態(tài)。
實(shí)驗(yàn)數(shù)據(jù)分析 1.一道有車而另一道無車時(shí),K3 撥至低電平即向單片機(jī)發(fā)出中斷請求(低優(yōu)先級別);若此時(shí)單片機(jī)正在執(zhí)行主程序,會(huì)響應(yīng)中斷轉(zhuǎn)入到相應(yīng)的中斷服務(wù)程序,先依次查詢 A、B 車道的空閑狀態(tài),再去控制 A、B 車道的信號燈;若此時(shí)單片機(jī)正在執(zhí)行緊急車輛通過時(shí)中斷服務(wù)程序,單片機(jī)不會(huì)響應(yīng)中斷。
2.緊急車輛通過時(shí),K8 撥至低電平即向單片機(jī)發(fā)出中斷請求(高優(yōu)先級別),不論單片機(jī)正在執(zhí)行主程序還是一道有車而另一道無車時(shí)的中斷服務(wù)程序,會(huì)響應(yīng)中斷轉(zhuǎn)入到相應(yīng)的中斷服務(wù)程序。
3.在進(jìn)行步驟 5 1)或 2)操作時(shí),若在閉合開關(guān)后沒有在 5s 內(nèi)斷開開關(guān),則在 15 秒時(shí)無法按時(shí)恢復(fù)回閉合開關(guān)時(shí)的亮燈狀態(tài)。
4.操作過程中發(fā)現(xiàn),若操作 SW1 開關(guān)后亮燈狀態(tài)已經(jīng)發(fā)生改變,則在 15 秒內(nèi)再操作 SW2開關(guān)則無法繼續(xù)使亮燈狀態(tài)改變。
三
總結(jié)與體會(huì)
實(shí)驗(yàn)任務(wù)完成情況 本實(shí)驗(yàn)完成情況良好。通過老師的精心指導(dǎo)、本人的不懈努力和同學(xué)的熱心幫助,能夠基本上完成所有實(shí)驗(yàn)內(nèi)容,且在實(shí)驗(yàn)過程中對單片機(jī)的了解更加深入了。但也無法避免地遇到一些問題,比如對實(shí)驗(yàn)程序代碼的理解不夠深入,只停留在表面,且對 51 單片機(jī)的 111 條指令仍比較陌生,只能記住一些特別常用的。對于此我的做法是,在分析實(shí)驗(yàn)程序的過程中,一遇到不熟悉的指令就百度搜索一下加深印象。在反復(fù)的搜索過程中我也記住了不少指令。通過課程的學(xué)習(xí),目前達(dá)到的水平是能夠基本看懂實(shí)驗(yàn)程序,能夠繪制簡單原理圖,但仍無法做到獨(dú)立編寫實(shí)驗(yàn)程序。
實(shí)驗(yàn)體會(huì)、收獲、建議回答問題
通過對該實(shí)驗(yàn)的學(xué)習(xí),本人也有了許多不小的收獲。對于一位非電技專業(yè)的學(xué)生來說,我在學(xué)習(xí)單片機(jī)的過程中確實(shí)存在許多問題。老師講的東西很多在課堂上都無法及時(shí)弄明白,必須要靠課余時(shí)間的學(xué)習(xí)。所以起初在做該實(shí)驗(yàn)的時(shí)候也是感覺苦難重重,覺得自己肯定是無法完成的,但我不想輕易放棄,將老師上用的課件反復(fù)查看,發(fā)現(xiàn)很多上課沒有注意到的重要知識點(diǎn),這讓我的實(shí)驗(yàn)變得更加容易完成了許多。我覺得通過本次實(shí)驗(yàn)我的最大收獲是學(xué)會(huì)了如何解決難題。首先要做的就是對自己有信心,相信自己一定能夠完成。其次才是去認(rèn)真解決問題。
第三篇:單片機(jī)綜合實(shí)驗(yàn)報(bào)告格式
單片機(jī)綜合實(shí)驗(yàn)報(bào)告格式
(在所做過的實(shí)驗(yàn)內(nèi)容里挑選一個(gè)自己最有收獲,最有感想的實(shí)驗(yàn)內(nèi)容)
綜合實(shí)驗(yàn)報(bào)告標(biāo)題(可與實(shí)驗(yàn)名稱不同)
一、實(shí)驗(yàn)?zāi)康暮鸵蟆?/p>
二、實(shí)驗(yàn)儀器設(shè)備。
三、實(shí)驗(yàn)設(shè)計(jì)及調(diào)試:
(一)實(shí)驗(yàn)內(nèi)容。
(二)實(shí)驗(yàn)電路:畫出與實(shí)驗(yàn)內(nèi)容有關(guān)的簡單實(shí)驗(yàn)電路。
(三)實(shí)驗(yàn)設(shè)計(jì)及調(diào)試步驟:(3)畫出程序設(shè)計(jì)流程圖,包括主程序和各子程序流程圖。
(4)根據(jù)(2)、(3)的內(nèi)容寫出實(shí)驗(yàn)程序。
(5)調(diào)試程序(可以使用模擬仿真器)。
a、根據(jù)程序確定調(diào)試目的,即調(diào)試時(shí)所需觀察的內(nèi)容結(jié)果。
b、根據(jù)各調(diào)試目的分別選擇調(diào)試所需的方法,如單步、斷點(diǎn)等命令,分別列出各調(diào)試方法中所需要關(guān)注記錄的內(nèi)容。
c、調(diào)試程序,按各種調(diào)試方法記錄相應(yīng)的內(nèi)容。
d、分析調(diào)試記錄的內(nèi)容和結(jié)果,找出程序中可能出錯(cuò)的地方,然后修改程序,繼續(xù)調(diào)試、記錄、分析,直到調(diào)試成功。
(四)實(shí)驗(yàn)調(diào)試過程中所遇到的問題、解決問題的思路和解決的方法。
四、實(shí)驗(yàn)后的經(jīng)驗(yàn)教訓(xùn)總結(jié)。
第四篇:單片機(jī)實(shí)驗(yàn)報(bào)告[范文模版]
實(shí) 實(shí) 驗(yàn) 驗(yàn) 報(bào) 報(bào) 告
實(shí)驗(yàn)課程:
單片機(jī)原理及應(yīng)用
班
級:
自動(dòng)化 2 班
學(xué)
號:
姓
名:
教
師:
張
玲
成績:
實(shí) 驗(yàn) 日 期 :
****年**月**日
實(shí)驗(yàn)名稱:
實(shí)驗(yàn) 1-—計(jì)數(shù)顯示器
一、實(shí)驗(yàn)?zāi)康? 學(xué)習(xí)Proteus 軟件得使用,掌握單片機(jī)原理圖得繪圖方法。
二、實(shí)驗(yàn)內(nèi)容:
?1、繪制“計(jì)數(shù)顯示器”電路原理圖;2、利用提供得hex 文件驗(yàn)證此電路得運(yùn)行效果。
三、實(shí)驗(yàn)要求:
提交得實(shí)驗(yàn)報(bào)告中應(yīng)包括:1、繪圖方法簡述,要求說明元件與電源得選取、擺放及屬性編輯,總線與標(biāo)簽得畫法等內(nèi)容;2、電路原理圖;3、仿真運(yùn)行效果展示,要求就仿真文件加載方法及 3~4幅運(yùn)行截圖進(jìn)行簡要說明;4、實(shí)驗(yàn)小結(jié),說明遇到得主要問題或?qū)嶒?yàn) 1 體會(huì)等.參考電路原理圖如下:
元件類別 電路符號 元件名稱 Microprocessor ICs “U1“ 80C51 Miscellaneous “X1”/12MHz CRYSTAL Capacitors “C1”~“C2”/1nF CAP Capacitors “C3”/22μF CAP—ELEC Resistors Packs “RP1“/7—100Ω RESPACK—7 Resistors “R1"/100Ω RES Optoelectronics “LED1”~“LED2” 7SEG--CAT-GRN Switches & Relays “BUT” BUTTON 1、、及 編程思路及 C51 源程序:
2、電路原理圖:
:
3、仿真運(yùn)行效果展示:
4、實(shí)驗(yàn)小結(jié) :
熟悉Proteus 軟件,了解軟件得結(jié)構(gòu)組成與功能;學(xué)習(xí)ISIS 模塊得使用方法,學(xué)會(huì)設(shè)置圖紙、選元件、線畫總線、修改屬性等基本操作;學(xué)會(huì)可執(zhí)行文件 加載及程序仿法;理解Proteus在單片機(jī)開發(fā)中得作用,完成單片機(jī)電路原 理圖得繪制. 實(shí)驗(yàn)名稱:
實(shí)驗(yàn) 2——LED 指示燈循環(huán)控制
一、實(shí)驗(yàn)?zāi)康?熟悉μVision3 編譯軟件、掌握 C51編程與調(diào)試方法。
二、
實(shí)驗(yàn)內(nèi)容 1、按照教材 P243 得圖 A、34,繪制實(shí)驗(yàn)二電路原理圖; 2、編寫 C51 程序,實(shí)現(xiàn) 8 個(gè) LED 燈依次點(diǎn)亮得功能: P0、0→P0、1→ P0、2→P0、3→ ┅ →P0、7→P0、6→P0、5→ ┅ →P0、0 得順序,無限循環(huán),間隔約50ms; 3、觀察仿真結(jié)果,完成實(shí)驗(yàn)報(bào)告。
三、
實(shí)驗(yàn)要求 1、采用兩種加載并運(yùn)行可執(zhí)行文件得方法,即proteus獨(dú)立運(yùn)行與prote
us + Keil 聯(lián)合運(yùn)行,體會(huì)其中得差異與意義;2、練習(xí)采用單步、斷點(diǎn)以及監(jiān)視窗等手段進(jìn)行程序調(diào)試得方法;3、觀察仿真結(jié)果,完成實(shí)驗(yàn)報(bào)告:繪制得電路原理圖、編程思路分析及 C51源程序、調(diào)試過程簡述,仿真運(yùn)行效果以及實(shí)驗(yàn)小結(jié)。、電路原理圖:
:
及 2、編程思路及 C51 源程序:、仿真運(yùn)行效果:、實(shí)驗(yàn)小結(jié) :
通過本次實(shí)驗(yàn)我熟悉 uVision3 編譯軟件了解軟件得結(jié)構(gòu)組成與功能學(xué)習(xí)C51 語言得程序設(shè)計(jì)方法)學(xué)會(huì)在 uVision3中進(jìn)行 C51 程序錄入、編譯、與 調(diào)試?yán)斫?Proteus 與 Keil 聯(lián)合得仿真原理實(shí)現(xiàn) LED 指示燈循環(huán)控制功能。
更好得將 C 語言與 C51 語言聯(lián)系在了一起)學(xué)到得知識能準(zhǔn)確得利用了出來。
實(shí)驗(yàn)名稱:
實(shí)驗(yàn)3——指示燈與數(shù)碼管得中斷控制
一、實(shí) 驗(yàn)?zāi)康?掌握外部中斷得工作原理,學(xué)會(huì)中斷程序設(shè)計(jì).二、實(shí)驗(yàn)內(nèi)容 1、按照教材帕圖 A、53,繪制實(shí)驗(yàn)四電路原理圖;2、要求采用外部中斷原理完成本次實(shí)驗(yàn),其中按鍵 K1、K2 均設(shè)置為下降沿觸發(fā)方式,自然優(yōu)先級; 3、編寫 C51 程序?qū)崿F(xiàn)如下功能:開機(jī)后 D1滅燈,LED1黑屏,隨后單擊 K1→D1狀態(tài)反轉(zhuǎn),單擊 K2 →LED1 從 0 開始循環(huán)顯示0~F 字符。
4、觀察仿真結(jié)果,完成實(shí)驗(yàn)報(bào)告。
三、
實(shí)驗(yàn)要求 提交得實(shí)驗(yàn)報(bào)告中應(yīng)包括:電路原理圖,外部中斷工作原理闡述(以 K1 為例說明中斷響應(yīng)過程),C51 源程序(含流程圖與注釋語句),運(yùn)行效果(含運(yùn)行截圖
與說明),實(shí)驗(yàn)小結(jié). 1、電路原理圖 :
2、外部中斷工作原理闡述:
持續(xù)按下 K1 則 D1 將“亮→滅→亮→滅→?→亮→滅如此循環(huán),表明實(shí)現(xiàn)了 K1 對應(yīng)于 D1 狀態(tài)反轉(zhuǎn)這個(gè)功能;持續(xù)按下持續(xù)按 K2 則數(shù)碼顯示管依次顯 示 1-F,實(shí)現(xiàn)了 K2 對應(yīng)于 0~F 間得數(shù)碼管加一計(jì)數(shù)顯示.
3、、及 編程思路及 C51 源 源 程序:、仿真運(yùn)行效果:
5、實(shí)驗(yàn)小結(jié):
通過實(shí)驗(yàn)對 Protues 有了更多得了解,同時(shí)了解到中斷系統(tǒng)在實(shí)際中得更好 應(yīng)用。經(jīng)過編程操作起來更加熟練能很快得完成繪圖,編程時(shí)也得心應(yīng)手,能熟練得運(yùn)用軟件找出自己所編程中得語法問題及其她問題,并以改正。
實(shí)驗(yàn)名稱:
實(shí)驗(yàn)4—-電子秒表顯示器
一、實(shí) 實(shí) 驗(yàn)?zāi)康?掌握定時(shí)/計(jì)數(shù)器得中斷法工作原理,熟悉 C51 編程與調(diào)試方法
二、實(shí)驗(yàn)要求:
1、實(shí)驗(yàn)電路原理圖如教材 P260 A、65 圖所示.程序開始時(shí)顯示“00”;當(dāng)1s 產(chǎn)生時(shí),秒計(jì)數(shù)加1;秒計(jì)數(shù)到 59 后,自動(dòng)從“00”開始。
2、采用12MHz晶振頻率,T0 定時(shí)方式 1、50ms 定時(shí)中斷法編程(1s 需要經(jīng)過 20 軟循環(huán))(流程圖與參考程序模版如下所示).//定時(shí)中斷方式實(shí)現(xiàn)得電子秒表
15()件文頭?(定義無符號字符型變量 t—-中斷次數(shù)計(jì)數(shù)器,并賦初值0(定義無符號字符型變量 second—-秒計(jì)數(shù)器,并賦初值 0(定義位于 ROM 區(qū)得無符號字符型數(shù)組table-—顯示字模)timer0()
(中斷函數(shù)關(guān)鍵詞){ ?()0T 閉關(guān)?(初值重裝載 0x3cb0)
()1增器數(shù)計(jì)數(shù)次斷中? {)02==t(fi??
?
// 秒1于當(dāng)相,次 02斷中若?
;0=t???????? //中斷次數(shù)計(jì)數(shù)器清零 ?
;++dnoces?? ? // 零清器數(shù)計(jì)秒?
}()零清,06 到達(dá)值器數(shù)計(jì)秒若??()值示顯得 dnoces 量變出輸別分口 2P與0P?()0T動(dòng)啟??} main(){
?
;]01/dnoces[elbat=0P?? // 值示顯出輸別分口 2P 與 0P?
;]01%dnoces[elbat=2P?(定義T0 定時(shí)方式 1—-TMOD)05()0LT與0HT——載加0bc3x0值初出溢 sm?()AE,0TE——化始初斷中?(啟動(dòng) T0)
(死循環(huán))3、編程思路及C1 51 源程序: :
4、仿真運(yùn)行效果:
5、實(shí)驗(yàn)小結(jié) :
本次實(shí)驗(yàn)進(jìn)行得比較順利,根據(jù)指導(dǎo)材料中提供得流程圖完成了源程序得編 寫,成功生成了、hex文件,經(jīng)過仿真運(yùn)行達(dá)到了預(yù)期得實(shí)驗(yàn)結(jié)果.通過本次得 實(shí)驗(yàn),我更加深入得了解到單片機(jī)定時(shí)/計(jì)數(shù)功能實(shí)現(xiàn)得機(jī)理,通過與單片機(jī)中 斷功能得結(jié)合,可以完成更多得預(yù)期功能。但就是進(jìn)過討論我也發(fā)現(xiàn),程序還就是存 在很大得缺陷,想要實(shí)現(xiàn)更加準(zhǔn)確實(shí)現(xiàn)計(jì)時(shí)功能還需綜合利用各種知識完善程 序。
第五篇:單片機(jī)實(shí)驗(yàn)報(bào)告
《單片機(jī)原理及應(yīng)用》
實(shí) 驗(yàn) 報(bào) 告
2017—2018學(xué)年第一學(xué)期
班級: 152 專業(yè): 電子科學(xué)與技術(shù) 姓名: 子路 學(xué)號: 教師:
實(shí)驗(yàn)一:Keil C51
一、實(shí)驗(yàn)?zāi)康?/p>
1、熟悉Keil C51單片機(jī)應(yīng)用開發(fā)系統(tǒng)
2、熟悉Keil C51的調(diào)試技巧
二、實(shí)驗(yàn)內(nèi)容
1、安裝好了Keil軟件以后,我們打開它。打開以后界面如下:
2、我們先新建一個(gè)工程文件,點(diǎn)擊“Project->New Project?”菜單,如下圖:
3、選擇工程文件要存放的路徑 ,輸入工程文件名 LED, 最后單擊保存.4、在彈出的對話框中選擇 CPU 廠商及型號
5、選擇好 Atmel 公司的 AT89S52 后 , 單擊確定
6、在接著出現(xiàn)的對話框中選擇“是”。
7、新建一個(gè) C51 文件 , 單擊左上角的 New File 如下圖所示:
8、保存新建的文件,單擊SAVE如下圖:
9、在出現(xiàn)的對話框中輸入保存文件名MAIN.C(注意后綴名必須為.C),再單擊“保存”,如下圖:
10、保存好后把此文件加入到工程中方法如下 : 用鼠標(biāo)在 Source Group1 上單擊右鍵 , 然后再單擊 Add Files to Group ‘Source Group 1' 如下圖:
11、選擇要加入的文件 , 找到 MAIN.C 后 , 單擊 Add, 然后單擊 Close
12、在編輯框里輸入如下代碼:
13、到此我們完成了工程項(xiàng)目的建立以及文件加入工程 , 現(xiàn)在我們開始編譯工程如下圖所示 : 我們先單擊編譯, 如果在錯(cuò)誤與警告處看到 0 Error(s)表示編譯通過:
14、生成.hex 燒寫文件,先單擊Options for Target,如圖:
15、在下圖中,我們單擊 Output, 選中 Create HEX F。再單擊“確定”
16、打開文件夾‘實(shí)驗(yàn)1’,查看是否生成了HEX文件。如果沒有生成,在執(zhí)行
一遍步驟10到步驟12,直到生成。
三、實(shí)驗(yàn)工具(軟件、硬件等)
1、Keil
2、計(jì)算機(jī)
實(shí)驗(yàn)二:Proteus軟件學(xué)習(xí)
一、實(shí)驗(yàn)?zāi)康?/p>
1、了解Proteus的基本功能
2、熟悉Proteus的設(shè)計(jì)環(huán)境Preoteus ISIS及第三方編譯工具Keil
3、掌握Proteus中實(shí)現(xiàn)單片機(jī)系統(tǒng)設(shè)計(jì)與仿真的步驟與方法
二、實(shí)驗(yàn)內(nèi)容
設(shè)計(jì)與仿真的開發(fā)過程
Proteus強(qiáng)大的單方機(jī)系統(tǒng)設(shè)計(jì)與仿真功能,使之成為單片機(jī)系統(tǒng)應(yīng)用開發(fā)和改進(jìn)手段之一。
開發(fā)的整個(gè)過程都是在計(jì)算機(jī)上完成的,其過程一般分為三步: 1)Proteus 電路設(shè)計(jì):在ISIS平臺(tái)上進(jìn)行單片機(jī)系統(tǒng)電路設(shè)計(jì)、選擇元器件、接插件、連接電路和電氣現(xiàn)則檢查等。
2)Proteus 源程序設(shè)計(jì)和生成目標(biāo)代碼文件:在ISIS平臺(tái)上或借助第三方編譯工具進(jìn)行單片機(jī)系統(tǒng)程序設(shè)計(jì)、編輯、匯編編譯、代碼級調(diào)試,最后生成目標(biāo)代碼文件(*hex)。
3)Proteus仿真:在ISIS平臺(tái)上將目標(biāo)代碼文件加載到單片機(jī)系統(tǒng)中,由此實(shí)現(xiàn)系統(tǒng)實(shí)時(shí)交互與協(xié)同傷真。
三、實(shí)驗(yàn)工具(軟件、硬件等)
1、載有Proteus的計(jì)算機(jī)一臺(tái)
實(shí)驗(yàn)三:LED流水燈
一、實(shí)驗(yàn)?zāi)康?/p>
1、用Keil軟件編寫程序并利用開發(fā)板仿真
2、學(xué)習(xí)LED燈工作原理
二、實(shí)驗(yàn)內(nèi)容
延時(shí)實(shí)現(xiàn)LED流水燈效果P2口八個(gè)燈作跑馬燈。采用了寄存器存中間數(shù)。
三、實(shí)驗(yàn)工具(軟件、硬件等)1.載有Keil軟件的計(jì)算機(jī)一臺(tái) 2.開發(fā)板一套
四、實(shí)驗(yàn)結(jié)果及分析
實(shí)驗(yàn)四:靜態(tài)數(shù)碼管
一、實(shí)驗(yàn)?zāi)康?/p>
1、用Keil軟件編寫程序并利用開發(fā)板仿真
2、學(xué)習(xí)靜態(tài)顯示管工作原理
二、實(shí)驗(yàn)內(nèi)容
靜態(tài)數(shù)碼管流動(dòng)顯示0~9
二、實(shí)驗(yàn)工具(軟件、硬件等)1.載有Keil軟件的計(jì)算機(jī)一臺(tái) 2.開發(fā)板一套
四、實(shí)驗(yàn)結(jié)果及分析
實(shí)驗(yàn)五:按鍵移位動(dòng)態(tài)顯示
一、實(shí)驗(yàn)?zāi)康?/p>
1、用Keil軟件編寫程序并利用開發(fā)板仿真
2、學(xué)習(xí)靜態(tài)顯示管工作原理
二、實(shí)驗(yàn)內(nèi)容
靜態(tài)顯示管,按鍵不同顯示不同
三、實(shí)驗(yàn)工具(軟件、硬件等)1.載有Keil軟件的計(jì)算機(jī)一臺(tái) 2.開發(fā)板一套
四、實(shí)驗(yàn)結(jié)果及分析
實(shí)驗(yàn)六:中斷INT0+INT1
一、實(shí)驗(yàn)?zāi)康?/p>
1、用Keil軟件編寫程序并利用開發(fā)板仿真
2、學(xué)習(xí)中斷INT0和INT1的工作原理
二、實(shí)驗(yàn)內(nèi)容
試驗(yàn)數(shù)碼管上顯示外部中斷計(jì)數(shù),用單片機(jī)腳直接控制數(shù)碼管和外部中斷使用
三、實(shí)驗(yàn)工具(軟件、硬件等)1.載有Keil軟件的計(jì)算機(jī)一臺(tái) 2.開發(fā)板一套
四、實(shí)驗(yàn)結(jié)果及分析