現(xiàn)代交通燈設(shè)計(jì)_第1頁(yè)
現(xiàn)代交通燈設(shè)計(jì)_第2頁(yè)
現(xiàn)代交通燈設(shè)計(jì)_第3頁(yè)
已閱讀5頁(yè),還剩28頁(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、岳北農(nóng)林哥社大學(xué)接口技術(shù)課程設(shè)計(jì)報(bào)告現(xiàn)代交通燈設(shè)計(jì)學(xué)院(系):機(jī)械與電子工程學(xué)院 專業(yè)年級(jí): 電子信息工程10級(jí)1班 學(xué)生姓名:學(xué)號(hào):指導(dǎo)教師:郭文川完成日期:2013年7月05日1 / 42現(xiàn)代交通燈設(shè)計(jì)摘要隨著現(xiàn)代交通事業(yè)的發(fā)展,越來越多的私家車走進(jìn)尋常百姓家,因此道路的負(fù)載強(qiáng)度越來 越大,各大城市發(fā)生經(jīng)常性的堵車事件,走路要比開車快已經(jīng)成了不爭(zhēng)的事實(shí),然而傳統(tǒng)的交通 燈只有紅,綠,黃三種顏色,不僅無(wú)法方便司機(jī)在高度緊張下對(duì)路況的判斷,因此發(fā)生交通事故 的可能性大大升高,因此我們需要帶倒計(jì)時(shí)功能,而且可以顯示各個(gè)通行方向的交通燈,為了 設(shè)計(jì)一款這樣的符合現(xiàn)代需求的交通燈,本設(shè)計(jì)基于單片機(jī),

2、用8255A擴(kuò)展接口帶左轉(zhuǎn)、直 行、右轉(zhuǎn)三種通行綠燈,具有倒計(jì)時(shí)功能,當(dāng)按下夜間行駛按鈕時(shí),所有方向黃燈閃爍,燈第 二次按下夜間行駛按鈕時(shí),恢復(fù)正常行駛,當(dāng)按下緊急按鈕時(shí),所有方向紅燈亮,當(dāng)?shù)诙伟聪?夜間行駛按鈕時(shí),恢復(fù)正常行駛,并可由管理人員修改倒計(jì)時(shí)的時(shí)間。關(guān)鍵詞:現(xiàn)代交通燈;I ntroduct i onWith the development of modern transport, more and more pr ivate cars come into the common people* s home, so the load of road become more a nd

3、 more ser ious, t he f reque nt traff i c jams in ma jor cities happe ned everyday, you can v/a I k fas ter tha n dr i v i ng, v/hi ch has become an in disputable fac t, but the tradi t ional traffic I ight only have red, gree n, ye I low, which not only can' t convenient the dr i ver to see roa

4、d condit ions under high tensi on, thus it greatly increase the possibiI ity of traffic accident, so we need to invite a traffic Iight with the countdown function, and can display the traffic di rections of traffic Iights, in order to design a modern traff ic I ights whitch can match the demand of n

5、eed, this design based on single chip microcomputer 89051, and extension interface v/ith 8255A to showturn left, go straight, turn r ight three passage of the gree n, with the coun tdo wn funct i on, whe n dr i v i ng a t n ight , al I di recti on ye I low I i ghts f I ash i ng, , whe n n i ght driv

6、ing button press at the sec ond t i me, the display wi I I returns to normal, when press the emergency button, a I I direction turns red, when dr i ving at night button a second time, back to normal, and can modify the countdown time by management personnelKeyword; modern traffic Iights-3-/42目錄1 設(shè)計(jì)目

7、的與要求-01.1設(shè)計(jì)目的錯(cuò)誤!未定義書簽。1.2設(shè)計(jì)要求錯(cuò)誤!未定義書簽。2 系統(tǒng)硬件設(shè)計(jì) 錯(cuò)誤!未定義書簽。2. 1總體設(shè)計(jì)方案錯(cuò)誤!未定義書簽。2.2硬件設(shè)計(jì)錯(cuò)誤!未定義書簽。3 系統(tǒng)軟件設(shè)計(jì) 錯(cuò)誤!未定義書簽。3。1程序框圖錯(cuò)誤!未定義書簽。3。2各模塊程序設(shè)計(jì)錯(cuò)誤!未定義書簽。4 仿真與調(diào)試 錯(cuò)誤!未定義書簽。4o 1各種情況下運(yùn)行結(jié)果錯(cuò)誤!未定義書簽。4o 2 proteus整體仿真電路圖錯(cuò)誤!未定義書簽。4o 3 PCB電路板錯(cuò)誤!未定義書簽。5 總結(jié)錯(cuò)誤!未定義書簽。5.1遇到的問題 錯(cuò)誤!未定義書簽。5。2心得躺!未定義書簽。參考文獻(xiàn)-0附錄 C語(yǔ)言源程序錯(cuò)誤!未定義書簽。1

8、設(shè)計(jì)目的與要求1.1. 設(shè)計(jì)目的單片機(jī)課程設(shè)計(jì)作為獨(dú)立的教學(xué)環(huán)節(jié),是集中實(shí)踐性環(huán)節(jié)系列之一,是學(xué)習(xí) 完單片機(jī)原理與接口技術(shù)課程后,并在相關(guān)課程設(shè)計(jì)基礎(chǔ)上進(jìn)行的一次綜合 性練習(xí)。單片機(jī)課程設(shè)計(jì)過程中,學(xué)生通過查閱資料,接口設(shè)計(jì),程序設(shè)計(jì),安裝調(diào) 試等環(huán)節(jié),完成一個(gè)基于MCS-51系列單片機(jī),涉及多種資源應(yīng)用,并且有綜合 功能的小應(yīng)用系統(tǒng)設(shè)計(jì)。使學(xué)生不但能夠?qū)⒄n堂上學(xué)到的理論知識(shí)與實(shí)際應(yīng)用結(jié) 合起來,而且能夠?qū)﹄娮与娐?,電子元器件等方面的知識(shí)進(jìn)一步加深認(rèn)識(shí),同時(shí) 在軟件編程,調(diào)試,相關(guān)儀器設(shè)備和相關(guān)軟件的使用技能等方面得到較全面的鍛 煉和提高.使學(xué)生增進(jìn)對(duì)單片機(jī)的感性認(rèn)識(shí),加深對(duì)單片機(jī)理論方面的理

9、解,加 深單片機(jī)的內(nèi)部功能模塊的應(yīng)用,如定時(shí)器/計(jì)數(shù)器,中斷,片內(nèi)外存儲(chǔ)器,I/O接 口,串行口等。使學(xué)生了解和掌握單片機(jī)應(yīng)用系統(tǒng)的軟硬件設(shè)計(jì)過程,方法及實(shí) 現(xiàn),強(qiáng)化單片機(jī)應(yīng)用電路的設(shè)計(jì)與分析能力。不僅提高學(xué)生在單片機(jī)應(yīng)用方面的 實(shí)踐技能和科學(xué)作風(fēng),培育學(xué)生綜合運(yùn)用理論知識(shí)解決問題的能力,還提高了我 們?cè)谡撐淖珜懛矫娴哪芰?,為以后的畢業(yè)論文的奠定一定的基礎(chǔ).1.2. 設(shè)計(jì)要求(1) 設(shè)計(jì)一款帶左轉(zhuǎn)、直行、右轉(zhuǎn)三種通行綠燈,參見實(shí)物效果圖。(2) 帶緊急按鈕功能,當(dāng)緊急按鈕按下時(shí),所有方向均亮紅燈。(3) 夜間運(yùn)行模式按鈕,按下時(shí),所有方向黃燈閃爍。(4) 可顯示倒計(jì)時(shí)功能(此處我采用倒計(jì)時(shí)十秒

10、顯示)。(5) 可由管理人員修改紅綠燈等待間隔時(shí)間。2系統(tǒng)硬件設(shè)計(jì)2.1總體設(shè)計(jì)方案圖1總體設(shè)計(jì)方案框圖本設(shè)計(jì)基于單片機(jī)進(jìn)行開發(fā):1) 用 P1 口對(duì) 7SEGMPX2-CABLUE 的段選;2) 用 P3. 0 和 P3. 1 實(shí)現(xiàn)對(duì) 7SEG-MPX2-CA-BLUE;3) 由于單片機(jī)自帶接口的緊缺,因此需要擴(kuò)展接口,用P0和P1 口接8255A對(duì)單 片機(jī)擴(kuò)展輸出口 ,8255PA和8255PB分別接MATRIX-8x8GREEN的上下八個(gè)輸 入端,實(shí)現(xiàn)動(dòng)態(tài)掃描箭頭顯示,8255PC的第三位連接74LS138,產(chǎn)生時(shí)能信號(hào), 對(duì)三個(gè)MATR I X-8x8-GREEN進(jìn)行片選,8255PC

11、7可以在接口很緊缺的情況下, 控制在中斷條件下紅燈的點(diǎn)亮,因?yàn)榇藭r(shí)不進(jìn)行片選。4) P3o 2控制外部中斷0,實(shí)現(xiàn)緊急情況時(shí)紅燈的亮滅;5) P3o 3控制外部中斷1,實(shí)現(xiàn)夜間行駛時(shí)黃燈的閃爍和熄滅;6) P3. 4控制定時(shí)器0,實(shí)現(xiàn)倒計(jì)時(shí)7) P3o 5控制紅燈的點(diǎn)亮與熄滅。2.2硬件設(shè)計(jì)點(diǎn)陣顯示電路電路XT2R5T茁pgp P, “NX piipoP»4PisP1APtjPtMCC PtlUOl XMCA fit MCAPt£A*cePt£*C<M3P2 3 U2 pa 1*11 « 4*1 a P2M11MZVM*Plt«T>

12、D “ -rTT Pl-rTTrM4<Tt一r玉ss牙_典”4b6856ao8 1&8858338?*csn肌 &88238E8&&606&08 旳38833賈8、-U5 N»c«n圖2點(diǎn)整顯示電路通過8255A的PA 口和PB 口輸出,使點(diǎn)陣掃描顯示, 然而MATRIX8x8GREEN 缺少位選信號(hào),所以無(wú)法對(duì)其進(jìn)行片選,我巧妙的用了三塊74LS373對(duì)其上下進(jìn)行連 接,通過PC 口對(duì)鎖存器的片選從而對(duì)MATRIX8x8-GREEN片選,除此之外,還能使掃 描更穩(wěn)定。倒計(jì)時(shí)電路倒計(jì)時(shí)電路如圖3所示,十字路口交通燈一般倒計(jì)時(shí)在六

13、十秒之內(nèi),所以只采用 兩段共陽(yáng)極數(shù)碼7SEG-MPX2-CA-BLUE進(jìn)行顯示,數(shù)碼管有十個(gè)輸入端,AG是控制顯 示0-9的輸入管,只要輸入合適的數(shù)據(jù),只能及時(shí)的顯示,DP是是否顯示小數(shù)點(diǎn),當(dāng) 某位接低電平時(shí),表示所在位的數(shù)碼管被點(diǎn)亮,接高電平的數(shù)碼管通過鎖存器對(duì)P1過 來的數(shù)據(jù)進(jìn)行鎖存,鎖存器的使能端接地,ALE端接單片機(jī)的晶振ALE,從而實(shí)現(xiàn)顯 示功能。U28388&ujIUJ aooooooo -j |OU1474HC573223控制電路: XTAL1XTAL2QQTP0.0/AD0PO.VAOlP0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6 o

14、n 7tACV7P2.0/A8P2.1/A9P2.2/A10PSENP2.3/A11ALE.P2.4/A12P2.6/A13P2.6/A14P2.7/A15P1.0/T2P3.0/RXDP1.1/T2EXDi oP3.1HXD qq o/1T3T7P1.3P3.3/1RTTP1.4P3.4/TOP1.5P3.6/T1P1.6P3.GWRP1.7P3.7 廂1918AT89C5229遼31圖3倒計(jì)時(shí)電路U28-7 6-5 4 3-2 1P1.7PX6P1.5P1.4P1.3P1.2P1.1/T2EXP1.0H2P3.&WRP3.5/T1P3.4/T0P3.3(fiTTP3.2ifJT0

15、P3.1H-XD P3.0rRXD_9J8J9EAALEF5ERRSTXTAL2XTAL1P2.7/A15P2.6<A14P2.&<A13P2.4/A12P2.3/A11P2.2/A10P2.1XA9P2.OA8PO.7/AD7P0.6.'AD6P0.&'AD5P0.4'AD4P03AD3P02AD2P0.1/AD1 PO.Q'ADO4=&ztg=5一izfi-fFP一10"$151b訂32AT89C52圖4控制電路NIGHT按鈕和單片機(jī)的P3。3 口相連,按鈕按下,跳入中斷,黃燈閃爍,進(jìn)入夜間行車狀態(tài),當(dāng)NIGHT

16、再次按下時(shí),跳出中斷,黃燈熄滅,進(jìn)入日間行車狀 態(tài),EMERGENCY按鈕和單片機(jī)的P3. 2 口相連,按下時(shí),跳入中斷,紅燈點(diǎn)亮,倒計(jì)時(shí), 和箭頭顯示都關(guān)閉,進(jìn)入緊急狀態(tài),當(dāng)紅燈再次按下時(shí),跳出中斷,關(guān)閉紅燈,繼續(xù) 中斷前的工作狀態(tài)。復(fù)位電路復(fù)位是單片微機(jī)的初始化操作,其主要功能是把PC初始化為0000H,使單片微機(jī) 從0000H單元開始執(zhí)行程序.除進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò) 或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,可以按復(fù)位鍵以重新啟動(dòng),也可 以通過監(jiān)視定時(shí)器來強(qiáng)迫復(fù)位。RST引腳是復(fù)位信號(hào)的輸入端.復(fù)位電路在這里采用 的是上電+按鈕復(fù)位電路形式,具體連接電路如圖復(fù)位

17、是單片微機(jī)的初始化操作,其 主要功能是把PC初始化為0000H,使單片微機(jī)從0000H單元開始執(zhí)行程序.除進(jìn)入系 統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為 擺脫困境,可以按復(fù)位鍵以重新啟動(dòng),也可以通過監(jiān)視定時(shí)器來強(qiáng)迫復(fù)位。RST引 腳是復(fù)位信號(hào)的輸入端.復(fù)位電路在這里采用的是上電+按鈕復(fù)位電路形式,具體連 接電路如圖5所示:時(shí)鐘電路時(shí)鐘電路在單片機(jī)系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的基礎(chǔ). 在一個(gè)單片機(jī)應(yīng)用系統(tǒng)中,時(shí)鐘是保障系統(tǒng)正常工作的基準(zhǔn)振蕩定時(shí)信號(hào),主要由 晶振和外圍電路組成,晶振頻率的大小決定了單片機(jī)系統(tǒng)工作的快慢.為達(dá)到振蕩 周期是12MHZ

18、的要求,這里要采用12MHZ的品振,另外有兩個(gè)22P的電容,兩晶振 引腳分別連到XTAL1和XTAL2振蕩脈沖輸入引腳.具體連接如圖6所示.3系統(tǒng)軟件設(shè)計(jì)3.1程序框圖系統(tǒng)軟件由主程序和子程序組成,主程序主要是對(duì)程序的初始化,子程序包括 定時(shí)中斷,延時(shí),點(diǎn)陣顯示,倒計(jì)時(shí)等各個(gè)模塊,圖7是主要的程序框圖。圖7軟件程序框圖3.2各模塊程序設(shè)計(jì)321點(diǎn)陣箭頭顯示:void arrow ()/箭頭函數(shù)for (arrow_j=0;arrow_j<4: arrow_j+) /掃描顯示 "PA8255=Tab_1arrow_j;PB8255二Tab_2 arrowj;de I ay (2)

19、322倒計(jì)時(shí)程序:void T0_time () interrupt 1 程序TH0=15536/256;TLO二15536%256;num+;if (num=10)num二0;temp;if (temp+1=0)if (PC8255<2)PC8255=PC8255+1;)e I sePC8255二0x00;)temp二10;)夜間行駛中斷函數(shù)設(shè)計(jì):void interO ( ) interrupt 2/定時(shí)中斷服務(wù)/設(shè)置定時(shí)起點(diǎn)/滿一秒則變換/外部中斷1de I ay (2000);while(y=1)/為了第二次按下按鈕跳出中斷點(diǎn)陣程序I ed_3=1;(i_inter二0; i_i

20、nter <150; i_inter+) /倒計(jì)時(shí)和P1二Oxff;/不是整體賦值,所以先屏蔽原值led_1=1;led_2二0;P1 二tableshi;delay (15);if (i_inter=75)led 3=0;P1=0xff;led_1二0;led_2=1;P1=tablege;de I ay (15);arrow_1 () :/箭頭函數(shù) 2PA8255二Oxff;PB8255二Oxff;temp;if (temp+1=0)if (PC8255<2)PC8255二PC8255+1;)e I sePC8255二0x00;temp二10;)shi=temp/10;ge=t

21、emp%10;if (Ied_5=0)y 二0;)緊急情況中斷函數(shù)設(shè)計(jì):void inter1 () interrupt 0de I ay (1000):k二PA8255;m二PC8255;whi le (x二二1)/目的是在第二次按下按鈕時(shí)跳出中斷PC8255二Oxff;PA8255二0x00;P1=0xff;if (led_4=0)de I ay (100);if (Ied_4=0)x 二0:whi le(led_4=0);PA8255二k;PC8255二m; 4硬件仿真與調(diào)試4.1各種情況下顯示結(jié)果當(dāng)在proteus里面按下開始仿真按鈕時(shí),系統(tǒng)開始仿真,紅燈和黃燈都不亮, 顯示十秒倒計(jì)時(shí)

22、,倒計(jì)時(shí)滿了切換箭頭的方向,依次方向循環(huán)往復(fù),直到等待中 斷的到來,圖8,圖9,圖10為各方向行駛時(shí)的顯示ST r-T r n圖8正常行駛一一右行圖9正常行駛一一左行圖io正常行駛一一前行當(dāng)按下緊急情況按鈕是只亮紅燈,其他模塊都不亮,如圖門所示,當(dāng)再一次 按下按鈕時(shí),恢復(fù)到緊急按鈕按下那一刻之前的顯示,即恢復(fù)到正常行駛模式。圖11緊急情況圖1 2恢復(fù)中斷前顯示當(dāng)按下夜間行駛按鈕按鈕時(shí),進(jìn)入到夜間行駛模式,所有方向黃燈閃爍,如 圖13所示,且不進(jìn)行倒計(jì)時(shí)顯示,當(dāng)再次按下此按鈕時(shí),恢復(fù)到按下按鈕那一刻 之前的的顯示,進(jìn)入到正常行駛模式。 O*fflW.1.1圖13夜間行駛4MW4圖14正常行駛一一

23、前行4.2 Proteus總體仿真結(jié)果總體電路圖包括顯示電路,點(diǎn)陣電路,接口擴(kuò)展電路,控制電路等,結(jié)果 如圖15所示。X.anmbB8383MI339U858I w»今今33 53 |.u=y.05I圖15 Proteus仿真總體電路圖4.3 PCB電路板經(jīng)過一個(gè)上午的設(shè)計(jì),畫出了原理圖,然后畫岀了各個(gè)元件的PCB封裝, 花了一個(gè)下午的時(shí)間把全部結(jié)果完成,有一點(diǎn)欠缺的地方就是線是自動(dòng)布的 所以看上去有點(diǎn)亂圖18 PCB電路板5總結(jié)5.1遇到的問題:?jiǎn)栴}1:顯示不岀完美的箭頭。解決方案:把掃描速度調(diào)到最慢,發(fā)現(xiàn)方法是對(duì)的,是按照編程想象的速度進(jìn)行 掃描,因此我加了一個(gè)鎖存器,接的是單片

24、機(jī)品振,但是結(jié)果雖然比剛剛好了但是箭 頭上面還是有一兩個(gè)點(diǎn)在閃爍,對(duì)于追求完美的我來說,肯定是不滿意的,因此我把 鎖存器的晶振換成了一個(gè)外部晶振,經(jīng)過慢慢的調(diào)其晶振頻率,果然可以顯示出一個(gè) 完美的箭頭。問題2: 8255A的擴(kuò)展后PA, PB, PC不能輸出數(shù)據(jù)。解決方案:百度了很久,查了很多的資料,都沒有能夠解決問題,接口地址都設(shè) 置都是對(duì)的,控制口設(shè)置也是對(duì)的,所以百思不得其解,第二天在郭老師的幫助下, 把工程下的A5 1刪除以后,結(jié)果就可以運(yùn)行了.問題3:在擴(kuò)展兩片8255A沒能成功的情況下,接口不夠用,找不到一個(gè)口控制 紅燈,所有接口都被利用了。解決辦法:用PC7控制,因?yàn)榇藭r(shí)跳入中斷

25、,暫時(shí)不用進(jìn)行對(duì)點(diǎn)陣的片選,從而 實(shí)現(xiàn)了一口兩用的功能,只需要在跳出中斷以后,對(duì)PC口重新復(fù)制即可。問題4用P3。0和P3. 1 口對(duì)兩段數(shù)碼管進(jìn)行位選,由于不是對(duì)P3。1 口整體賦 值,數(shù)碼管不能正常顯示,。解決辦法:首先分析問題產(chǎn)生的原因,由于是分別賦值,盡管單片機(jī)的執(zhí)行速度 很快,但是還是有幾微秒的差異,所以不能及時(shí)的顯示,然后要達(dá)到整體賦值的位選 功能,只能先的數(shù)碼管的輸入值賦值為oxff,先讓其滅了,然后對(duì)P3.0和P3o 1 口進(jìn) 行賦值,賦值以后再輸入要顯示的數(shù)據(jù),這樣就可以完美解決問題.問題5:當(dāng)執(zhí)行夜晚行駛中斷程序時(shí),不能實(shí)現(xiàn)倒計(jì)時(shí).解決辦法:由于單片機(jī)是單線程的微型計(jì)算機(jī),

26、所以一次只能執(zhí)行一條服務(wù),所 以只能在中斷服務(wù)程序里面添加計(jì)時(shí)功能程序,很顯然用定時(shí)器進(jìn)行計(jì)時(shí)已經(jīng)不可 能,因此通過在單片機(jī)里面加一段延時(shí)計(jì)時(shí)程序,從而成功解決問題,瑕疵就是定時(shí) 沒有那么準(zhǔn)而已.為題6:當(dāng)解決完問題5以后,箭頭已經(jīng)沒法正常顯示,因?yàn)閱栴}5中用的是延 時(shí),而箭頭用到的是掃描,因此這兩個(gè)是完全矛盾的問題。解決辦法:重新定義一個(gè)箭頭函數(shù),只進(jìn)行一次掃描,把次箭頭函數(shù)放到問題5 中延時(shí)的f o循環(huán)里面去,從而解決了問題。問題7:為了二次按按鈕的時(shí)候跳出中斷,用goto命令無(wú)法跳出到中斷的入口。解決辦法:把中斷的死循環(huán)whi le (1)里面1用一個(gè)參數(shù)代替,當(dāng)中端口檢測(cè)到下 降沿到來

27、時(shí),只需要把參數(shù)置為假就能解決問題。問題7:點(diǎn)陣沒有使能端,所以如果想只用PA和PB 口對(duì)其控制的話,沒法對(duì)其 進(jìn)行選擇。解決辦法:在輸入端接一個(gè)鎖存器,用鎖存器的使能端當(dāng)做點(diǎn)陣的使能端,從而解決了問題。5.2心得:此次課程設(shè)計(jì),遇到了各種各樣的問題,但是只要正視它,就能把其解決,也許 要花一個(gè)下午,或者一個(gè)晚上的時(shí)間,但是這無(wú)疑是一種思維的鍛煉,耐力的升華。自我感覺這次實(shí)驗(yàn)的難點(diǎn)在于在執(zhí)行夜間行駛中斷的時(shí)候要同時(shí)計(jì)時(shí),而且要掃 描顯示箭頭,如果采用原來方案時(shí),無(wú)疑會(huì)相互矛盾,因此只能另辟蹊徑,當(dāng)我解決問 題的時(shí)候,才發(fā)現(xiàn)夜間行駛不需要顯示箭頭,而且不需要倒計(jì)時(shí),花了三分之二的時(shí) 間解決的問題

28、,結(jié)果付之東流,但是確實(shí)還是學(xué)到了一點(diǎn)東西的,只能這樣來安慰自 己了,不過通過此方法還是幫助了幾個(gè)同樣遇到執(zhí)行中斷還要倒計(jì)時(shí)的同學(xué)。同時(shí)此次課程設(shè)計(jì)的編程讓我感覺程序不是編出來的,而是調(diào)出來的,寫一點(diǎn)調(diào) 一點(diǎn),調(diào)通為止,雖然經(jīng)過幾天的編寫,程序是寫出來了,但是有欠缺的地方是,程序 的執(zhí)行效率很低,雖然是可以實(shí)現(xiàn),但是有些的方的想法是很不明智的,比如說在行 外部中斷時(shí),不能進(jìn)行計(jì)時(shí),所以采用延時(shí),而這個(gè)地方的延時(shí)我是一個(gè)數(shù)字一個(gè)數(shù)字 的套出來,感覺延遲時(shí)間差不多一秒就算完成了。參考文獻(xiàn)1 郭文川.單片機(jī)原理與接口技術(shù)。中國(guó)農(nóng)業(yè)出版社,20072 郭天祥.新概念51單片機(jī)C語(yǔ)言教程。電子工業(yè)出版社

29、,20093 潘永雄.新編單片機(jī)原理及應(yīng)用.西安電子科技大學(xué)出版社,20084 杜洋.愛上單片機(jī)。人民郵電出版社,20125 蔣力培。單片機(jī)微機(jī)系統(tǒng)實(shí)用教程.機(jī)械工業(yè)出版社,20076 牛昱光。單片機(jī)原理與接口技術(shù)。電子工業(yè)出版社,20087 張毅剛,彭喜元.新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì),20098 高衛(wèi)東。51單片機(jī)原理與實(shí)踐.北京航空航天大學(xué)出版社,2011附錄:#include (reg52o h# incIude intr ins h# i ncIude<absacc h/定義并設(shè)置控制口的地址/定義并設(shè)置PA 口地址/定義并設(shè)置PB 口地址/定義并設(shè)置PC 口地址#defin

30、e C0M8255 XBYTE 0x70ff #define PA8255 XBYTE 0x70fc#define PB8255 XBYTE 0x70fd #define PC8255 XBYTE 0x70fe #define uchar unsigned char#define uint unsigned intuint shi, ge,num;int temp二10;uint arrowarrow_j_1 ;uint i_inter;uint t二4,x=1, y二1, k, m;uchar code Tab_1 =0x18, 0x30, 0x60, OxFF; /arrowuchar c

31、ode Tab_2 二0x7E,OxBD, OxDB, 0xE7 ; /arrow unsigned char code Tab_3 二OxFF, 0x3C, 0x7E;/ci rcIe unsigned char code Tab_4 二OxFF,OxBD, 0xC3 ;/ci rcleuchar code tab I e = OxcO, 0xf9, 0xa4, OxbO, 0x99, 0x92, 0x02, 0xf8, 0x80, 0x90 ;/ 共陽(yáng)極09字形代碼sb it led_1二P3"0;sb it led_2 二 P3=;sb it led_3二P3"5;s

32、b it led_5二P3"3;sb it led_4二P3"2;void de I ay (uint z) uint x, y;for (x二z;x>0; x)for (y二10; y) 0;y);/延時(shí)函數(shù)點(diǎn)陣箭頭顯示函數(shù)void de Iay_1 (uns igned int x)i nt i;while (x) for (i=0;i <227; i+) void arrow ()for (arrow_j=0;arrow_j (4;arrow_j+) _PA8255二Tab_1 arrow_j;PB8255二Tab_2 arrow_j:delay (2);/點(diǎn)陣箭頭顯示函數(shù)void arrow 1()for (arrow_j_1=0; arrow_j_14;arrow_j_1+) ""PA8255二Tab_J arrow_j_1;PB8255二Tab_2arrow_j_1;delay (1);ma i n ()C0M8255二0x80;Ied_3二0;num二0;PC8255

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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)論