單片機課程設計單片機汽車轉向信號燈設計_第1頁
單片機課程設計單片機汽車轉向信號燈設計_第2頁
單片機課程設計單片機汽車轉向信號燈設計_第3頁
單片機課程設計單片機汽車轉向信號燈設計_第4頁
單片機課程設計單片機汽車轉向信號燈設計_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、單片機課程設計題 目:汽車轉向信號燈設計 班 級: 姓 名: 學 號: 指導教師: 設計時間: 評語:成績 目 錄1引言32設計方案及原理42.1設計方案42.2設計原理:52.2.1 開關狀態(tài)檢測62.2.2 輸出控制62.2.3 定時器和計數器62.2.4 定時初始化82.2.5 汽車轉向燈顯示92.2.6 汽車轉向燈控制92.2.7 中斷系統(tǒng)103.硬件設計103.1 單片機控制系統(tǒng)電路圖103.1.1汽車轉向燈單片機控制系統(tǒng)框圖103.1.2汽車轉向燈單片機控制系統(tǒng)電路圖123.2 汽車轉向燈控制系統(tǒng)流程圖123.2.1 汽車轉向燈控制系統(tǒng)主程序流程圖123.2.2 中斷服務程序流程圖

2、133.2.3控制系統(tǒng)鍵功能流程圖144.軟件設計144.1 程序流程圖154.2 源程序185總結206參考文獻22 1引言隨著單片機的日益發(fā)展,其應用也越來越廣泛,通過對“汽車轉向燈單片機控制系統(tǒng)”設計,可以對單片機的知識得到鞏固和擴展。本課程內容是設計一個單片機控制系統(tǒng),在汽車進行左轉彎、右轉彎、剎車、合緊急開關、??康炔僮鲿r,實現對各種信號指示燈的控制。本設計主要是對單片機的并行輸入/輸出口電路的應用,通過i/o口控制發(fā)光二極管的亮滅閃爍,加上一些復位電路按鍵電路驅動電路來模擬汽車尾燈的功能。汽車在駕駛時有左轉彎、右轉彎、剎車、合緊急開關、??康炔僮鳌T谧筠D彎或右轉彎時,通過轉彎操作桿

3、應使左轉開關或右轉開關合上,從而使左頭燈、儀表板左轉彎燈、左尾燈或右頭燈、儀表板右轉彎燈、右尾燈閃爍;合緊急開關時要求前面所述的6個信號燈全部閃爍;汽車剎車時,兩個尾燈點亮;如正當轉彎時剎車,則轉彎時原應閃爍的信號燈仍應閃爍。以上閃爍,都是頻率為1hz的低頻閃爍;在汽車??慷?块_關合上時,左頭燈、右頭燈、左尾燈、右尾燈按頻率為10hz的高頻閃爍。閃光器是通過調節(jié)鎳鉻絲的拉力和觸點的間隙來滿足頻率要求的,燈泡功率的大小也會影響閃爍頻率。因此在更換閃光器或燈泡時調整比較困難。同時,系統(tǒng)沒有故檢測,駕駛員無法知道車外的轉向燈及示寬燈是否點亮,從而影響行車安全。到目前為止,我們還沒有發(fā)現能檢測燈絲斷

4、這種故障的有效方法。針對上述問題,我們用at89c51單片機設計了一套汽車信號燈控制系統(tǒng)。用led產生閃光信號,同時能自動檢測信號燈故障。信號燈燈具的發(fā)展是隨著汽車制造技術及電光源技術的發(fā)展而逐步完善的。它經歷了機油(或煤油)燈、乙炔氣燈到電光源燈的發(fā)展歷程?,F代汽車信號燈燈具已經開始使用發(fā)光二極管(led)技術以及光導技術。2設計方案及原理2.1設計方案:如圖2.1所示,汽車轉向燈主要有單片機、按鍵、復位、時鐘、電源、故障檢測電路、led顯示電路組成最基本的單片機系統(tǒng)。單片機本身的功能強大,汽車轉向燈的驅動用單片機本身的驅動來驅動。使得單片機的功能得到充分的運用。本方案的故障檢測電路具有故障

5、監(jiān)控性能,他能提高系統(tǒng)的可靠性。at89c51按鍵電路時鐘電路復位電路電源電路led顯示電路故障檢測電路圖2.1汽車轉向燈控制系統(tǒng)硬件構成2.2設計原理:由定時器/計數器與中斷系統(tǒng)的聯合組成控制系統(tǒng)的工作原理。如汽車上有一個轉彎控制桿,其中有三個位置:中間位置,汽車不轉彎;向上,汽車左轉;向下汽車右轉。轉彎時,規(guī)定左右尾燈、左右頭燈儀表板上2個指示燈相應地發(fā)出閃爍信號。應急開關合上時,6個信號燈都應閃爍。汽車剎車時,2個尾燈發(fā)出不閃爍信號。如正當轉彎時剎車,轉彎時原應閃爍的信號仍應閃爍。它們都是頻率為1hz低頻閃爍,在汽車??慷?块_關合上時,左頭燈、右頭燈、左尾燈、右尾燈按頻率為10hz頻率

6、快速閃爍。任何在下表中未出現的組合,都將出現故障指示燈閃爍,閃爍頻率為10hz。表1 汽車駕駛操縱與信號駕駛操作輸出信號左轉彎燈右轉彎燈左頭燈右頭燈左尾燈右尾燈左轉彎(合上左轉彎開關)閃爍滅閃爍滅閃爍滅右轉彎(合上右轉彎開關)滅閃爍滅閃爍滅閃爍合緊急開關閃爍閃爍閃爍閃爍閃爍閃爍剎車(合剎車開關)滅滅滅滅亮亮左轉彎時剎車閃爍滅閃爍滅閃爍亮右轉彎時剎車滅閃爍滅閃爍亮閃爍剎車時合緊急開關閃爍閃爍閃爍閃爍亮亮左轉彎時剎車合緊急開關閃爍閃爍閃爍閃爍閃爍亮右轉彎時剎車合緊急開關閃爍閃爍閃爍閃爍亮閃爍??浚ê贤?块_關)滅滅閃爍(10hz)閃爍(10hz)閃爍(10hz)閃爍(10hz)2.2.1 開關狀態(tài)檢

7、測開關狀態(tài)檢測,對at89c51來說是輸入關系,可輪流檢測每個開關狀態(tài),以每個開關的狀態(tài)讓相應的發(fā)光二極管指示,采用jnb p1.x,rel 指令來完成;也可以一次性檢測五路開關狀態(tài),讓它指示,可以用mov a,p1 指令一次把p1 端口的狀態(tài)全部讀入,取低5位的狀態(tài)來指示。2.2.2 輸出控制以發(fā)光二極管d1d6 來指示,此設計用setb p0.x 和clr p0.x 指令來完成,也可以用指令mov p0,111xxxxxb 方法來實現。2.2.3 定時器和計數器根據任務設計要求:會用到定時器。信號的控制是定時器與中斷系統(tǒng)的聯合使用得以實現。單片機的控制系統(tǒng)應用中,定時器是必需的,在汽車轉向

8、燈的控制中也是必不可少。定時有三種選擇方法。(1)軟件的定時它是靠執(zhí)行一個循環(huán)程序以進行時間的延遲。軟件定時的優(yōu)點是時間精確,且不需外加硬件電路。但它要增加cpu開銷,因此軟件定時的時間不能太長。此外,軟件定時方法有時候無法使用。(2)硬件的定時時間較長的定時,常使用硬件電路完成。硬件定時方法的優(yōu)點是定時功能全部由硬件電路完成,不需要占cpu的時間。用元件參數來調節(jié)定時時間,這方面使用上不夠靈活方便。(3)可編程定時器的定時它是通過對系統(tǒng)時鐘脈沖的計數來實現的。計數值由程序設定,改變計數值,同時也改變了定時時間,用起來既靈活且方便。此外,采用計數方法實現定時,可編程定時器都兼有計數功能,能對外

9、來脈沖進行計數。在at89c51內部除了有并行和串行i/o接口外,在單片機內部共有2個可編程的定時器和計數器,稱定時器/計數器0和定時器/計數器1,這兩個計數器由th0,tl0,th1,tl1兩個8位的ram單元組成,即每個計數器都是16位的計數器,最大的計數量時65536。定時器/計數器計數功能和定時功能:(1)計數器功能記數是指對外部事件進行計數。它的發(fā)生以輸入脈沖表示,計數功能的實質就是對外來的脈沖進行計數。at89c51芯片有t0(p3.4)和t1(p3.5)兩個信號引腳,是這兩個計數器的計數輸入端。外部輸入的脈沖在負跳變時有效,進行計數器加1(加法計數)。at89c51在每個機器周期

10、的s5p2拍節(jié)對外部計數脈沖進行采樣。前一個機器周期采用為高電平,后一個機器周期采樣為低電平,是一個有效的計數脈沖。在下一機器周期的s3p1進行計數。采樣計數脈沖是在2個機器周期進行的。計數脈沖頻率不能高于振蕩脈沖頻率的1/24。(2)定時器功能實際也是通過計數器來實現的,但此時的計數脈沖來自單片機的內部,也每個機器周期計數器加1。一個機器周期等于12個振蕩脈沖周期,因此計數頻率為振蕩頻率的1/12。單片機采用12mhz晶體,計數頻率為1mhz。每微妙計數器加1。根據計數值計算出定時時間,也可以反過來按定時時間的要求計算出計數器的預置值。它是一個二進制的加1計數器。在計數器計滿回零時能自動產生

11、溢出中斷請求。則已經完成。t1、t2的最大計數值65536-1,需65535個脈沖才能把它們從全“0”狀態(tài)變?yōu)槿?”狀態(tài)。輸一個脈沖,計數器加1,當加到計數器各位全為1時,再去輸一個脈沖,計數器各位就變?yōu)槿?,發(fā)出溢出信號,使標志置1,此時向cpu申請中斷。具體結構如圖2.2所示:圖2.2 定時器/記數器的結構2.2.4 定時初始化定時主要與編程有關。編程對定時器控制寄存器(tcon)、工作方式控制寄存器(tmod)和中斷允許控制寄存器(ie)進行操作。(1)定時器控制寄存器(tcon)tcon寄存器既參與中斷控制又參與定時控制。其中有關定時的控制位共有4位:tf0和tf1-記數溢出標志位t

12、r0和tr1-定時器運行控制位tr0(tr1)=0-停止定時器/計數器工作tr0(tr1)=1-啟動定時器/計數器工作該位根據需要以軟件方法使其置“1”或清“0”。(2)中斷允許控制寄存器ie寄存器中與定時器/計數器有關的位置介紹:ea-中斷允許總控制位et0和et1-定時/計數中斷允許控制位et0(et1)=0 禁止定時/記數中斷et0(et1)=1 允許定時/記數中斷利用mcs-51系列單片機的可編程定時/計數器、中斷系統(tǒng)來實現燈閃爍的延時和故障檢測。(3)工作方式控制寄存器(tmod)tmod寄存器專用寄存器,設定兩個定時器/計數器的工作方式。它的低半字節(jié)定義定時器/計數器0,高半字節(jié)定

13、義定時器/計數器1。各位定義如表2所示:表2 tmod各位定義位序b7b6b5b4b3b2b1b0位符號gatec/m1m0gatec/m1m0其中:gate-門控位 gate=0 以運行控制位tr啟動定時器 gate=1 以外中斷請求信號(int1或int0)啟動定時器 c/-定時方式或計數方式選擇位 c/=0 定時工作方式 c/=1 計數工作方式 m1m0-工作方式選擇位 m1m0=00 方式0 m1m0=01 方式1 m1m0=10 方式2 m1m0=11 方式3初值計算:(1)設為工作方式0,定時時間為30ms,使燈延時閃爍。若使用定時器t0,方式1,30ms定時,fosc=12mhz

14、。則初值x滿足(216-x)1=30000x=3553610001010110100008ad0h(2)設計中利用定時器/計數器0,一個軟件計數器產生低頻(1hz)閃爍功能。(3)利用定時器/計數器0來產生為時30ms的定時信號,以實現高頻(30hz)閃爍功能。(4)注意在用工作方式1時,我們必須要重新裝載初值。2.2.5 汽車轉向燈顯示在汽車轉彎或應急狀態(tài)下,外部信號燈和儀表板它們指示燈的閃爍頻率為1hz,稱低頻信號。當停靠開關合上時,外部信號燈以10hz頻率閃爍此時為高頻信號。2.2.6 汽車轉向燈控制汽車轉彎燈設計5個按鍵控制信號燈的轉向、???、應急等。按鍵安排見下:s1鍵為剎車開關;s

15、2鍵為緊急開關;s3鍵為??块_關;s4鍵為左轉彎開關;s5鍵為右轉彎開關;2.2.7 中斷系統(tǒng)單片機中斷技術主要用于實時控制,在單片機上有兩個引腳,即int0、int1。外部的中斷信號通過這兩個引腳輸入到單片機,和單片機的定時器一樣,對中斷系統(tǒng)的處理需要通過c51的軟件編程實現。利用mcs-51系列單片機的可編程定時/計數器、中斷系統(tǒng)來實現燈閃爍的延時和故障檢測。它的重要作用有如下四點:第一,高速cpu和低速外設之間的配合。利用中斷方式進行的i/o口操作,在宏觀上可以看成cpu和外設的并行工作。第二,實現故障的緊急處理。當外設發(fā)生故障時,可以利用中斷系統(tǒng)請求cpu及時處理這些故障。第三,可以實

16、現實時控制。3.硬件設計3.1 單片機控制系統(tǒng)電路圖3.1.1汽車轉向燈單片機控制系統(tǒng)框圖汽車轉向燈單片機控制系統(tǒng)電路是由單片機at89c51、復位、電源、時鐘、led顯示電路、故障檢測電路、按鍵電路構成。電源電路給控制相關電路提供所需電源;復位電路供上電或按鍵時復位用。當要求重新啟動單片機或者單片機處于死循環(huán)時,都可以由此電路來實現;時鐘電路用來產生時鐘脈沖信號,供工作使用;通過并行i/o口構成鍵盤和顯示電路,輸入程序,即可實現汽車轉向燈中各信號燈的功能操作;系統(tǒng)的可靠性有所提高。汽車轉向燈單片機控制系統(tǒng)框圖如圖3.1所示。at89c51按鍵電路時鐘電路復位電路電源電路led顯示電路故障檢測

17、電路圖3.1 控制系統(tǒng)3.1.2 汽車轉向燈單片機控制系統(tǒng)電路圖汽車轉向燈單片機控制系統(tǒng)仿真電路如圖3.2所示圖3.2 汽車轉向燈控制仿真電路圖3.2 汽車轉向燈控制系統(tǒng)流程圖3.2.1 汽車轉向燈控制系統(tǒng)主程序流程圖控制系統(tǒng)主程序流程圖如圖3.2.1所示 圖3.2.1 控制系統(tǒng)主程序流程圖3.2.2 中斷服務程序流程圖中斷服務的程序流程圖如圖3.2.2所示。圖3.2.2 中斷服務的程序流程圖3.2.3控制系統(tǒng)鍵功能流程圖鍵的功能程序流程圖如圖3.2.3所示。圖3.2.3 鍵的功能程序流程圖4.軟件設計4.1 程序流程圖流程圖如下:(1) 主程序流程圖如圖4.1主程序開始初始化p1口(p3)送

18、至a判斷p3口第五位數據已確定分支功能結束圖4.1主程序(2) 子程序流程圖如下圖(4eh)=#0fh#54h送至p1口調用延時1s的程序#00h送至p1口調用延時1s的程序返回(4eh)=#17h#2ah送至p1口調用延時1s的程序#00h送至p1口調用延時1s的程序返回圖4.2 表示左轉 圖4.3 表示右轉 (4eh)=#1eh#60h送至p1口返回(4eh)=#1dh#7fh送至p1口調用延時1s的程序#00h送至p1口調用延時1s的程序返回 圖4.5 表示剎車 圖4.4 表示緊急(4eh)=#16h#6ah送至p1口調用延時1s的程序#40h送至p1口調用延時1s的程序返回(4eh)=

19、#0eh#6ah送至p1口調用延時1s的程序#40h送至p1口調用延時1s的程序返回圖4.6 左轉剎車 圖4.7 右轉剎車(4eh)=#14h#7eh送至p1口調用延時1s的程序#40h送至p1口調用延時1s的程序返回(4eh)=#1ch#7eh送至p1口調用延時1s的程序#60h送至p1口調用延時1s的程序返回圖4.8 緊急剎車 圖4.9 左轉緊急剎車(4eh)=#1bh#66h送至p1口調用延時100ms的程序#00h送至p1口調用延時100ms的程序返回(4eh)=#0ch#7eh送至p1口調用延時1s的程序#20h送至p1口調用延時1s的程序返回 圖4.10 右轉緊急剎車 圖4.11

20、停靠4.2 源程序源程序如下:org0000hajmpstart1org 0030hsameequ4ehstart1:movp1,#00h;無輸入時無輸出start:mova,p3;讀p3口數據anla,#1fh;取用p3口的低五位數據cjnea,#1fh,shiy;對p3口低五位數據進行判斷ajmpstart1shiy:movsame,alcallys;延時mova,p3;讀p3口的數據anla,#1fh;取用p3口的低五位數據cjnea,#1fh,shiy1;對p3口的低五位數據進行判斷ajmpstart1;開關沒有動作時無輸出shiy1:cjnea,same,start1cjnea,#1

21、7h,next1;p3.3=0時進入左轉分支ajmpleftnext1:cjnea,#0fh,next2;p3.4=0時進入右轉分支ajmprightnext2:cjnea,#1dh,next3;p3.1=0時進入緊急分支ajmpeargenext3:cjnea,#1eh,next4;p3.0=0時進入剎車分支ajmpbrakenext4:cjnea,#16h,next5;p3.0=p3.3=0時進入左轉剎車分支ajmplebrnext5:cjnea,#0eh,next6;p3.0=p3.4=0時進入右轉剎車分支ajmpribrnext6:cjnea,#1ch,next7;p3.0=p3.1=

22、0時進入緊急剎車分支ajmpbrernext7:cjnea,#14h,next8;p3.0=p3.1=p3.3=0時進入左轉緊急剎車分支ajmplbenext8:cjnea,#0ch,next9;p3.0=p3.1=p3.4=0時進入右轉緊急剎車分支ajmprbenext9:cjnea,#1bh,next10;p3.2=0時進入??糠种jmpstopnext10:ajmperror;其他情況進入錯誤分支left:movp1,#2ah;左轉分支lcally1smovp1,#00hlcally1sajmpstartright:movp1,#54h;右轉分支lcally1smovp1,#00hlc

23、ally1sajmpstartearge:movp1,#7fh;緊急分支lcally1smovp1,#00hlcally1sajmpstartbrake:movp1,#60h;剎車分支ajmpstartlebr:movp1,#6ah;左轉剎車分支lcally1smovp1,#40hlcally1sajmpstartribr:movp1,#74h;右轉剎車分支lcally1smovp1,#20hlcally1sajmpstartbrer:movp1,#7eh;緊急剎車分支lcally1smovp1,#60hlcally1sajmpstartlbe:movp1,#7eh;左轉緊急剎車分支lcall

24、y1smovp1,#40hlcally1sajmpstartrbe:movp1,#7eh;右轉緊急剎車分支lcally1smovp1,#20hlcally1sajmpstartstop:movp1,#66h;??糠种cally100msmovp1,#00hlcally100msajmpstarterror:movp1,#80h;錯誤分支lcally1smovp1,#00hlcally1sajmpstartys:movr7,#20h;延時ys0:movr6,#0ffhys1:djnzr6,ys1djnzr7,ys0rety1s: mov r7,#04h ;延時y1s1:movr6,#0ffhy1s2:movr5,#0ffhdjnzr5,$djnzr6,y1s2djnzr7,y1s1rety100ms:movr7,#66h;延時y100ms1:movr6,#0ffhy100ms2:djnzr6, y100ms2djnzr

溫馨提示

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

評論

0/150

提交評論