汽車燈單片機(jī)課程設(shè)計(jì)_第1頁
汽車燈單片機(jī)課程設(shè)計(jì)_第2頁
汽車燈單片機(jī)課程設(shè)計(jì)_第3頁
汽車燈單片機(jī)課程設(shè)計(jì)_第4頁
汽車燈單片機(jī)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)原理及系統(tǒng)課程設(shè)計(jì)專 業(yè): 電氣工程及其自動(dòng)化 班 級(jí): 電氣1004班 姓 名: 王英帥 學(xué) 號(hào): 201009341 指導(dǎo)教師: 任麗苗 評(píng)語:平時(shí)(40)修改(30)報(bào)告(30)總成績蘭州交通大學(xué)自動(dòng)化與電氣工程學(xué)院2013年3月7日摘要,基于單片機(jī)的工作原理,以八路搶答器為理念,制作廣泛搶答按扭優(yōu)先編碼電路鎖存器譯碼電路譯碼顯示主持人控制開關(guān)控制電路報(bào)警電路主持人斷開控制開關(guān)搶答無效報(bào)警電路顯示電路1引 言本設(shè)計(jì)的設(shè)計(jì)內(nèi)容是:基于單片機(jī)的汽車燈控制系統(tǒng)的設(shè)計(jì)。模擬汽車在駕駛中的左轉(zhuǎn)彎、右轉(zhuǎn)彎、剎車、合緊急開關(guān)、??康炔僮?。在左轉(zhuǎn)彎或右轉(zhuǎn)彎時(shí),通過轉(zhuǎn)彎操作桿使左轉(zhuǎn)彎或右轉(zhuǎn)彎開關(guān)合上

2、,從而使左頭信號(hào)燈、儀表板的左轉(zhuǎn)彎燈、左尾信號(hào)燈或右頭信號(hào)燈、儀表板的右轉(zhuǎn)彎信號(hào)燈、右尾信號(hào)燈閃爍;閉合緊急開關(guān)時(shí)以上六個(gè)信號(hào)燈全部閃爍;汽車剎車時(shí),左右兩個(gè)尾信號(hào)燈點(diǎn)亮;若正當(dāng)轉(zhuǎn)彎時(shí)剎車,則轉(zhuǎn)彎時(shí)原閃爍的信號(hào)燈應(yīng)繼續(xù)閃爍,同時(shí)另一個(gè)尾信號(hào)燈點(diǎn)亮,以上閃爍的信號(hào)燈以1hz頻率慢速閃爍;在汽車??块_關(guān)合上時(shí)左頭信號(hào)燈、右頭信號(hào)燈、左尾信號(hào)燈、右尾信號(hào)燈以10hz頻率快速閃爍。任何在下表中未出現(xiàn)的組合,都將出現(xiàn)故障指示燈閃爍,閃爍頻率為10hz。2設(shè)計(jì)方案及原理2.1系統(tǒng)硬件設(shè)計(jì)概述該設(shè)計(jì)方案中,選用atmel公司的8位通用單片機(jī)at89c51,讓其p0口為系統(tǒng)的輸入端口,輸入信號(hào)由開關(guān)的通斷產(chǎn)生

3、,而p1口為系統(tǒng)的輸出端口,輸出給7個(gè)led指示燈。同時(shí),本設(shè)計(jì)中將剎車輸入信號(hào)以中斷的方式進(jìn)行輸入,這樣在一定程度上就保證了諸如剎車這種緊急情況下實(shí)時(shí)性較高的需要。詳細(xì)的硬件設(shè)計(jì)方案見后續(xù)章節(jié)。2.2系統(tǒng)軟件設(shè)計(jì)概述根據(jù)系統(tǒng)的設(shè)計(jì)需要,為滿足系統(tǒng)實(shí)時(shí)性的需求,我們把剎車信號(hào)處理成外部中斷0的形式,其他輸入信號(hào)以普通的輸入信號(hào)進(jìn)行輸入,cpu以輪詢的方式對(duì)它們進(jìn)行查詢。若cpu發(fā)現(xiàn)有輸入信號(hào)的組合是所期望輸入信號(hào)組合的任何一組時(shí),則驅(qū)動(dòng)相應(yīng)的指示燈發(fā)出相應(yīng)的指示情況。詳細(xì)的軟件設(shè)計(jì)方案見后續(xù)章節(jié)。3硬件設(shè)計(jì)3.1 硬件設(shè)計(jì)方案 如前所述,在該設(shè)計(jì)方案中,選用atmel公司的8位通用單片機(jī)at8

4、9c51,讓其p0口為系統(tǒng)的輸入端口,輸入信號(hào)由開關(guān)的通斷產(chǎn)生,其中,p0.0為左轉(zhuǎn)彎開關(guān),p0.1為右轉(zhuǎn)彎開關(guān),p0.2為緊急開關(guān),p0.3為??块_關(guān)。p1口為系統(tǒng)的輸出端口,輸出給7個(gè)led指示燈。其中,p1.0到p1.2引腳分別連接汽車的左轉(zhuǎn)彎燈、左頭燈和左尾燈,為便于區(qū)分,這三個(gè)燈均用黃燈表示;p1.3到p1.5引腳分別連接汽車的右轉(zhuǎn)彎燈、右頭燈和右尾燈;p1.6引腳連接汽車的故障指示燈。同時(shí),本設(shè)計(jì)中將剎車輸入信號(hào)以外部中斷0的方式進(jìn)行輸入,這樣在一定程度上就保證了諸如剎車這種緊急情況下實(shí)時(shí)性較高的需要。3.2 硬件設(shè)計(jì)原理圖在proteus仿真環(huán)境下所搭建的系統(tǒng)硬件電路圖如圖3.1

5、所示。圖3.1 系統(tǒng)硬件原理圖4 軟件設(shè)計(jì)4.1 軟件設(shè)計(jì)方案根據(jù)設(shè)計(jì)要求,我們把左轉(zhuǎn)彎信號(hào)輸入、右轉(zhuǎn)彎信號(hào)輸入、緊急信號(hào)輸入和??啃盘?hào)輸入當(dāng)做普通的信號(hào)輸入給單片機(jī)進(jìn)行處理,此時(shí)cpu采用輪詢的方式對(duì)各個(gè)信號(hào)的組合方式逐個(gè)地進(jìn)行排查:若cpu發(fā)現(xiàn)有有效的信號(hào)輸入,則驅(qū)動(dòng)相應(yīng)指示燈進(jìn)行相應(yīng)的顯示,若發(fā)現(xiàn)有無效的信號(hào)輸入,則驅(qū)動(dòng)故障指示燈閃爍,若上述情況都未發(fā)生,則cpu繼續(xù)輪詢排查各個(gè)輸入信號(hào)的組合,直到有信號(hào)輸入。由于剎車信號(hào)是一種很緊急的信號(hào),故此處將剎車信號(hào)處理成外部中斷信號(hào)進(jìn)行輸入,以保證實(shí)時(shí)性,將損失降低到最小。此時(shí)cpu正在執(zhí)行主程序(即cpu正以輪詢的方式排查各輸入信號(hào)的組合),

6、當(dāng)有剎車信號(hào)輸入時(shí),程序立即轉(zhuǎn)向中斷服務(wù)程序去處理,其中包含著與剎車有關(guān)的各個(gè)有效信號(hào)的組合,當(dāng)輸入信號(hào)的組合有效時(shí),則發(fā)出相應(yīng)的動(dòng)作,若輸入無效信號(hào)時(shí),則故障指示燈閃爍??紤]到一般剎車之后都需要重新啟動(dòng)汽車及整個(gè)汽車的控制系統(tǒng),我們把當(dāng)系統(tǒng)進(jìn)入到中斷時(shí)的各個(gè)有效狀態(tài)人為地設(shè)置為重復(fù)等待狀態(tài),直到系統(tǒng)重新上電復(fù)位之后,又恢復(fù)到正常的等待狀態(tài)。4.2 系統(tǒng)設(shè)計(jì)流程圖4.2.1 主程序流程圖在主程序中,首先將輸出端口與清零,以免對(duì)后續(xù)的程序執(zhí)行結(jié)果產(chǎn)生錯(cuò)誤的影響。片內(nèi)存儲(chǔ)單元30h、31h和32h分別用來當(dāng)做左轉(zhuǎn)彎、右轉(zhuǎn)彎、緊急開關(guān)是否閉合的標(biāo)志存儲(chǔ)器,若有相應(yīng)的信號(hào)出現(xiàn)時(shí),則相應(yīng)的標(biāo)志存儲(chǔ)器置為

7、#ffh,否則,相應(yīng)的標(biāo)志存儲(chǔ)器清零。設(shè)置這三個(gè)標(biāo)志存儲(chǔ)器的目的是為了當(dāng)有剎車中斷產(chǎn)生是,便于cpu辨認(rèn)是否在剎車的情況下有左轉(zhuǎn)彎、右轉(zhuǎn)彎或者是緊急開關(guān)閉合。為了能夠使系統(tǒng)在汽車處于運(yùn)行狀態(tài)下連續(xù)可靠地工作,主程序采用循環(huán)掃描,即輪詢的方式工作。主程序流程圖如圖4.1所示。4.2.2 中斷程序流程圖在中斷服務(wù)程序中,首先同主程序一樣,先將輸出口清零,以免影響后續(xù)程序執(zhí)行結(jié)果。緊接著,程序通過一級(jí)一級(jí)的判斷與排查,看是否有與題中所給出的信號(hào)組合相符的信號(hào)組合出現(xiàn),若出現(xiàn)了,則相應(yīng)的指示燈要出現(xiàn)相應(yīng)的動(dòng)作,并進(jìn)入循環(huán)執(zhí)行的狀態(tài),直到系統(tǒng)從剎車狀態(tài)中解除出來,重新上電復(fù)位后,又重頭開始執(zhí)行程序;否則

8、,故障指示燈顯示。中斷程序流程圖如圖4.2所示。圖4.1 主程序流程圖圖4.2 中斷程序流程圖5總 結(jié)經(jīng)過將近一周時(shí)間的單片機(jī)課程設(shè)計(jì),我又重新溫習(xí)回顧了有關(guān)8051單片機(jī)的基本結(jié)構(gòu)和一些基本的指令,并進(jìn)一步加深了用單片機(jī)進(jìn)行整個(gè)系統(tǒng)硬件和程序設(shè)計(jì)的方法與步驟,鞏固了利用單片機(jī)進(jìn)行系統(tǒng)軟件設(shè)計(jì)時(shí)的一些技巧與方法。就本次所選的設(shè)計(jì)題目而言,我在設(shè)計(jì)的過程中,首先通過仔細(xì)分析題目,來找到解決問題的突破口,這一步對(duì)于后續(xù)過程的設(shè)計(jì)具有指導(dǎo)意義。其次,根據(jù)所分析的結(jié)果,綜合考慮各種必要條件后,設(shè)計(jì)出了系統(tǒng)的硬件電路圖。接著,進(jìn)行系統(tǒng)的軟件設(shè)計(jì),這一步需要詳細(xì)分析題中各種情況之間的邏輯關(guān)系與其自身的要求

9、,還要綜合考慮到實(shí)際情況的需要。在搞清楚這些關(guān)系之后,為系統(tǒng)編寫匯編程序源代碼。然后,在keilc應(yīng)用軟件環(huán)境下,對(duì)匯編源代碼進(jìn)行編譯、匯編與連接,并將生成的可執(zhí)行文件與硬件系統(tǒng)相關(guān)聯(lián),最后在proteus仿真環(huán)境下進(jìn)行仿真,調(diào)試仿真結(jié)果是否正確。通過此次課程設(shè)計(jì),我復(fù)習(xí)掌握了不僅有關(guān)單片機(jī)的知識(shí),還收獲了一些有關(guān)論文寫作規(guī)范的要求,這讓我受益匪淺。參考文獻(xiàn)1 李華,王思明,張金敏.單片機(jī)原理及應(yīng)用m.蘭州:蘭州大學(xué)出版社,2001.5.2 徐愛均.單片機(jī)原理實(shí)用教程-基于proteus虛擬仿真m.北京:電子工業(yè)出版社,2009.1.3 李廣弟.單片機(jī)基礎(chǔ)m.北京:北京航空航天大學(xué)出版社,19

10、94.4 房小翠.單片機(jī)實(shí)用系統(tǒng)設(shè)計(jì)技術(shù)m.北京:國防工業(yè)出版社,1999.5 胡漢才.單片機(jī)原理及接口技術(shù).清華大學(xué)出版社,1995.附 錄org0000hljmpmainorg0003hljmpintrt0main:movp1,#00h ;輸出口清0mov30h,#00h ;標(biāo)志清0mov31h,#00h ;mov32h,#00h ;setbex0setbeahp1:mova,p0 ;左轉(zhuǎn)判斷clrcsubba,#01hjzzzwjnzjx1zzw:mov30h,#0ffh ;左轉(zhuǎn)指示ss1:movp1,#07hlcalldelay1movp1,#00hlcalldelay1sjmphp1

11、jx1:mov30h,#00hhp2:clrc ;右轉(zhuǎn)判斷mova,p0subba,#02hjzyzwjnzjx2yzw:mov31h,#0ffh ;右轉(zhuǎn)指示ss2:movp1,#38hlcalldelay1movp1,#00hlcalldelay1sjmphp2jx2:mov31h,#00h ;合緊急開關(guān)判斷hp3:clrcmova,p0subba,#04hjzhjjjnzjx3hjj:mov32h,#0ffh ;合緊急開關(guān)指示ss3:movp1,#3fhlcalldelay1movp1,#00hlcalldelay1sjmphp3jx3:mov32h,#00hhp4:clrc ;合??块_關(guān)

12、判斷mova,p0subba,#08hjztkjnzjx4tk:movp1,#36h ;合??块_關(guān)指示lcalldelay10movp1,#00hlcalldelay10sjmphp4jx4:clrc ;有無輸入判斷mova,p0jztzclrc ;左轉(zhuǎn)判斷mova,p0subba,#01hjztzclrc ;右轉(zhuǎn)判斷mova,p0subba,#02hjztzclrc ;合緊急開關(guān)判斷mova,p0subba,#04hjztzclrc ;合??块_關(guān)判斷mova,p0subba,#08hjztzajmpgzgz:movp1,#40h ;故障指示lcalldelay10movp1,#00hlcal

13、ldelay10ajmpjx4tz:ajmpmain ;返回繼續(xù)intrt0:clrea ;關(guān)中斷movp1,#00hclrc ;左轉(zhuǎn)判斷mova,30hsubba,#0ffhjzzzsclrc ;右轉(zhuǎn)判斷mova,31hsubba,#0ffhjzyzspsc:mova,p0 ;剎車判斷jzscjnzgz1sc:movp1,#24hclrc ;剎車合緊急開關(guān)判斷mova,p0subba,#04hjzhjssjmpscgz1:movp1,#40h ;故障指示lcalldelay10movp1,#00hlcalldelay10sjmpgz1zzs:clrc ;左轉(zhuǎn)彎剎車合緊急開關(guān)判斷mova,p0

14、subba,#05hjzzsjzs:movp1,#27h ;左轉(zhuǎn)彎剎車指示lcalldelay1movp1,#00hsetbp1.5lcalldelay1sjmpzzszsj:movp1,#3fh ;左轉(zhuǎn)彎剎車合緊急開關(guān)指示lcalldelay1movp1,#00hsetbp1.5lcalldelay1sjmpzsjyzs:clrc ;右轉(zhuǎn)彎剎車合緊急開關(guān)判斷mova,p0subba,#06hjzysjys:movp1,#3ch ;右轉(zhuǎn)彎剎車指示lcalldelay1movp1,#00hsetbp1.2lcalldelay1sjmpyzsysj:movp1,#3fh ;右轉(zhuǎn)彎剎車合緊急開關(guān)指示lcalldelay1movp1,#00hsetbp1.2lcalldelay1sjmpysjhjs:movp1,#3fh ;剎車

溫馨提示

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

評(píng)論

0/150

提交評(píng)論