實(shí)驗(yàn)一:交通燈綜合控制new_第1頁(yè)
實(shí)驗(yàn)一:交通燈綜合控制new_第2頁(yè)
實(shí)驗(yàn)一:交通燈綜合控制new_第3頁(yè)
實(shí)驗(yàn)一:交通燈綜合控制new_第4頁(yè)
實(shí)驗(yàn)一:交通燈綜合控制new_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)驗(yàn)一:交通燈綜合控制一、實(shí)驗(yàn)原理1了解和掌握ICETEK-VC5416-AE 和CCS5000集成開發(fā)環(huán)境的使用方法。 2了解 TMS320VC5416DSP定時(shí)器的使用和編程。 3了解TMS320VC5416DSP外中斷的使用和編程。 二、實(shí)驗(yàn)設(shè)備計(jì)算機(jī),ICETEK-VC5416AE-S61實(shí)驗(yàn)箱。 三、實(shí)驗(yàn)原理1交通燈控制要求: 利用 ICETEK-S60實(shí)驗(yàn)箱提供的設(shè)備,設(shè)計(jì)模擬實(shí)際生活中十字路口交通燈控制的程序。要求如下: - 交通燈分紅黃綠三色,東、南、西、北各一組,用燈光信號(hào)實(shí)現(xiàn)對(duì)交通的控制:綠燈信號(hào)表示通行,黃燈表示警告,紅燈禁止通行,燈光閃爍表示信號(hào)即將改變。 - 計(jì)時(shí)顯示

2、:液晶屏幕上 88 點(diǎn)陣顯示 0-9 計(jì)數(shù)。 - 正常交通控制信號(hào)順序:正常交通燈信號(hào)自動(dòng)變換: 南北方向綠燈,東西紅燈(20 秒)。 南北方向綠燈閃爍。 南北方向黃燈。 南北方向紅燈,東西方向黃燈。 東西方向綠燈(20 秒)。 東西方向綠燈閃爍。 東西方向黃燈。 返回循環(huán)控制。 - 緊急情況處理:模仿緊急情況(重要車隊(duì)通過、急救車通過等)發(fā)生時(shí),交通警察手動(dòng)控制 當(dāng)任意方向通行剩余時(shí)間多于 10秒,將時(shí)間改成 10 秒。 正常變換到四面紅燈(20 秒)。 直接返回正常信號(hào)順序的下一個(gè)通行信號(hào)(跳過閃爍綠燈、黃燈狀態(tài))。 2交通燈模擬: 利用 ICETEK-CTR上的一組發(fā)光二極管(共 12

3、只,分為東西南北四組、紅黃綠三色)的亮滅實(shí)現(xiàn)交通信號(hào)的模擬。 3計(jì)時(shí)顯示:利用 ICETEK-CTR上的發(fā)光二極管顯示陣列模擬顯示。 4計(jì)時(shí): 使用 TMS320VC5416DSP片上定時(shí)器,定時(shí)產(chǎn)生時(shí)鐘計(jì)數(shù),再利用此計(jì)數(shù)對(duì)應(yīng)具體時(shí)間。 5緊急情況: 利用 ICETEK-CTR上鍵盤產(chǎn)生外中斷,中斷正常信號(hào)順序,模擬突發(fā)情況。 6程序設(shè)計(jì): 根據(jù)設(shè)計(jì)要求,由于控制是由不同的各種狀態(tài)按順序發(fā)生的,我們可以采用狀態(tài)機(jī)制控制方法來解決此問題。這種方法是:首先列舉所有可能發(fā)生的狀態(tài);然后將這些狀態(tài)編號(hào),按順序產(chǎn)生這些狀態(tài);狀態(tài)延續(xù)的時(shí)間用程序控制。對(duì)于突發(fā)情況,可采用在正常順序的控制中插入特殊控制序列

4、的方式完成。 時(shí)鐘計(jì)數(shù):采用 250ms 一次中斷進(jìn)行累加計(jì)數(shù)。 其中,正常順序每 112秒(計(jì)數(shù)值 448)為一個(gè)循環(huán),狀態(tài)“*”為非順序狀態(tài)。 這樣,只要根據(jù)計(jì)數(shù)值就可確定當(dāng)前狀態(tài),根據(jù)狀態(tài)再分情況處理。 對(duì)于計(jì)數(shù)顯示,當(dāng)處于狀態(tài) 1、5、*中時(shí)需要進(jìn)行倒計(jì)時(shí),需要計(jì)算在此狀態(tài)中的計(jì)數(shù)值增量,根據(jù)增量判斷是否更新計(jì)數(shù)顯示。 實(shí)驗(yàn)程序流程圖:四、實(shí)驗(yàn)步驟1實(shí)驗(yàn)準(zhǔn)備: 2設(shè)置 Code Composer Studio 2.21在硬件仿真(Emulator)方式下運(yùn)行: 3啟動(dòng) Code Composer Studio 2.21: 4打開工程文件: 5編譯并下載程序: 6運(yùn)行程序觀察結(jié)果:觀察交

5、通燈信號(hào)是否正常工作。 7突發(fā)事件控制: 在 ICETEK-CTR附帶的小鍵盤上按下除“Enter”鍵外的按鍵,觀察信號(hào)是否滿足要求。 8結(jié)束程序運(yùn)行退出。 在 ICETEK-CTR附帶的小鍵盤上按下“Enter”鍵。 9退出 CCS五、實(shí)驗(yàn)結(jié)果程序可以完成交通燈功能,順序循環(huán)工作。 在中斷信號(hào)到來后,進(jìn)入特殊過程:當(dāng)前計(jì)時(shí)如果大于 10改成 10,否則不變,等待狀態(tài) 切換;切換后進(jìn)入四面禁行狀態(tài),計(jì)數(shù) 20 秒后返回?cái)帱c(diǎn)后的通行(有兩方向是綠燈)狀態(tài)。 六、實(shí)驗(yàn)思考請(qǐng)考慮修改此實(shí)驗(yàn)程序完成:主路與人行橫道可由行人控制的交通信號(hào)控制。要求: 1平時(shí)為主路機(jī)動(dòng)車通行(綠燈)狀態(tài),人行橫道紅燈。

6、2行人需要通過人行橫道,按下交通燈控制按鈕。 根據(jù)情況處理: 如果機(jī)動(dòng)車剛剛恢復(fù)通行不超過 3 分鐘,行人需要等待 3分鐘計(jì)時(shí)滿。 否則行人等待 1 分鐘計(jì)時(shí)(從按下按鈕時(shí)起)。 3機(jī)動(dòng)車道綠燈閃爍。 4機(jī)動(dòng)車道黃燈。 5機(jī)動(dòng)車道紅燈,人行橫道綠燈,并開始計(jì)時(shí) 1 分鐘。 6人行橫道綠燈閃爍。 7人行橫道黃燈。 8返回第1步。main()int nWork1,nWork2,nWork3,nWork4,tKey;int nNowStatus,nOldStatus,nOldTimeCount,nSaveTimeCount,nSaveStatus;unsigned int nScanCode;nTi

7、meCount=0; bHold=0;uLightStatusEW=uLightStatusSN=0;nNowStatus=0; nOldStatus=1; nOldTimeCount=0;InitDSP();/ 初始化DSP,設(shè)置運(yùn)行速度InitICETEKCTR();/ 初始化顯示/控制模塊InitTimer();/ 設(shè)置定時(shí)器中斷/ 根據(jù)計(jì)時(shí)器計(jì)數(shù)切換狀態(tài)/ 根據(jù)狀態(tài)設(shè)置計(jì)數(shù)和交通燈狀態(tài)while ( 1 )if ( bHold & nNowStatus=statusHold )if ( nTimeCount=nStatusHold )nNowStatus=nSaveStatus;nTi

8、meCount=nSaveTimeCount;bHold=0;else if ( nTimeCountnStatusNSGreenEWRed )nNowStatus=statusNSGreenEWRed;else if ( nTimeCountnStatusNSFlashEWRed )nNowStatus=statusNSFlashEWRed;else if ( nTimeCountnStatusNSYellowEWRed )nNowStatus=statusNSYellowEWRed;else if ( nTimeCountnStatusNSRedEWYellow )nNowStatus=s

9、tatusNSRedEWYellow;else if ( nTimeCountnStatusNSRedEWGreen )nNowStatus=statusNSRedEWGreen;else if ( nTimeCountnStatusNSRedEWFlash )nNowStatus=statusNSRedEWFlash;else if ( nTimeCountnStatusNSRedEWYellow1 )nNowStatus=statusNSRedEWYellow;else if ( nTimeCount=0 & nWork20 & nWork30 & nWork40 )uLightStatu

10、sSN=( (nWork1%nWork3)=0 & nWork20 & nWork30 & nWork40 )uLightStatusEW=( (nWork1%nWork3)0 )nWork2=20-nTimeCount/nWork1;if ( bHold )if ( nWork210 )nTimeCount=nWork1*10;nWork2=10;if ( nOldTimeCount!=nWork2 )nOldTimeCount=nWork2;SetLEDArray(nWork2);break;case statusNSRedEWGreen:nWork1=(nStatusNSRedEWGre

11、en-nStatusNSRedEWYellow)/20;if ( nWork10 )nWork2=20-(nTimeCount-nStatusNSRedEWYellow)/nWork1;if ( bHold )if ( nWork210 )nTimeCount=nStatusNSRedEWYellow+nWork1*10;nWork2=10;if ( nOldTimeCount!=nWork2 )nOldTimeCount=nWork2;SetLEDArray(nWork2);break;case statusHold:nWork1=nStatusHold/20;if ( nWork10 )n

12、Work2=20-nTimeCount/nWork1;if ( nOldTimeCount!=nWork2 )nOldTimeCount=nWork2;SetLEDArray(nWork2);break;elseif ( bHold )nSaveStatus=nNowStatus;nSaveTimeCount=nTimeCount;nNowStatus=statusHold;nTimeCount=0;if ( nSaveStatus=statusNSFlashEWRed | nSaveStatus=statusNSYellowEWRed )nSaveStatus=statusNSRedEWGr

13、een;nSaveTimeCount=nStatusNSRedEWYellow;else if ( nSaveStatus=statusNSRedEWFlash | nSaveStatus=statusNSRedEWYellow )nSaveStatus=statusNSGreenEWRed;nSaveTimeCount=0;nOldStatus=nNowStatus;switch ( nNowStatus )case statusNSGreenEWRed:uLightStatusEW=0x24; uLightStatusSN=0x49;SetLEDArray(20);break;case s

14、tatusNSFlashEWRed:uLightStatusEW=0x24; uLightStatusSN=0x49;SetLEDArray(0);break;case statusNSYellowEWRed:uLightStatusEW=0x24; uLightStatusSN=0x52;SetLEDArray(20);break;case statusNSRedEWYellow:uLightStatusEW=0x12; uLightStatusSN=0x64;SetLEDArray(20);break;case statusNSRedEWGreen:uLightStatusEW=0x09; uLightStatusSN=0x64;SetLEDArray(20);break;case statusNSRedEWFlash:uLightStatusEW=0x09; uLightStatusSN=0x64;SetLEDArray(0);break;case statusHold:uLightStatusEW=0x24; uLightS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論