|
|
|
蘇州市職業(yè)大學(xué) 課程設(shè)計(jì)說(shuō)明書(shū)
名稱(chēng) 單片機(jī)控制系統(tǒng)設(shè)計(jì) 學(xué)院(部)機(jī)電工程學(xué)院 班 級(jí)13機(jī)電一體化4 姓 名郭* 學(xué)院(部)負(fù)責(zé)人 陳 潔 系 主 任陸* 指導(dǎo)教師鐘*
課程名稱(chēng): 單片機(jī)控制系統(tǒng)設(shè)計(jì) 學(xué)院(部): 機(jī)電工程系 班 級(jí):13機(jī)電一體化4 指導(dǎo)教師: 鐘 鳴 學(xué)院(部)負(fù)責(zé)人: 陳 潔
一、課程設(shè)計(jì)課題 秒表的設(shè)計(jì)與仿真
| 二、課程設(shè)計(jì)要求
- 掌握單片機(jī)最小系統(tǒng);
- 掌握單片機(jī)控制系統(tǒng)的設(shè)計(jì)方法;
- 學(xué)會(huì)使用Proteus軟件;
- 學(xué)會(huì)使用匯編語(yǔ)言或C語(yǔ)言編制單片機(jī)程序;
- 掌握各類(lèi)元件(如步進(jìn)電機(jī)、液晶顯示器、數(shù)碼管顯示器、溫度傳感器、鍵盤(pán)等)的單片機(jī)控制方法;
- 學(xué)會(huì)使用Keil軟件或WAVE軟件調(diào)試程序;
- 學(xué)會(huì)使用Proteus仿真單片機(jī)系統(tǒng);
- 能熟練使用XL600型單片機(jī)實(shí)驗(yàn)板,并對(duì)設(shè)計(jì)電路實(shí)現(xiàn)硬件電路驗(yàn)證(部分)。
| 三、課程設(shè)計(jì)工作量 1、課程設(shè)計(jì)任務(wù)布置, 查找整理資料(0.5天); 2、硬件電路設(shè)計(jì)(1天) 3、軟件設(shè)計(jì)(1.5天) 4、電路仿真、驗(yàn)證(0.5天) 5、說(shuō)明書(shū)編制(1天) 6、說(shuō)明書(shū)提交、答辯(0.5天)。 | 四、課程設(shè)計(jì)說(shuō)明書(shū)內(nèi)容(有指導(dǎo)書(shū)的可省略) 1、系統(tǒng)概述 1.1 系統(tǒng)功能描述 1.2系統(tǒng)設(shè)計(jì)框圖 2、系統(tǒng)硬件設(shè)計(jì) 2.1元器件清單 2.2原理圖設(shè)計(jì) 3、系統(tǒng)軟件設(shè)計(jì) 3.1系統(tǒng)程序流程圖 3.2系統(tǒng)程序清單 4 系統(tǒng)仿真 4.1系統(tǒng)仿真過(guò)程 4.2系統(tǒng)仿真分析 5 實(shí)訓(xùn)小結(jié)
|
目錄
1系統(tǒng)概述 1.1 系統(tǒng)功能描述 1.2 系統(tǒng)設(shè)計(jì)框圖 2 系統(tǒng)硬件設(shè)計(jì) 2.1 元器件清單 2.2 原理圖設(shè)計(jì) 3系統(tǒng)軟件設(shè)計(jì) 3.1 系統(tǒng)程序流程圖 3.2 系統(tǒng)程序清單 4系統(tǒng)仿真 4.1 系統(tǒng)仿真過(guò)程 4.2 系統(tǒng)仿真分析 5 實(shí)訓(xùn)小結(jié)
1系統(tǒng)概述
1.1 系統(tǒng)功能描述本課題是要完成秒表系統(tǒng)的設(shè)計(jì)與仿真。 1)系統(tǒng)一上電,兩位顯示器顯示“00”; 2)當(dāng)按下按鍵(開(kāi)始/停止鍵)時(shí),蜂鳴器響一聲、顯示燈(綠燈)亮與此同時(shí)開(kāi)始計(jì)時(shí),顯示器顯示秒數(shù);再次按下按鍵(開(kāi)始/停止鍵)時(shí),蜂鳴器響一聲、顯示燈(綠燈)滅,同時(shí)停止計(jì)時(shí),顯示器顯示計(jì)時(shí)時(shí)間; 3)當(dāng)再按下按鍵(開(kāi)始/停止鍵)時(shí),顯示燈(綠燈)亮,兩位顯示器顯示“00”。 1.2 系統(tǒng)設(shè)計(jì)框圖
圖1-1 系統(tǒng)設(shè)計(jì)框圖
2 系統(tǒng)硬件設(shè)計(jì)2.1 元器件清單
2.2 原理圖設(shè)計(jì)根據(jù)系統(tǒng)功能描述,我選擇了AT89C51單片機(jī)、2位數(shù)碼管(共陰)、三極管、蜂鳴器、按鍵等元件,考慮到晶振電路和復(fù)位電路,我選了電容、電阻等元件。
圖2-1 PROTEUS中的系統(tǒng)元器件選擇
根據(jù)P0口專(zhuān)用于分時(shí)傳送低八位地址信號(hào)和8位數(shù)據(jù)信號(hào)的特性,所以P0做輸出端口時(shí)要加上拉電阻;將P3.0作為輸入端口,所以這時(shí)先要將口線(xiàn)置為高電平“1”;為了系統(tǒng)安全加了晶振電路和復(fù)位電路。
圖2-2 系統(tǒng)原理圖 3系統(tǒng)軟件設(shè)計(jì)3.1 系統(tǒng)程序流程圖在編程時(shí),先將大的框架編程,分模塊編程,在此次編程中我的程序分為:主程序初始化、中斷服務(wù)子程序部分、按鍵控制部分、顯示器顯示部分、蜂鳴器和燈部分、中斷服務(wù)子程序部分、程序結(jié)束部分等。然后我再將它們串聯(lián)起立,進(jìn)行程序細(xì)化,將細(xì)化后的相似代碼和重復(fù)代碼合并,完成我的整個(gè)系統(tǒng)編程。
圖3-1 系統(tǒng)主程序流程圖 中斷服務(wù)子程序 該段程序?qū)崿F(xiàn)按鍵去抖動(dòng)識(shí)別按鍵是否按下,按下按鍵數(shù)值開(kāi)始加一,從而控制數(shù)值的顯示。  圖3-2 系統(tǒng)中斷服務(wù)子程序流程圖 3.2 系統(tǒng)程序清單ORG 0000H;復(fù)位后程序如口地址 LJMP MAIN;跳至主程序 ORG 001BH;T1中斷入口地址設(shè)置 LJMP INT1_T1;跳至T1中斷服務(wù)子程序 MAIN: MOV SP,#60H MOV TMOD,#10H;確定T1為定時(shí)、八位定時(shí)器、外部引腳控制定時(shí) MOV TH1,#00H;賦初值 MOV TL1,#4CH MOV P3,#0FFH MOV R1,#20 MOV P0,#0FFH MOV DPTR,#TAB;確定表首地址 MOV R0,#0 MOV R2,#00H MOV P1,#00H SETB ET1 ;中斷初始化 SETB EA LOOP: LCALL ANJIAN LCALL XIANSHI SJMP LOOP ANJIAN: JB P3.3,L4;判斷按鍵是否按下 LCALL DEL20MS;去抖動(dòng) JB P3.3,L4 MAIN1:CPL P1.0;蜂鳴器響 LCALL DEL20MS SETB P1.1 ;燈亮 INC R0 CJNE R0,#1,L1;為1啟動(dòng) SETB TR1 SJMP L3 L1: CJNE R0,#2,L2;為2暫停 CLR TR1 CLR P1.1 ;燈滅 SJMP L3 L2: CLR TR1 MOV R0,#00H MOV R2,#00H L3: JNB P3.3,L3 L4: RET XIANSHI:LCALL SEP MOV A,30H MOVC A,@A+DPTR;查表 CLR P2.1 | MOV P0,A ;顯示 LCALL DEL20MS SETB P2.1 MOV A,40H MOVC A,@A+DPTR; CLR P2.0 MOV P0,A ;顯示 LCALL DEL20MS SETB P2.0 RET SEP: MOV A,R2 MOV B,#10 DIV AB MOV 30H,B;個(gè)位 MOV 40H,A;十位 RET INT1_T1: ;T1中斷服務(wù)子程序 PUSH ACC;保護(hù)現(xiàn)場(chǎng) PUSH PSW CLR TR1;關(guān)中斷 MOV TH1,#00H;延時(shí)50ms常數(shù)重置 MOV TL1,#4CH SETB TR1;開(kāi)中斷 DJNZ R1,WAIT;判斷是否到1S MOV R1,#20;延時(shí)1s的常數(shù) INC R2 ;顯示值遞加 CJNE R2,#60,WAIT ;判斷是否到60s MOV R2,#0;秒數(shù)清零 WAIT: POP PSW;恢復(fù)現(xiàn)場(chǎng) POP ACC RETI ;中斷返回
DEL20MS:MOV R3,#40 DE1:MOV R4,#250 DE2:DJNZ R4,DE2 DJNZ R3,DE1 ;延時(shí)20ms RET TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;0-9 END |
4系統(tǒng)仿真
4.1 系統(tǒng)仿真過(guò)程在Proteus仿真軟件中按下開(kāi)始按鈕,數(shù)碼管顯示“00”,按下按鍵S1(開(kāi)始/停止),蜂鳴器響一聲、綠燈亮,與此同時(shí)數(shù)碼管開(kāi)始計(jì)時(shí);若計(jì)時(shí)未到59秒,按下按鍵S1,此時(shí)數(shù)碼管停止計(jì)時(shí),蜂鳴器響一聲、綠燈滅,顯示當(dāng)前數(shù)值;再按下按鍵S1,蜂鳴器響一聲,數(shù)碼管顯示“00”;若計(jì)時(shí)到59秒未按下按鍵S1,數(shù)碼管再次循環(huán)顯示“00”。
圖4-1 系統(tǒng)仿真圖 4.2 系統(tǒng)仿真分析1.調(diào)試過(guò)程中遇到的問(wèn)題: 在Proteus仿真軟件中我的仿真電路中的三極管起初選用了圖(2)三極管NPN,進(jìn)行仿真時(shí)三極管不導(dǎo)通數(shù)碼管無(wú)顯示,后來(lái)?yè)Q了圖(1)三極管2N222進(jìn)行仿真時(shí)三極管導(dǎo)通數(shù)碼管正常顯示。分析原因可能是Proteus仿真軟件本身的誤差。 圖(1)三極管2N222 圖(2)三極管NPN 2.系統(tǒng)仿真時(shí)遇到的問(wèn)題: 燈的問(wèn)題 蜂鳴器的問(wèn)題 3.系統(tǒng)有待提高和完善的地方
寫(xiě)調(diào)試,仿真過(guò)程中出現(xiàn)的問(wèn)題和解決,分點(diǎn)寫(xiě),也可以寫(xiě)系統(tǒng)有待提高和完善的地方 (多次計(jì)時(shí),顯示燈)
實(shí) 習(xí) 實(shí) 訓(xùn) 報(bào) 告 | 5 實(shí)訓(xùn)小結(jié)本次實(shí)訓(xùn)的我組抽到課題是:秒表的設(shè)計(jì)與仿真。在本學(xué)期做過(guò)類(lèi)似的實(shí)驗(yàn),所以實(shí)現(xiàn)基本的計(jì)時(shí)功能沒(méi)有遇到太大的問(wèn)題,主要在蜂鳴器和顯示燈的編程設(shè)計(jì)上遇到了一點(diǎn)難題。最后在同學(xué)的幫助下,完成了設(shè)計(jì)要求。 本次實(shí)訓(xùn)在單片機(jī)學(xué)習(xí)中我總結(jié)了以下幾點(diǎn)經(jīng)驗(yàn): 1)要學(xué)會(huì)參考書(shū)本的程序,系統(tǒng)認(rèn)知單片機(jī)的編程原則和編程語(yǔ)句,迅速提高自己的編程能力。 2)碰到問(wèn)題可以借助網(wǎng)絡(luò)、圖書(shū)館資源來(lái)搜尋答案和對(duì)自己有幫助的問(wèn)題,一定會(huì)有所收獲。 3)小組要團(tuán)結(jié),小組之間要多交流。技術(shù)是靠不斷的積累和交流才會(huì)進(jìn)步的,大家集思廣益,能更快捷的找到問(wèn)題所在,并解決問(wèn)題。 通過(guò)這次單片機(jī)設(shè)計(jì)我不僅加深了對(duì)單片機(jī)的理解,并且將理論應(yīng)用到了實(shí)際當(dāng)中,同時(shí)也使我認(rèn)識(shí)到自身存在的不足之處,無(wú)論是理論上還是遇到問(wèn)題的處理能力上都還有待提高,而且這也激發(fā)了我今后努力學(xué)習(xí)的興趣。發(fā)現(xiàn)問(wèn)題、提出問(wèn)題、分析問(wèn)題、解決問(wèn)題和實(shí)踐能力這些都會(huì)受益于我在以后的學(xué)習(xí)、工作和生活中。
| |
項(xiàng) 目 | 項(xiàng)目實(shí)施過(guò)程(60%) | | | | 團(tuán)隊(duì)合 作(學(xué)生) (5%) | | | | | | |
| |
|
|
實(shí)習(xí)實(shí)訓(xùn)成績(jī): 指導(dǎo)教師簽名:
2015年 11月22日 |
說(shuō)明:報(bào)告包含實(shí)習(xí)實(shí)訓(xùn)內(nèi)容、過(guò)程、情況小結(jié)及心得體會(huì)、對(duì)實(shí)習(xí)實(shí)訓(xùn)的意見(jiàn)建議等。
0.png (55.35 KB, 下載次數(shù): 41)
下載附件
2018-4-19 23:43 上傳
全部資料51hei下載地址:
項(xiàng)目八.zip
(183.58 KB, 下載次數(shù): 15)
2018-4-19 11:38 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
|