九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

工業(yè)順序控制及顯示設(shè)計 單片機課程設(shè)計報告

上傳人:痛*** 文檔編號:142007213 上傳時間:2022-08-24 格式:DOC 頁數(shù):32 大?。?86.50KB
收藏 版權(quán)申訴 舉報 下載
工業(yè)順序控制及顯示設(shè)計 單片機課程設(shè)計報告_第1頁
第1頁 / 共32頁
工業(yè)順序控制及顯示設(shè)計 單片機課程設(shè)計報告_第2頁
第2頁 / 共32頁
工業(yè)順序控制及顯示設(shè)計 單片機課程設(shè)計報告_第3頁
第3頁 / 共32頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《工業(yè)順序控制及顯示設(shè)計 單片機課程設(shè)計報告》由會員分享,可在線閱讀,更多相關(guān)《工業(yè)順序控制及顯示設(shè)計 單片機課程設(shè)計報告(32頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、單片機及控制系統(tǒng)課程設(shè)計報告題 目: 工業(yè)順序控制及顯示設(shè)計 院 (系): 機電與自動化學(xué)院 專業(yè)班級: 電氣工程及其自動化11XX班 學(xué)生姓名: 科 比 學(xué) 號: 20111131* 指導(dǎo)教師: 梅秋燕 2014年06月15日至2014年06月28日 華中科技大學(xué)武昌分校單片機及控制系統(tǒng)課程設(shè)計任務(wù)書一、設(shè)計題目工業(yè)順序控制及顯示設(shè)計 二、設(shè)計主要內(nèi)容(1)掌握51單片機在工業(yè)順序控制中的應(yīng)用,學(xué)習(xí)單片機的控制程序的設(shè)計及中斷程序的編程應(yīng)用。(2)用七只發(fā)光二極模擬工業(yè)控制中的7道工序,高電平點亮,每道工序用定時器進行工序間的順序轉(zhuǎn)換。(3)與此同時運用動態(tài)掃描和定時器1在數(shù)碼管上顯示出從7

2、65432開始以1/10秒的速度遞減至765398,并保持顯示此數(shù)。(4)按規(guī)范撰寫課程設(shè)計說明書,包括硬件和軟件設(shè)計。三、原始資料(1) 單片機接口8051 P1.0-P1.6控制工業(yè)生產(chǎn)的七道工序,現(xiàn)模擬控制七只發(fā)光二極管的點亮,高電平點亮。設(shè)定每道工序時間轉(zhuǎn)換為延時, P3.4為開工啟動開關(guān),高電平啟動。P3.3為外部故障輸入模擬開關(guān),低電平報警,P1.7為報警聲音輸出。設(shè)定7道工序只有一位輸出。(2) LCD顯示電路 LCD顯示電路LCD顯示電路,由U33的74HC245驅(qū)動,以顯示電平狀態(tài)。高電平為“1”狀態(tài),點亮發(fā)光二極管。(3) 主程序和中斷程序流程圖(4)數(shù)碼管顯示電路顯示電路

3、結(jié)構(gòu)圖八段數(shù)碼管顯示電路由8155的PB0、PB1經(jīng)74LS164“串轉(zhuǎn)并”后輸出得到。6位位碼由8155 的PA0口輸出,經(jīng)uA2003反向驅(qū)動后,選擇相應(yīng)顯示位。74LS164是串行輸入并行輸出轉(zhuǎn)換電路,串行輸入的數(shù)據(jù)位由8155的PB0控制,時鐘位由8155的PB1控制輸出。寫程序時,只要向數(shù)據(jù)位地址輸出數(shù)據(jù),然后向時鐘位地址輸出一高一低兩個電平就可以將數(shù)據(jù)位置到74LS164中,并且實現(xiàn)移位。向顯示位選通地址輸出高電平就可以點亮相應(yīng)的顯示位。 數(shù)碼管數(shù)字代碼表四、要求的設(shè)計成果(1)根據(jù)控制要求,進行控制系統(tǒng)硬件電路設(shè)計。(2)控制及顯示程序設(shè)計。(3)利用實驗室設(shè)備進行模擬調(diào)試。(4

4、)編寫單片機及控制系統(tǒng)報告,課程設(shè)計報告內(nèi)容包括: 設(shè)計方案、課程設(shè)計過程和設(shè)計思想、方法、原理。 繪制系統(tǒng)的原理圖(可用繪圖軟件也可手繪)。 單片機控制程序,有程序說明。 參考資料、參考書及參考手冊。其他需要說明的問題,例如操作說明、程序的調(diào)試過程、遇到的問題及解決方法、對課程設(shè)計的認(rèn)識和建議等。單片機及控制系統(tǒng)報告可以手寫,也可以用電腦編排打印,報告格式按照華中科技大學(xué)武昌分校課程設(shè)計管理辦法執(zhí)行。課程設(shè)計報告要求內(nèi)容正確完整,圖表清晰,敘述簡明,語句通順,字?jǐn)?shù)不得少于2000漢字。課程設(shè)計報告按封面、任務(wù)書、設(shè)計說明書、圖紙、實物照片貼頁(實物照片貼在A4復(fù)印紙上)、成績評定表的順序裝訂

5、。五、進程安排內(nèi)容時間下達課程設(shè)計任務(wù)書。講解課程設(shè)計的任務(wù)與要求、進度安排、指導(dǎo)時間、注意事項、提供參考資料。學(xué)生到實驗室熟悉設(shè)備。1天搜集資料、方案論證、初步設(shè)計。1天系統(tǒng)設(shè)計、繪制系統(tǒng)控制原理圖及軟件編程。2天利用實驗室設(shè)備完成控制系統(tǒng)的硬件接線工作,運行控制程序,進行運行調(diào)試。3天方案優(yōu)化、總結(jié)完善、整理資料、撰寫課程設(shè)計報告2天答辯、課程設(shè)計總結(jié)。1天共計10天(2周)六、主要參考資料1 李廣弟單片機基礎(chǔ)北京:北京航空航天大學(xué),20092 李群芳微型計算機與接口技術(shù)北京:電子工業(yè)出版社,20123 單片機綜合仿真實驗系統(tǒng)Keil C實驗指導(dǎo)書深圳:深圳市雷邁特科技有限公司,20124

6、 沈慶陽8051單片機實踐與應(yīng)用機電一體化系統(tǒng)設(shè)計北京:化學(xué)工業(yè)出版社,20095 朱定華單片微機原理與應(yīng)用北京:清華大學(xué)出版社,2006指導(dǎo)教師(簽名): 20 年 月 日目 錄1.課程設(shè)計任務(wù)及要求21.1設(shè)計目的21.2控制要求21.3系統(tǒng)總體方案設(shè)計22.控制系統(tǒng)原理分析42.1硬件部分分析42.1.1 89C51單片機引腳圖及引腳功能介紹42.1.2顯示系統(tǒng)工作原理52.2軟件設(shè)計流程圖83.程序分析103.1順序控制程序103.2數(shù)碼管顯示程序114.運行調(diào)試144.1軟件調(diào)試過程144.2安裝調(diào)試及方法164.3 結(jié)果分析175.總結(jié)186.參考文獻197.附錄20附錄1 程序清

7、單20附錄2實物照片(現(xiàn)場接線及調(diào)試顯示照片)24 1.課程設(shè)計任務(wù)及要求1.1設(shè)計目的(1)加強對單片機和C語言的認(rèn)識,充分掌握和理解設(shè)計各部分的工作原理、設(shè)計過程、選擇芯片器件、模塊化編程等多項知識。(2)用單片機模擬實現(xiàn)具體應(yīng)用,使個人設(shè)計能夠真正使用。(3)把理論知識與實踐相結(jié)合,充分發(fā)揮個人能力,并在實踐中鍛煉。(4)提高利用已學(xué)知識分析和解決問題的能力。(5)提高實踐動手能力。1.2控制要求(1)用七只發(fā)光二極模擬工業(yè)控制中的7道工序,高電平點亮,每道工序用定時器進行工序間的順序轉(zhuǎn)換。(2)與此同時運用動態(tài)掃描和定時器1在數(shù)碼管上顯示出從765432開始以1/10秒的速度遞減至76

8、5398,并保持顯示此數(shù)。1.3系統(tǒng)總體方案設(shè)計設(shè)計主要內(nèi)容: (1)掌握51單片機在工業(yè)順序控制中的應(yīng)用,學(xué)習(xí)單片機的控制程序的設(shè)計及中斷程序的編程應(yīng)用。 (2)用七只發(fā)光二極模擬工業(yè)控制中的7道工序,高電平點亮,每道工序用定時器進行工序間的順序轉(zhuǎn)換。 (3)與此同時運用動態(tài)掃描和定時器1在數(shù)碼管上顯示出從765432開始以1/10秒的速度遞減至765398,并保持顯示此數(shù)。 (4)按規(guī)范撰寫課程設(shè)計說明書,包括硬件和軟件設(shè)計。(1)根據(jù)控制要求,進行控制系統(tǒng)硬件電路設(shè)計。 (2)控制及顯示程序設(shè)計。 (3)利用實驗室設(shè)備進行模擬調(diào)試。 (4)編寫單片機原理及應(yīng)用課程設(shè)計報告,課程設(shè)計報告內(nèi)

9、容包括:設(shè)計主要流程: (1)設(shè)計方案、課程設(shè)計過程和設(shè)計思想、方法、原理。 (2)繪制系統(tǒng)的原理圖(可用繪圖軟件也可手繪)。 (3)單片機控制程序,有程序說明。 (4)參考資料、參考書及參考手冊。 (5)其他需要說明的問題,例如操作說明、程序的調(diào)試過程、遇到的問題及解決方法、對課程設(shè)計的認(rèn)識和建議等。 (6)單片機原理及應(yīng)用課程設(shè)計報告可以手寫,也可以用電腦編排打印,報告格式按照華中科技大學(xué)武昌分校課程設(shè)計管理辦法執(zhí)行。課程設(shè)計報告要求內(nèi)容正確完整,圖表清晰,敘述簡明,語句通順,字?jǐn)?shù)不得少于2000漢字。 (7)課程設(shè)計報告按封面、任務(wù)書、設(shè)計說明書、圖紙、實物照片貼頁(實物照片貼在A4復(fù)印

10、紙上)、成績評定表的順序裝訂。 設(shè)計主要流程圖如下圖。圖1-1 課程設(shè)計總流9 2.控制系統(tǒng)原理分析2.1硬件部分分析2.1.1 89C51單片機引腳圖及引腳功能介紹本次實習(xí)的中斷功能就是基于89C51單片機的基礎(chǔ)上實現(xiàn)的,首先來簡單認(rèn)識一下,它的引腳如圖2-1所示:圖2-1 89C51引腳示意圖單片機89C51的39個引腳大致可分為4類:電源、時鐘、控制和I/O引腳。1.電源:(1)VCC:芯片電源,接+5V;(2)VSS:接地端;2.時鐘:XTAL1、XTAL2 :晶體振蕩電路反相輸入端和輸出端。3.控制線:控制線共有4根,(1)ALE/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖ALE

11、功能:用來鎖存P0口送出的低8位地址PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。(2) PSEN:外ROM讀選通信號。(3)RST/VPD:復(fù)位/備用電源。RST(Reset)功能:復(fù)位信號輸入端。VPD功能:在Vcc掉電情況下,接備用電源。(4)EA/Vpp:內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。EA功能:內(nèi)外ROM選擇端。Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。4.I/O線89C51共有4個8位并行I/O端口:P0、P1、P2、P3口,共32個引腳。P3口還具有第二功能,用于特殊信號輸入輸出和控制信號(屬控制總線)

12、。2.1.2顯示系統(tǒng)工作原理LED顯示電路: 圖2-2 LCD顯示電路 LCD顯示電路,由U33的74HC245驅(qū)動,以顯示電平狀態(tài)。高電平為“1”狀態(tài),點亮發(fā)光二極管。對于74HC245,實物圖如下 圖2-3 74HC24實物圖 圖2-4 74LS245結(jié)構(gòu)圖引腳定義:第1腳DIR,為輸入輸出端口轉(zhuǎn)換用,DIR=“1”高電平時信號由“A”端輸入“B”端輸出,DIR=“0”低電平時信號由“B”端輸入“A”端輸出。第29腳“A”信號輸入輸出端,A0=B0,A7=B7,A0與B0是一組,如果DIR=“1”O(jiān)E=“0”則A1輸入B1輸出,其它類同。如果DIR=“0”O(jiān)E=“0”則B1輸入A1輸出,其

13、它類同。第1118腳“B”信號輸入輸出端,功能與“A”端一樣,不再描述。第19腳OE,若該腳為“1”A/B端的信號將不導(dǎo)通,只有為“0”時A/B端才被啟用,該腳也就是起到開關(guān)的作用。第10腳GND,電源地。 第20腳VCC,電源正極。 圖2-5 顯示電路結(jié)構(gòu)圖八段數(shù)碼管顯示電路由8155的PB0、PB1經(jīng)74LS164“串轉(zhuǎn)并”后輸出得到。6位位碼由8155 的PA0口輸出,經(jīng)uA2003反向驅(qū)動后,選擇相應(yīng)顯示位。74LS164是串行輸入并行輸出轉(zhuǎn)換電路,串行輸入的數(shù)據(jù)位由8155的PB0控制,時鐘位由8155的PB1控制輸出。寫程序時,只要向數(shù)據(jù)位地址輸出數(shù)據(jù),然后向時鐘位地址輸出一高一低

14、兩個電平就可以將數(shù)據(jù)位置到74LS164中,并且實現(xiàn)移位。向顯示位選通地址輸出高電平就可以點亮相應(yīng)的顯示位。 圖2-6 74LS164引腳結(jié)構(gòu)圖 引腳信息: 符號引腳說明DSA1數(shù)據(jù)輸入DSB2數(shù)據(jù)輸入Q0Q336輸出GND7地 (0 V)CP8時鐘輸入(低電平到高電平邊沿觸發(fā))/M/R9中央復(fù)位輸入(低電平有效)Q4Q71013輸出VCC14正電源功能概述: 74LS164是8位邊沿觸發(fā)式移位寄存器,串行輸入數(shù)據(jù),然后并行輸出。數(shù)據(jù)通過兩個輸入端(DSA 或 DSB)之一串行輸入;任一輸入端可以用作高電平使能端,控制另一輸入端的數(shù)據(jù)輸入。兩個輸入端或者連接在一起,或者把不用的輸入端接高電平,

15、一定不要懸空。時鐘 (CP) 每次由低變高時,數(shù)據(jù)右移一位,輸入到 Q0, Q0 是兩個數(shù)據(jù)輸入端(DSA和 DSB)的邏輯與,它將上升時鐘沿之前保持一個建立時間的長度。主復(fù)位 (MR) 輸入端上的一個低電平將使其它所有輸入端都無效,非同步地清除寄存器,強制所有的輸出為低電平。字段碼: 圖2-7 數(shù)碼管數(shù)字代碼表2.2軟件設(shè)計流程圖 圖2-8 設(shè)計流程圖 P1口的P1.0P1.6接七只發(fā)光二極管,P1.7接報警器,P3.4接開工啟動開關(guān),P3.2接外部故障輸入模擬開關(guān)。 主程序流程圖:當(dāng)程序啟動,開啟中斷,并使P1、P3口初始化,當(dāng)給start開始信號即P3.4得電時,運行主程序中使發(fā)光二極管

16、得電的程序,從L0至L7,按順序每次只點亮一只二極管,并延時一段時間,然后點亮下一只二極管,當(dāng)?shù)谄咧欢O管得電延時完成后,程序跳轉(zhuǎn)到工序1開始的地方,按此規(guī)律從工序1到工序7依次循環(huán)進行下去。 中斷服務(wù)子程序:當(dāng)外部故障輸入模擬開關(guān)即P3.3得電時,運行中斷子程序,先使P1=0x00即關(guān)閉輸出保護現(xiàn)場,speak=1使報警器報警。然后判斷故障情況,如果故障清除,則恢復(fù)現(xiàn)場跳出中斷子程序回到主程序;如果故障沒有清除,則報警器繼續(xù)報警直至故障清除。3.程序分析3.1順序控制程序#include reg51.h#define WORD unsigned int#define BYTE unsigne

17、d charsbit Speak=P17; P1.7對應(yīng)報警開關(guān),用P1.7對應(yīng)的得電信號來改變是否故障sbit Start=P34; 定義P3口的P3.4為啟動開關(guān)sbit test=P10; /*定義變量,報警P1.7;啟動P3.4;外部故障開關(guān)P3.3*/void delay(WORD time)WORD i;for(i=0;i=time;i+); /*延時中斷程序*/void ErroBl (void) interrupt 2 using 1 P1=0X00;Speak=1;delay(200);Speak=0;delay(100); /*外部故障中斷報警程序,循環(huán)報警*/void m

18、ain() 主函數(shù)IE=0x84;IP=0x04; PSW=0x00; /*輔助繼電器賦值,允許外部中斷;INT1(-)優(yōu)先級別最高*/while(1) 循環(huán) if(Start=1) /*啟動信號*/ P1=0X01; /*工序一*/給P1口賦值為00000001,即工序1對應(yīng)的燈得電,燈亮。 delay(6000); /*工序一延時*/采用延時程序,是得電信號延時,即燈亮延時6000后滅。 其他燈的亮滅只是對賦值進行更改,來達到讓7個燈互相交替亮滅。程序分析說明: P3.4為開工啟動開關(guān),高電平啟動。在主程序中P1 = 0xff表示高電平有效啟動;IT0 = 0;表示Enable EX0,外

19、部中斷INT0低電平有效;EX0 = 1;表示中斷標(biāo)志位為1時,允許INT0中斷;EA = 1;表示中斷總控制開關(guān),為1時CPU允許中斷;在while語句中,P1 = 0xfe;表示從右第一個燈亮;Delay(1000);表示延時1S;往后以此類推。但是在Delay(1000);表示進入延時函數(shù)調(diào)用。其中while (cnt- !=0)表示從1000往下減1。3.2數(shù)碼管顯示程序顯示設(shè)計程序是在八段數(shù)碼顯示設(shè)計程序的基礎(chǔ)上加以修改得到的。按要求高三位是固定不變的,只需要變化低三位。在低三位遞減到指定數(shù)據(jù)時,保持固定不變。#include#define LEDLen 6#define mode

20、0x03;#define CAddr XBYTE0xe100/* 控制字地址 */#define OUTBIT XBYTE0xe101/* 位控制口 */#define CLK164 XBYTE0xe102/* 段控制口(接164時鐘位) */#define DAT164 XBYTE0xe102 /* 段控制口(接164數(shù)據(jù)位) */#define IN XBYTE0xe103 /* 鍵盤讀入口 */ unsigned char LEDBufLEDLen; /* 顯示緩沖 */code unsigned char LEDMAP = /* 八段管顯示碼 */ 0x3f, 0x06, 0x5b,

21、0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71;void Delay(unsigned char CNT) /*延時中斷程序*/ unsigned char i; while (CNT- !=0) for (i=100; i !=0; i-);如何保證最后停在7654398,在前面建立一個無限循環(huán)程序,當(dāng)滿足一定條件是跳入該程序就能保證顯示數(shù)碼管把持不變,下面是該程序。 void display() /*按要求最后顯示765398,并用無限循環(huán)保持不變*/ while(1) unsigne

22、d char j; LEDBuf0 = LEDMAP(7) & 0x0f; /*六個八段數(shù)碼管依次賦值*/ LEDBuf1 = LEDMAP(6) & 0x0f; LEDBuf2 = LEDMAP(5) & 0x0f; LEDBuf3 = LEDMAP(3) & 0x0f; LEDBuf4 = LEDMAP(9) & 0x0f; LEDBuf5 = LEDMAP(8) & 0x0f; for(j=0; j30; j+) /*延時*/ DisplayLED(); /*顯示上面賦值數(shù)據(jù)*/ 如何讓數(shù)碼管由765432逐漸遞減到7654398,下面是主函數(shù)的編寫,循環(huán)的編寫,來滿足要求。void m

23、ain() 主函數(shù) unsigned char i=2; unsigned char m; unsigned char j; unsigned char n=3; unsigned char k=4; /*定義變量*/ CAddr = mode; while(1) LEDBuf0 = LEDMAP(m+7) & 0x0f; /*八段數(shù)碼管依次賦值*/ LEDBuf1 = LEDMAP(m+6) & 0x0f; LEDBuf2 = LEDMAP(m+5) & 0x0f; LEDBuf3 = LEDMAP(k) & 0x0f; i-; /*個位逐漸減1*/LEDBuf4 = LEDMAP(n) &

24、 0x0f; /*十位八段數(shù)碼管賦值*/ if(i=0) /*當(dāng)個位減小為0時,十位減1。同時給個 位賦值9*/n-; i=9; LEDBuf5 = LEDMAP(i) & 0x0f; if(n=0&i=1) /*當(dāng)十位個位同時減小到0時,百位減1; k-; 同時給個位和十位賦值9*/ i=9; n=9; for(j=0; j30; j+) DisplayLED(); /* 顯示該次循環(huán)所得數(shù)據(jù) */ if(k=3&i=8) /*當(dāng)減小到765398時,進去子程序display無限循環(huán)顯示 display(); 765398*/ 4.運行調(diào)試4.1軟件調(diào)試過程 點開軟件,進入程序編譯系統(tǒng)。點擊

25、菜單欄“項目”,選擇下拉框里面的“新項目”。如下圖4-1所示。 圖 4-1 新建項目 新建項目是要選擇“Atmel”下拉框中的“AT89C51”然后點擊確定。如下圖 圖4-2 目標(biāo)選擇設(shè)備 新建項目之后,需要點擊“新建一個文件”在項目目錄下新建程序編譯文件。之后點擊保存,需要注意的是保存時文檔名稱后面要加“.c”。如下圖。 圖4-3 新建程序編譯文件文件建好之后,就可以開始編寫程序了。編寫程序時注意減少不必要的編寫錯誤,注意語句后面的分號是否需要;每個程序段的前大括號和后大括號相對應(yīng)。這樣在編譯過程中能減少很多工作。 添加文件到組,編寫程序完成后。右鍵單擊源代碼組1。選擇添加文件到組“源代碼組

26、1”,出現(xiàn)如圖所示對話框,選擇剛建立的編譯程序文件到源代碼組1,完成添加。 圖 4-4 編譯重建目標(biāo)文編寫完程序添加到組之后開始調(diào)試,首先檢查程序是否有錯誤,單擊“編譯當(dāng)前文件”,如果輸出窗口中顯示沒有錯誤,那么接著單擊“重建所有目標(biāo)文件”;如果編譯過程中出現(xiàn)錯誤,那么需要按照輸出窗口中提示的錯誤改正之后再重建文件。圖 4-5 設(shè)置調(diào)試接口重建目標(biāo)文件之后需要先設(shè)置好通訊借口,計算機需要與硬件設(shè)備向通訊,需要設(shè)置合理的通訊方式。本調(diào)試中使用(U):Keil Monitor-51 driver,保護接口選擇Com3,波特率選用38400,其他默認(rèn)。 圖 4-6 啟動調(diào)試 通訊方式選擇后啟動調(diào)試,

27、單擊菜單欄中“啟動/停止調(diào)試(D)”開始調(diào)試。然后可選擇運行到指定位置來檢驗程序是否能正常運行。一直檢查無誤后,可直接點擊“運行”觀察實驗現(xiàn)象。4.2安裝調(diào)試及方法(1)P3.4連K1,P3.3連K2,P1.0P1.6分別連到L1L7,P1.7連SIN(電子音響輸入端)。(2)K1開關(guān)撥在上面,K2撥在上面。(3)用連續(xù)方式從起始地址0580H開始運行程序(輸入0580后按EXEC鍵),此時應(yīng)在等待開工狀態(tài)。(4)K1撥至下面(顯低電平),各道工序應(yīng)正常運行。(5)K2撥至下面(低電平),應(yīng)有聲音報警(人為設(shè)置故障)。(6)K2撥至上面(高電平),即排除故障,程序應(yīng)從剛才報警的那道工序繼續(xù)執(zhí)行

28、。4.3 結(jié)果分析實驗中延時的時間的計算為DELAY1t=20*125*200*12*2/12000000=1S;分別代表的含義為:20、125、200是循環(huán)的次數(shù)相乘,12代表一個指令周期為12個機器周期,2代表該指令周期為雙指令周期,12000000表示晶振的頻率,也是機器周期。在實驗中可以觀察到VL1VL7依次按照1秒間隔循環(huán)亮起。在故障出現(xiàn)時能夠保護現(xiàn)場,待故障消除后從現(xiàn)場又開始循環(huán)。數(shù)碼管上顯示出從765432開始以1/10秒的速度遞減至765398,并保持顯示此數(shù)。5.總結(jié) 通過本課程設(shè)計,我們大家對單片機的工作原理以及運用要求有了更進一步的了解,對我們的動手能力,編程能力都有很大

29、的幫助。這次課程設(shè)計的控制要求有兩個,一個是用七只發(fā)光二極管模擬工業(yè)控制中的7道工序,高電平點亮,每道工序用定時器進行工序間的順序轉(zhuǎn)換。另一個是在第一個的基礎(chǔ)上運用動態(tài)掃描和定時器1在數(shù)碼管上顯示出從765432開始以1/10秒的速度遞減至765398,并保持顯示此數(shù)。我們首先收集了大量的資料,查找有關(guān)集成芯片和器件的文獻,只有對各種元器件有了充分的了解之后我們在實際的操作才會更快。在完成第一個發(fā)光二極管的控制要求時,程序全部正確在走,硬件連接也全部正確,但是燈卻一直是全亮的,搞不懂怎么回事。把老師請來了才知道,是我們設(shè)置的燈的閃光時間太短,就是說燈是按照要求在點亮,但是由于點亮的速度太快,肉

30、眼分辨不出它是否熄滅過,看起來就像一直在亮。可見如果不對整個設(shè)計的每一個細(xì)節(jié)都了解的清清楚楚的話,哪怕你做對了,你都搞不懂這是怎么回事。這告訴我們,以后無論在工作還是在生活中,都要認(rèn)真對待每一個細(xì)節(jié),不能得過且過,不求甚解。在編程方面一直是我的弱項,好多程序我都搞不明白,這個時候我都會盡量去問同學(xué),在課程設(shè)計的過程中,同學(xué)之間的相互幫助是相當(dāng)重要的,有時自己的一個坎半天都過不去,但是說不定同學(xué)的一個點撥,我們就通了。所以,我們要學(xué)會團結(jié)協(xié)作,這樣,才會事半功倍。這次的課程設(shè)計教會我們的不止是專業(yè)知識,在生活道理上也教會了很多,讓我們終生受益。6.參考文獻1 李廣弟單片機基礎(chǔ)北京:北京航空航天大

31、學(xué),20092 李群芳微型計算機與接口技術(shù)北京:電子工業(yè)出版社,20123 單片機綜合仿真實驗系統(tǒng)Keil C實驗指導(dǎo)書深圳:深圳市雷邁特科技有限公司,20124 沈慶陽8051單片機實踐與應(yīng)用機電一體化系統(tǒng)設(shè)計北京:化學(xué)工業(yè)出版社,20095 朱定華單片微機原理與應(yīng)用北京:清華大學(xué)出版社,20067.附錄附錄1 程序清單工業(yè)順控#includesbit start = P34;sbit bell = P17;unsigned char bellcnt;unsigned int i;void Delay(unsigned int cnt);int main()P1 = 0xff;IT0 = 0

32、;/Enable EX0EX0 = 1;EA = 1;while(!start);while(1)P1 = 0xfe;Delay(1000);P1 = 0xfd;Delay(1000);P1 = 0xfb;Delay(1000);P1 = 0xf7;Delay(1000);P1 = 0xef;Delay(1000);P1 = 0xdf;Delay(1000);P1 = 0xbf;Delay(1000); void Delay(unsigned int cnt)unsigned char i; while (cnt- !=0) for (i=100; i !=0; i-);void int0()

33、 interrupt 0EA = 0;for(bellcnt = 0;bellcnt20;bellcnt+)bell = 1;Delay(2);bell = 0;Delay(2);EA = 1;數(shù)碼管顯示程序#include#define LEDLen 6#define mode 0x03;#define CAddr XBYTE0xe100/* 控制字地址 */#define OUTBIT XBYTE0xe101/* 位控制口 */#define CLK164 XBYTE0xe102/* 段控制口(接164時鐘位) */#define DAT164 XBYTE0xe102 /* 段控制口(接1

34、64數(shù)據(jù)位) */#define IN XBYTE0xe103 /* 鍵盤讀入口 */ unsigned char LEDBufLEDLen; /* 顯示緩沖 */code unsigned char LEDMAP = /* 八段管顯示碼 */ 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71;void Delay(unsigned char CNT) unsigned char i; while (CNT- !=0) for (i=100; i !=0;

35、 i-);void DisplayLED() unsigned char i, j; unsigned char Pos; unsigned char LED;Pos = 0x20; /* 從左邊開始顯示 */ for (i = 0; i LEDLen; i+) OUTBIT = 0; /* 關(guān)所有八段管 */ LED = LEDBufi; for (j = 0; j 8; j+) /*送164*/ if (LED & 0x80) DAT164 = 1; else DAT164 = 0; CLK164 = CLK164|0x02; CLK164 = CLK164&0xfd; LED = 1;

36、/* 顯示下一位 */ OUTBIT = 0; /* 關(guān)所有八段管 */ void display() while(1) unsigned char j; LEDBuf0 = LEDMAP(7) & 0x0f; LEDBuf1 = LEDMAP(6) & 0x0f; LEDBuf2 = LEDMAP(5) & 0x0f; LEDBuf3 = LEDMAP(3) & 0x0f; LEDBuf4 = LEDMAP(9) & 0x0f; LEDBuf5 = LEDMAP(8) & 0x0f; for(j=0; j30; j+) DisplayLED(); /* 延時 */ void main() u

37、nsigned char i=2; unsigned char m; unsigned char j; unsigned char n=3; unsigned char k=4; CAddr = mode; while(1) LEDBuf0 = LEDMAP(m+7) & 0x0f; LEDBuf1 = LEDMAP(m+6) & 0x0f; LEDBuf2 = LEDMAP(m+5) & 0x0f; LEDBuf3 = LEDMAP(k) & 0x0f; i-;LEDBuf4 = LEDMAP(n) & 0x0f; if(i=0) n-; i=9; LEDBuf5 = LEDMAP(i) & 0x0f; if(n=0&i=1) k-; i=9; n=9; for(j=0; j30; j+) DisplayLED(); /* 延時 */ if(k=3&i=8) display(); 附錄2實物照片(現(xiàn)場接線及調(diào)試顯示照片)課程設(shè)計成績評定表成績評定項 目比例得 分平時成績(百分制記分)30%業(yè)務(wù)考核成績(百分制記分)70%總評成績(百分制記分)100%評定等級優(yōu) 良 中 及格 不及格指導(dǎo)教師(簽名):20 年 月 日

展開閱讀全文
溫馨提示:
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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!