嵌入式課程設(shè)計-電梯控制系統(tǒng)_第1頁
嵌入式課程設(shè)計-電梯控制系統(tǒng)_第2頁
嵌入式課程設(shè)計-電梯控制系統(tǒng)_第3頁
嵌入式課程設(shè)計-電梯控制系統(tǒng)_第4頁
嵌入式課程設(shè)計-電梯控制系統(tǒng)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上軟 件 學 院課程設(shè)計報告書課程名稱 嵌入式系統(tǒng) 設(shè)計題目 模擬電梯控制系統(tǒng) 專業(yè)班級 學 號 姓 名 指導教師 2014年 6 月目錄1設(shè)計時間.12設(shè)計目的.13設(shè)計任務(wù).14設(shè)計內(nèi)容.14.1總體方案設(shè)計.14.1.1需求規(guī)定.24.1.2核心部件選型.34.1.3系統(tǒng)開發(fā)環(huán)境.44.2硬件設(shè)計.44.2.1硬件開發(fā)環(huán)境簡介.44.2.2硬件模塊設(shè)計.44.3軟件設(shè)計.64.3.1軟件開發(fā)環(huán)境介紹.64.3.2主程序設(shè)計及流程圖.74.3.3中斷程序設(shè)計及流程圖.74.3.4軟件設(shè)計.85總結(jié).10參考文獻.11專心-專注-專業(yè)1 設(shè)計時間 2014年6月16日

2、-2014年6月23日2 設(shè)計目的本課程設(shè)計是學習嵌入式系統(tǒng)課程后必要的實踐教學環(huán)節(jié)。是檢驗學生是否掌握相關(guān)專業(yè)課程知識的重要手段,以學生為主體,充分調(diào)動學生的積極性和創(chuàng)造性,重視學生實際動手能力的培養(yǎng)。課程設(shè)計通過使學生加深理解、鞏固課堂教學和平時實驗內(nèi)容。本次課程設(shè)計師利用嵌入式系統(tǒng)所學的知識,設(shè)計一個模擬電梯控制系統(tǒng)。3 設(shè)計任務(wù)模擬電梯系統(tǒng)的設(shè)計要求如下:(1)通過鍵盤輸入層數(shù),輸入之后LED小燈從當前位置向上或向下運行。(2)運行到對應(yīng)的樓層,數(shù)碼管顯示樓層號。(3)LED燈表示運行樓層。(4)數(shù)碼管數(shù)字大小的增減表示向上、向下。4 設(shè)計內(nèi)容本文根據(jù)AT89S51單片機,利用鍵盤、開

3、關(guān)、數(shù)碼管和LED模擬實現(xiàn)八層電梯的控制。并且有像電梯的運行功能。軟件利用C語言,通過檢測用戶請求的按鍵信息,通過鍵盤輸入層數(shù),輸入之后LED小燈從當前位置向上或向下運行,運行到對應(yīng)的樓層,數(shù)碼管顯示樓層號,LED燈表示運行樓層,數(shù)碼管數(shù)字大小的增減表示向上、向下。硬件設(shè)計簡單可靠,結(jié)合軟件,基本實現(xiàn)了八層電梯運行的模擬。4.1 總體方案設(shè)計通過使用電腦的軟件,我們很方便的就可以通過電腦AT89S51單片機進行對其的控制,然后并完成對LED燈,矩陣鍵盤,和顯示器的控制。當按了電梯相應(yīng)的層數(shù)時,小燈從當前位置上升或下降的過程,同時數(shù)碼管顯示相應(yīng)的電梯層數(shù),模擬電梯的運動過程。步進電梯功能模塊圖如

4、圖4-1所示。電梯功能模塊按鍵輸入模塊八段數(shù)碼管模塊中端服務(wù)模塊LED顯示模塊圖4-1 步進電梯功能模塊圖4.1.1 需求規(guī)定用鍵盤、按鈕、八段碼和LED模擬電梯工作過程。樓層設(shè)為8層,鍵盤數(shù)字鍵18用來鍵入希望停的樓層,8個LED顯示希望停的樓層,八段碼指示電梯當前所在樓層,按扭用來啟、停電梯。電梯正常運行時以每2秒1層的速度上升或下降。要求“電梯”能按以下方式運行: (1)設(shè)當前電梯停在某層(八段碼顯示相應(yīng)樓層,8個LED全滅)。鍵入18數(shù)字鍵,如鍵入的數(shù)字與當前電梯停層同,則不發(fā)生任何動作;若不同則相應(yīng)樓層的LED亮。如再按運行鍵,則電梯自動判別上升或下降(在運行過程中八段碼顯

5、示樓層變化)一直到達希望停的樓層(八段碼顯示該樓層,相應(yīng)LED滅);(2)設(shè)當前電梯正在上升或下降運行(此時八段碼顯示樓層變化,LED指示希望抵達的樓層),若鍵入新的希望停的樓層數(shù)字(相應(yīng)的LED亮),則對同方向(上升或下降)未到的樓層能停,對其他情況則先停原希望停的樓層,然后按運行鍵后繼續(xù)進行)。 如下幾例: a)設(shè)電梯當前在2層,向上運行,LED指示希望在6層停,此時若鍵入4,則電梯將在4層停;若再按運行鍵,則繼續(xù)運行至6層停。 b)同上情況,若鍵入的不是4而是8,則電梯將先停在6層;再按運行鍵,運行至8層停。 c)同上情況,若鍵入的不是4(或8),

6、而是1,則電梯先停在6層;再按運行鍵,運行至1層停。 電梯狀態(tài)的介紹:1.當電梯主體由低樓層向高樓層運動時,稱為上升狀態(tài)。 2.當電梯主體由高樓層向低樓層運動時,稱為下降狀態(tài)。 3.當電梯主體到達了某個乘客所希望到達的樓層(以下簡稱目標樓層)后,在系統(tǒng)中仍然有使用它的請求存在,稱為暫停狀態(tài)。 4.當電梯主體到達目標樓層后,在系統(tǒng)再也沒有使用它的請求存在,稱為停止狀態(tài)。5.當乘客進入電梯主體后,使用梯內(nèi)控制器向系統(tǒng)發(fā)送到達其它樓層的請求時,稱為樓層請求發(fā)送狀態(tài)。 6.當電梯正在運行時,產(chǎn)生了停電條件,此時稱為停電狀態(tài)。 4.1.2核心部

7、件選型1.AT89S51 AT89S51是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案。AT89S51具有如下特點:40個引腳,4k Bytes Flash片內(nèi)程序存儲器,128 bytes的隨機存取數(shù)據(jù)存儲器(RAM),32個

8、外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時鐘振蕩器。 此外,AT89S51設(shè)計和配置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式??臻e模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復位。同時該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。 4.1.3系統(tǒng)開發(fā)環(huán)境開發(fā)環(huán)境搭建步驟:1、根據(jù)需求確定開發(fā)工具。2、認識并了解開發(fā)板。3、根據(jù)項目要求,配置嵌入式操作系統(tǒng)。4

9、、配置主機環(huán)境:安裝LINUX。5、在主機上制作交叉工具鏈,制作調(diào)試器GDB。6、使用制作好的交叉工具鏈在主機上對BootLoader進行交叉編譯,形成可執(zhí)行的BootLoader鏡像文件,通過FLASH編程器把該BootLoader鏡像文件燒寫到目標板上的FLASH中。7、在主機上配置串口終端,使用串口線,連接主機和目標板的串口。8、在主機上進行應(yīng)用程序源代碼編寫。然后在主機上進行源代碼的編寫。然后在主機上通過交叉編譯,形成可執(zhí)行程序。把該可執(zhí)行程序下載到目標板上,然后在目標板上啟動該程序。4.2硬件設(shè)計4.2.1硬件開發(fā)環(huán)境簡介EELiod270教學開發(fā)平臺基于Intel XSCALE架構(gòu)

10、最新的PXA270嵌入式微處理器。最高主頻可達520MHz,可運行Linux 和Linux 2.6.11的Linux的操作系統(tǒng),支持Tiny-X、QT/E等GUI嵌入式圖形用戶界面,提供完整的驅(qū)動和應(yīng)用程序。同時還可以支持最新的Windows CE 5.0.NET操作系統(tǒng)。4.2.2硬件模塊設(shè)計1.按鍵輸入模塊電路圖如圖4-2所示。圖4-2 按鍵輸入模塊電路圖2. 數(shù)碼管模塊圖如圖4-3所示。圖4-3 八段數(shù)碼管電路圖3. LED顯示模塊圖如圖4-4所示。圖4-4 LED顯示模塊電路圖4.3軟件設(shè)計4.3.1軟件開發(fā)環(huán)境介紹ADS集成開發(fā)環(huán)境是ARM公司推出的ARM核微控制器集成開發(fā)工具,英文

11、成熟版本為ADS1.2。ADS1.2支持ARM10之前的所有ARM系列微控制器,可以在Windows98、Windows XP、Windows2000以及RedHat Linux上運行。全稱為ARM Developer Suite,他的功能非常強大。他的前身是SDT,SDT是ARM公司幾年前的開發(fā)環(huán)境,目前SDT早已經(jīng)不再升級。ADS包括了四個模塊分別是:SIMULATOR;C ;應(yīng)用函數(shù)庫。ADS的調(diào)試器較SDT都有了非常大的改觀, ADS1.2提供完整的WINDOWS界面開發(fā)環(huán)境。C效率極高,支持c 以及c+,使工程師可以很方便的使用C語言進行開發(fā)。提供模擬仿真功能,使沒有Emulator

12、s的學習者也能夠熟悉ARM的指令系統(tǒng)。配合FFT-ICE使用,ADS1.2提供強大的跟蹤功能,片內(nèi)運行情況盡在掌握。ADS1.2需要硬件支持才能發(fā)揮強大功能。目前支持的硬件有Multi-ICE以及兼容Multi-ICE的調(diào)試工具如FFT-ICE。ADS由命令行開發(fā)工具,ARM實時庫,GUI開發(fā)環(huán)境(Code Warrior和AXD),適用程序和支持組成。4.3.2主程序設(shè)計及流程圖主程序流程圖如圖4-5所示。圖4-5 主程序流程圖4.3.3中斷程序設(shè)計及流程圖判斷中斷服務(wù)子程序流程圖如圖4-6所示。圖4-6 判斷中斷服務(wù)子程序流程圖 軟件方面主要是應(yīng)用了USB下載驅(qū)動軟件和STCISP下載軟件

13、以及keil開發(fā)軟件。USB下載驅(qū)動軟件的下載,主要是記住com借口,燒寫程序時要選擇要燒寫的端口,STCISP下載軟件主要是程序的編寫及編譯等,而keil開發(fā)軟件主要將程序燒進開發(fā)板,使開發(fā)板實現(xiàn)想要的結(jié)果。4.3.4軟件設(shè)計#include<reg52.h> unsigned char code dofly_table8=0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80; void DelayUs2x(unsigned int t) while(-t);/樓層變換延時void DelayMs(unsigned char t) while(t-) D

14、elayUs2x(245); DelayUs2x(245); /按鍵延時函數(shù)void show(unsigned int i)P0=dofly_tablei-1; /數(shù)碼管P1=(0xff<<(i-1)-1; /LED燈/數(shù)碼管與LED燈的顯示函數(shù)unsigned int getKey()switch(P3)case 0xfe:return 1;break;case 0xfd:return 2;break;case 0xfb:return 3;break;case 0xf7:return 4;break;case 0xef:return 5;break;case 0xdf:retu

15、rn 6;break;case 0xbf:return 7;break;case 0x7f:return 8;break; /讀取按鍵的值void main() unsigned int i=1,j=1; /j表示要到的樓層,i表示目前在的樓層show(i);while(1)if(P3!=0xff)DelayMs(10);if(P3!=0xff)j=getKey();for(;i!=j;(i>j)?(i-):(i+) show(i);DelayUs2x(60000); show(i);DelayUs2x(60000);5總結(jié)與展望這次課程設(shè)計,是我們第一次自己動手使用開發(fā)板做設(shè)計,從開始

16、的遇到很多問題到最后的逐一解決,在這個過程中,我們學到了很多課本上學不到的東西,通過自己動手實踐,自己覺得將以前學的知識有了更深刻的認識,并且有很多之前不了解的東西也通過請教同學和自己查資料得到了想要的答案,在這樣的過程中,感覺自己提高了很多。當然設(shè)計中還遇到了一些問題,比如:當輸入的樓層有多個時,因為緩存數(shù)組只有八個,所以會有丟失數(shù)據(jù)的現(xiàn)象。后來請教同學得到了正確的解決辦法:緩存用鏈表來存數(shù)據(jù),這樣既可以避免數(shù)據(jù)丟失,而且在用完一個數(shù)據(jù)后可以及時釋放,避免了空間的浪費。自己做的東西在開發(fā)板上運行出來的時候,像是將抽象的知識具體化了,使我們對自己做的題目的實現(xiàn)過程認識的更加深刻。此外,雖然做到了題目要求的功能,但是還遠遠不夠,程序還是可以改進的更完善。通過這次課程設(shè)計,是我們體會到自己動手才能真

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論