基于5單片機(jī)的交通燈設(shè)計_第1頁
基于5單片機(jī)的交通燈設(shè)計_第2頁
基于5單片機(jī)的交通燈設(shè)計_第3頁
基于5單片機(jī)的交通燈設(shè)計_第4頁
基于5單片機(jī)的交通燈設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基于單片機(jī)交通燈控制器的設(shè)計與實現(xiàn)電控學(xué)院交通燈課程設(shè)計報告院 (系): 電氣與控制工程學(xué)院 專業(yè)班級: 10級測控1班 組 員: 屈豆 張坡坡 學(xué) 號: 1006070115 1006070127 指導(dǎo)老師: 王建 劉曉榮 2013年 7月 18日17目錄1.緒論11.1設(shè)計背景11.2設(shè)計要求21.2.1 硬件設(shè)計21.2.2軟件設(shè)計21.2.3功能要求21.3 設(shè)計意義22.單片機(jī)選擇方案22.1電源選擇方案22.2選擇界面方案23.硬件設(shè)計33.1硬件功能設(shè)計33.2 主要器件介紹33.2.1 單片機(jī)STC89C52RC33.2.2 LED數(shù)碼管63.3 復(fù)位電路63.4晶振電路64.

2、軟件設(shè)計74.1 軟件功能模塊74.2 系統(tǒng)工作流程設(shè)計74.2.1交通燈工作模式74.2.2系統(tǒng)流程圖85. 測試、數(shù)據(jù)及結(jié)果分析85.1 狀態(tài)燈顯示測試85.3 整體電路測試8設(shè)計心得體會9【參考文獻(xiàn)】:10附錄10附錄一10附錄二10附錄三11附錄四11單片機(jī)課程設(shè)計-交通燈控制器的設(shè)計與實現(xiàn)【摘要】 隨著世界范圍內(nèi)城市化和機(jī)動化進(jìn)程的加快,城市交通越來越成為一個全球化的問題。十字路口車輛穿梭,行人熙攘,車行車道,人行人道,有條不紊。那么,靠什么來實現(xiàn)這井然有序呢?靠的是交通燈的自動指揮系統(tǒng)。隨著科技的發(fā)展,單片機(jī)的應(yīng)用正在不斷深入,同時帶動傳動檢測技術(shù)日益更新。在實時監(jiān)測和自動控制的單

3、片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往作為一個核心部件來使用,還應(yīng)根據(jù)具體的硬件結(jié)構(gòu),以及針對應(yīng)用對象的點(diǎn)的軟件結(jié)合,加以完善。本文介紹了一種基于單片機(jī)的交通燈控制系統(tǒng)。系統(tǒng)采用單片機(jī)和LED數(shù)碼管作為交通燈的控制和顯示核心,并通過控制按鍵對時間進(jìn)行設(shè)置,最終實現(xiàn)對交通燈各狀態(tài)持續(xù)時間的控制。系統(tǒng)采用手動復(fù)位,利用兩個數(shù)碼管顯示交通燈各狀態(tài)的剩余時間,時間顯示采用倒計時方式,四組紅、黃、綠三色燈用發(fā)光二極管作為模擬交通信號燈,呈四種狀態(tài)交替出現(xiàn)。系統(tǒng)通過一個直流穩(wěn)壓電路為系統(tǒng)提供+5V的直流電源。該交通系統(tǒng)控制方便,有一定實用價值?!娟P(guān)鍵字】 單片機(jī);可調(diào);LED;數(shù)碼顯示1.緒論1.1設(shè)計背景1858年

4、,在英國倫敦主要街頭安裝了以燃煤氣為光源的紅,藍(lán)兩色的機(jī)械扳手式信號燈,用以指揮馬車通行。這是世界上最早的交通信號燈。1868年,英國機(jī)械工程師納伊特在倫敦威斯敏斯特區(qū)的議會大廈前的廣場上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩個旋轉(zhuǎn)式方形玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869年1月2日,煤氣燈爆炸,使警察受傷,遂被取消。 1914年,電氣啟動的紅綠燈出現(xiàn)在美國,這種紅綠燈由紅綠黃三色圓形的投光器組成,安裝于紐約市5號大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。 1918年,又出現(xiàn)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅綠燈,一種是把壓力探測器安在地下,車

5、輛一接近紅燈便變?yōu)榫G燈;另一種是用擴(kuò)音器來啟動紅綠燈,司機(jī)遇紅燈時按一下嗽叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當(dāng)行人踏上對壓力敏感的路面時,它就能察覺到有人要過馬路。紅外光束能把信號燈的紅燈延長一段時間,推遲汽車放行,以免發(fā)生交通事故。信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。 1968年,聯(lián)合國道路交通和道路標(biāo)志信號協(xié)定對各種信號燈的含義作了規(guī)定綠燈是通行信號,面對綠燈的車輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu)先通行。紅燈是禁行信號,面對紅燈的車輛必須在交叉

6、路口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以進(jìn)入交叉路口。1.2設(shè)計要求1.2.1 硬件設(shè)計:根據(jù)任務(wù)要求,完成單片機(jī)最小系統(tǒng)及其擴(kuò)展設(shè)計,焊接電路板,組成功能完整的樣機(jī)。1.2.2軟件設(shè)計:模擬實際交通燈控制系統(tǒng)功能,完成控制軟件的編寫與調(diào)試;1.2.3功能要求:利用2個數(shù)碼管進(jìn)行1秒倒計時顯示,最大定時時間為90秒;利用紅、綠、黃三種不同顏色的LED顯示不同的通行情況,要求LED點(diǎn)亮?xí)r間和倒計時時間準(zhǔn)確;1.3 設(shè)計意義交通燈是城市交通的重要指揮系統(tǒng),與人們的日常生活密切相關(guān)。隨著經(jīng)濟(jì)的快速發(fā)展,城市中的車輛逐漸增多,交通擁堵

7、和堵塞現(xiàn)象日趨嚴(yán)重,引起交通事故頻發(fā),環(huán)境污染加劇等一系列問題,因此設(shè)計一個靈活、穩(wěn)定、便捷的多功能交通燈控制系統(tǒng)具有必要性和現(xiàn)實性。本次設(shè)計的意義在于通過對具體的控制系統(tǒng)的設(shè)計,掌握微機(jī)控制系統(tǒng)設(shè)計的一般方法和處理問題的思路,特別是一些常用的技術(shù)手段。在實踐設(shè)計過程中,積累設(shè)計經(jīng)驗,開拓思維空間,全面提高個人的綜合能力。2.單片機(jī)選擇方案我們選擇STC89C52RC單片機(jī)為核心,結(jié)合單片機(jī)課程設(shè)計要求,在提高穩(wěn)定性的前提下,設(shè)計并且制作交通燈,實現(xiàn)了能根據(jù)東西南北四個方向的指示燈來控制車輛的行進(jìn)以及在緊急情況時的處理。2.1電源選擇方案為使模塊穩(wěn)定工作,須有可靠電源。我們考慮了兩種電源方案方

8、案一:采用獨(dú)立的穩(wěn)壓電源。此方案的優(yōu)點(diǎn)是穩(wěn)定可靠,且有各種成熟電源可供選用;缺點(diǎn)是各模塊都采用獨(dú)立電源,會使系統(tǒng)復(fù)雜,且可能影響電路電平。方案二:采用單片機(jī)控制模塊提供電源。改方案的優(yōu)點(diǎn)是系統(tǒng)簡明扼要,節(jié)約成本;缺點(diǎn)是輸出功率不高。 由于我們所做的交通燈結(jié)構(gòu)簡單,由電源直接驅(qū)動的元件只有發(fā)光二極管,電源的負(fù)載并不是很重。綜上所述我們選擇第二種方案。2.2選擇界面方案系統(tǒng)要求完成倒計時、狀態(tài)燈等功能?;谏鲜鲈?,我們考慮了三種方案:方案一:完全采用數(shù)碼管顯示。這種方案只顯示有限的符號和數(shù)碼字符,無法勝任題目要求。 方案二:完全采用點(diǎn)陣式LED 顯示。這種方案實現(xiàn)復(fù)雜,且須完成大量的軟件工作;但

9、功能強(qiáng)大,可方便的顯示各種英文字符,漢字,圖形等。方案三:采用數(shù)碼管與點(diǎn)陣LED 相結(jié)合的方法因為設(shè)計既要求倒計時數(shù)字輸出,又要求有狀態(tài)燈輸出等,為方便觀看并考慮到現(xiàn)實情況,用數(shù)碼管與LED燈分別顯示時間與提示信息。這種方案既滿足系統(tǒng)功能要求,又減少了系統(tǒng)實現(xiàn)的復(fù)雜度。權(quán)衡利弊,第三種方案可互補(bǔ)一二方案的優(yōu)缺,我們決定采用方案三以實現(xiàn)系統(tǒng)的顯示功能。3.硬件設(shè)計3.1硬件功能設(shè)計硬件部分由STC89C52RC單片機(jī)、紅黃綠LED燈、電阻、按鈕、數(shù)碼管等部件組成。(1)用二極管顯示紅綠黃等;(2)用數(shù)碼管顯示十字路口兩個方向的剩余時間;(3)用單片機(jī)的定時器產(chǎn)生秒信號,控制十字路口的紅綠黃燈交替

10、點(diǎn)亮和熄滅;(4)用六個按鍵分別設(shè)置復(fù)位、東西南北急停、東西方向急停、南北方向急停、和紅燈時間的加減3.2 主要器件介紹3.2.1 單片機(jī)STC89C52RCSTC89C52RC單片機(jī)是宏晶科技推出的新一代高速/低功耗/超強(qiáng)抗干擾的單片機(jī),指令代碼完全兼容傳統(tǒng)8051單片機(jī),12時鐘/機(jī)器周期和6時鐘/機(jī)器周期可以任意選擇。主要特性如下:1. 增強(qiáng)型8051單片機(jī),6時鐘/機(jī)器周期和12時鐘/機(jī)器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051.2. 工作電壓:5.5V3.3V(5V單片機(jī))/3.8V2.0V(3V單片機(jī))3. 工作頻率范圍:040MHz,相當(dāng)于普通8051的080MHz,實際工

11、作頻率可達(dá)48MHz4. 用戶應(yīng)用程序空間為8K字節(jié)5. 片上集成512字節(jié)RAM6. 通用I/O口(32個),復(fù)位后為:P1/P2/P3/P4是準(zhǔn)雙向口/弱上拉,P0口是漏極開路輸出,作為總線擴(kuò)展用時,不用加上拉電阻,作為I/O口用時,需加上拉電阻。7. ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無需專用編程器,無需專用仿真器,可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程序,數(shù)秒即可完成一片8. 具有EEPROM功能9. 具有看門狗功能10. 共3個16位定時器/計數(shù)器。即定時器T0、T1、T211. 外部中斷4路,下降沿中斷或低電平觸發(fā)電路,Power Down模式

12、可由外部中斷低電平觸發(fā)中斷方式喚醒12. 通用異步串行口(UART),還可用定時器軟件實現(xiàn)多個UART13. 工作溫度范圍:-40+85(工業(yè)級)/075(商業(yè)級)14. PDIP封裝STC89C52RC單片機(jī)的工作模式l 掉電模式:典型功耗<0.1A,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序l 空閑模式:典型功耗2mAl 正常工作模式:典型功耗4MA7mAl 掉電模式可由外部中斷喚醒,適用于水表、氣表等電池供電系統(tǒng)及便攜設(shè)備圖1 STC89C52RC引腳STC89C52RC引腳功能說明VCC(40引腳):電源電壓VSS(20引腳):接地P0端口(P0.0P0.7,3932引腳):P

13、0口是一個漏極開路的8位雙向I/O口。作為輸出端口,每個引腳能驅(qū)動8個TTL負(fù)載,對端口P0寫入“1”時,可以作為高阻抗輸入。在訪問外部程序和數(shù)據(jù)存儲器時,P0口也可以提供低8位地址和8位數(shù)據(jù)的復(fù)用總線。此時,P0口內(nèi)部上拉電阻有效。在Flash ROM編程時,P0端口接收指令字節(jié);而在校驗程序時,則輸出指令字節(jié)。驗證時,要求外接上拉電阻。P1端口(P1.0P1.7,18引腳):P1口是一個帶內(nèi)部上拉電阻的8位雙向I/O口。P1的輸出緩沖器可驅(qū)動(吸收或者輸出電流方式)4個TTL輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這是可用作輸入口。P1口作輸入口使用時,因為有內(nèi)部上拉電阻

14、,那些被外部拉低的引腳會輸出一個電流(IIL)。此外,P1.0和P1.1還可以作為定時器/計數(shù)器2的外部技術(shù)輸入(P1.0/T2)和定時器/計數(shù)器2的觸發(fā)輸入(P1.1/T2EX),具體參見下表:在對Flash ROM編程和程序校驗時,P1接收低8位地址。表1 P1.0和P1.1引腳復(fù)用功能引腳號功能特性P1.0T2(定時器/計數(shù)器2外部計數(shù)輸入),時鐘輸出P1.1T2EX(定時器/計數(shù)器2捕獲/重裝觸發(fā)和方向控制)P2端口(P2.0P2.7,2128引腳):P2口是一個帶內(nèi)部上拉電阻的8位雙向I/O端口。P2的輸出緩沖器可以驅(qū)動(吸收或輸出電流方式)4個TTL輸入。對端口寫入1時,通過內(nèi)部的

15、上拉電阻把端口拉到高電平,這時可用作輸入口。P2作為輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流(IIL)。在訪問外部程序存儲器和16位地址的外部數(shù)據(jù)存儲器(如執(zhí)行“MOVX DPTR”指令)時,P2送出高8位地址。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行“MOVX R1”指令)時,P2口引腳上的內(nèi)容(就是專用寄存器(SFR)區(qū)中的P2寄存器的內(nèi)容),在整個訪問期間不會改變。在對Flash ROM編程和程序校驗期間,P2也接收高位地址和一些控制信號。P3端口(P3.0P3.7,1017引腳):P3是一個帶內(nèi)部上拉電阻的8位雙向I/O端口。P3的輸出緩沖器可驅(qū)動(吸收

16、或輸出電流方式)4個TTL輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。P3做輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸入一個電流(IIL)。在對Flash ROM編程或程序校驗時,P3還接收一些控制信號。P3口除作為一般I/O口外,還有其他一些復(fù)用功能,如下表所示:表2 P3口引腳復(fù)用功能引腳號復(fù)用功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷0)P3.3INT1(外部中斷1)P3.4T0(定時器0的外部輸入)P3.5T1(定時器1的外部輸入)P3.6WR(外部數(shù)據(jù)存儲器寫選通)P3.7RD(外部數(shù)據(jù)

17、存儲器讀選通)RST(9引腳):復(fù)位輸入。當(dāng)輸入連續(xù)兩個機(jī)器周期以上高電平時為有效,用來完成單片機(jī)單片機(jī)的復(fù)位初始化操作。看門狗計時完成后,RST引腳輸出96個晶振周期的高電平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能無效。DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平有效。ALE/PROG(30引腳):地址鎖存控制信號(ALE)是訪問外部程序存儲器時,鎖存低8位地址的輸出脈沖。在Flash編程時,此引腳(PROG)也用作編程輸入脈沖。在一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時器或時鐘使用。然而,特別強(qiáng)調(diào),在每次訪問外部數(shù)據(jù)存儲器時,ALE脈沖將會跳過。

18、如果需要,通過將地址位8EH的SFR的第0位置“1”,ALE操作將無效。這一位置“1”,ALE僅在執(zhí)行MOVX或MOV指令時有效。否則,ALE將被微弱拉高。這個ALE使能標(biāo)志位(地址位8EH的SFR的第0位)的設(shè)置對微控制器處于外部執(zhí)行模式下無效。 PSEN(29引腳):外部程序存儲器選通信號(PSEN)是外部程序存儲器選通信號。當(dāng)AT89C51RC從外部程序存儲器執(zhí)行外部代碼時,PSEN在每個機(jī)器周期被激活兩次,而訪問外部數(shù)據(jù)存儲器時,PSEN將不被激活。 EA/VPP(31引腳):訪問外部程序存儲器控制信號。為使能從0000H到FFFFH的外部程序存儲器讀取指令,EA必須接GND。注意加密

19、方式1時,EA將內(nèi)部鎖定位RESET。為了執(zhí)行內(nèi)部程序指令,EA應(yīng)該接VCC。在Flash編程期間,EA也接收12伏VPP電壓。XTAL1(19引腳):振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。XTAL2(18引腳):振蕩器反相放大器的輸入端。3.2.2 LED數(shù)碼管我們最常用的是七段式和八段式LED數(shù)碼管,八段比七段多了一個小數(shù)點(diǎn),其他的基本相同。所謂的八段就是指數(shù)碼管里有八個小LED發(fā)光二極管,通過控制不同的LED的亮滅來顯示出不同的字形。數(shù)碼管分為供陰極和共陽極兩種類型,其實共陰極就是將八個LED的陰極連在一起,讓其接地,這樣給任何一個LED的另一端高電平,他便能點(diǎn)亮,而共陽極就是將八

20、個LED的陽極連在一起。我們組使用的是共陰極。數(shù)碼管有靜態(tài)顯示和動態(tài)顯示兩種形。動態(tài)是將所有數(shù)碼管的8個顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出字形,取決于單片機(jī)對位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會亮。通過分時輪流控制各個數(shù)碼管的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。在輪流顯示過程中,每位數(shù)碼管的點(diǎn)亮

21、時間為12ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實際上各位數(shù)碼管并非同時點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低,當(dāng)顯示器位數(shù)較多時,一般采用動態(tài)顯示方法。3.3 復(fù)位電路復(fù)位方式有多種,本設(shè)計采用按鍵復(fù)位。接線圖如圖程序3.1復(fù)位電路,在設(shè)定的定時時間內(nèi),89C52必須在RST引腳產(chǎn)生一個由高到低的電平變化,以清內(nèi)部定時器. 圖2 復(fù)位電路3.4晶振電路晶振電路原理圖如圖3:圖3 晶振模塊原理圖選取原則:傳統(tǒng)做法,但能夠?qū)崿F(xiàn)所需,即最簡單也最是實用。電容選取30pF,

22、晶振為12MHz。4.軟件設(shè)計4.1 軟件功能模塊 鍵盤掃描模塊、鍵盤處理模塊、主程序、數(shù)碼管顯示模塊、計數(shù)器計數(shù)紅綠燈切換模塊、緊急車模塊4.2 系統(tǒng)工作流程設(shè)計4.2.1紅綠燈工作模式系統(tǒng)啟動后,系統(tǒng)按程序給定的時間工作,即東西向通行30秒,南北向通行25秒,黃燈亮5秒,工作模式如表所示。首先東西向通行,然后南北向通行,如此循環(huán)。紅綠燈工作模式如表3所示:表3 紅綠燈工作模式紅綠燈工作模式東西方向綠燈亮25s后黃燈閃爍5s紅燈亮30s南北方向紅燈亮30s綠燈亮25s后黃燈閃爍5s4.2.2系統(tǒng)流程圖圖4 系統(tǒng)流程圖5. 測試、數(shù)據(jù)及結(jié)果分析5.1 狀態(tài)燈顯示測試 當(dāng)電路連接完畢后,將寫好的

23、測試程序在電腦上的KEIL軟件生成HEX文件。5.2 數(shù)碼管的測試將串口的和電路板上的接口連接,將寫好的測試程序通過串口連接線刷寫到單片機(jī)的ROM中,然后給單片機(jī)上電即可。5.3 整體電路測試系統(tǒng)上電,刷寫好程序即可開始測試,觀測數(shù)碼管和發(fā)光二極管的顯示是否按所編程序的要求進(jìn)行, 燈的顯示亮度和數(shù)碼管的亮度是否正常,同時觀察倒計的計數(shù)是否正常。設(shè)計心得體會【軟件】屈豆:此次設(shè)計我負(fù)責(zé)的主要是軟件方案的設(shè)計以及仿真部分,從考試前知道有課程設(shè)計這件事我就開始準(zhǔn)備了,所以我并沒有感覺到時間緊迫。首先是編程,雖然我們設(shè)計的交通燈功能結(jié)構(gòu)都比較簡單,但這是我第一次編這么長的程序,心理很沒底。先找了一個類

24、似的程序根據(jù)我門的實際情況進(jìn)行反復(fù)的修改,同時和實際情況相對比設(shè)置參數(shù),終于在電腦上把源程序沒有錯誤的生成了。此時心里就有一股成功的喜悅。經(jīng)過查閱資料,我把交通燈的系統(tǒng)電路圖設(shè)計出來,用Keil和Proteus軟件成功的仿真出來,此時我想我們已經(jīng)成功了一半。剩下的環(huán)節(jié)就是這一周做實物了。實物焊完之后,調(diào)試的是時候出現(xiàn)了一些問題,主要是驅(qū)動管沒連好,經(jīng)過檢查發(fā)現(xiàn)驅(qū)動管的輸入控制引腳沒有接。通過這次課設(shè),讓我明白了凡事不能眼高手低,理論上的東西只有通過實際的操作,在實際的操作中才能進(jìn)一步深刻的領(lǐng)悟,同時也加深了對課本的理解,激發(fā)了我們對單片機(jī)的學(xué)習(xí)興趣。我想這是這次課設(shè)的最重要的目的。此外,這次課

25、設(shè)讓我明白了團(tuán)隊合作的重要性,兩人一組,各有分工,相互合作,發(fā)揮每個人的特長為團(tuán)隊做貢獻(xiàn),這是我們設(shè)計成功的最重要的原因?!居布繌埰缕拢哼@次的課程設(shè)計已接近尾聲,此刻我是懷著無比激動的心情寫下我的心得體會的,因為在今天就在剛才,經(jīng)過我和屈豆同學(xué)三天的努力,我們的設(shè)計終于能夠正常運(yùn)行了,這次我們是用52單片機(jī)控制模仿的一個十字路口交通燈的變化情況,我主要負(fù)責(zé)硬件設(shè)計及焊接和部分連線方面的問題,在此過程中我們遇到了好多問題,其中有知識方面欠缺造成的,也有粗心造成的,但經(jīng)過我們的努力一切問題都解決了。 第一個問題就是對元器件的不熟悉,如在焊接時不清楚2位制八段式LED數(shù)碼管引腳的分布情況,導(dǎo)致無法

26、接線,最后是通過請教研究生學(xué)長才弄清楚的,又比如我們不知道復(fù)位開關(guān)的接法,后來是看一個同學(xué)焊接好的電路板才知道只需要接兩個對角就行了。 第二個問題就是在我們連接好線路后發(fā)現(xiàn)表示紅綠等的二極管亮度非常弱,我們以為是電池電量不足,但我們不管是換新電池還是換穩(wěn)壓電源,它亮度依舊很小,最后是二班一個同學(xué)說可能是我們二極管接的電阻過大(當(dāng)時接的是1K的),我們換成0.2K的電阻亮度有所增加,但依舊很弱,最后我拆了一路的電阻,再演示時那一路亮度比別的都亮,所以我就拆了所有二極管的電阻。 第三個問題,也是我們遇到的最大的問題,這個問題一直困擾了我們兩天才終于解決,就是在我們焊接好所有元器件,連接好線路通電后

27、LED是上半部分有顯示,下半部分沒有顯示,我們檢查了好多遍程序和接線,都沒有問題,正在一籌莫展之際,忽然發(fā)現(xiàn)我們用的電路板的最外圍兩圈孔是串接到一起的,剛好我們的LED的下5個管腳是焊接在次外層的孔上,導(dǎo)致下5個腳短路(由于下5腳包括Dp腳,在本設(shè)計中Dp腳是接高電平,也就是說Dp腳所控制的“點(diǎn)”一直處于截止?fàn)顟B(tài),所以與它串接的其他四個腳也截止,導(dǎo)致 LED的下半部分沒有顯示),我們將那5個管腳挪了位置。按理說,應(yīng)該正常顯示了,但是我們又發(fā)現(xiàn)了新的問題,就是LED的“g”腳無法顯示,看了好多遍始終沒找到問題所在,最后請教了老師,在老師的指導(dǎo)下,首先將LED的各個位段依次點(diǎn)亮,證明了LED是正常

28、的,更換了電池問題依舊,最后老師提出了可能是單片機(jī)輸出引腳有問題,我交換了P06和P07結(jié)果顯示正常了,但是又不知道原因,我們依次拔掉該LED的8個腳的每根接線,發(fā)現(xiàn)在被拔掉的線所對應(yīng)的LED位段常亮(其中P07引腳拔掉后LED的“點(diǎn)”常亮,P06拔掉后LED的“g”腳常亮,說明是當(dāng)初接線時將P06與P07接反了,導(dǎo)致本應(yīng)一直處于截止?fàn)顟B(tài)的“點(diǎn)”被“g”代替了),并且證明該LED是低電平驅(qū)動。 雖然這次的課程設(shè)計只有短短一周時間,但是它系統(tǒng)得檢查了我在單片機(jī)這門課上的學(xué)習(xí)情況,并檢查了我動手能力以及理論聯(lián)系實際的能力,經(jīng)過這次課程設(shè)計,我明顯感覺到我動手能力的不足,比起科創(chuàng)實驗室的其他同學(xué)明顯

29、差好多,所以以后我應(yīng)當(dāng)注重動手能力的培養(yǎng)。還有就是心不夠細(xì),導(dǎo)致在此過程中犯了好多非智力問題,這方面也應(yīng)當(dāng)在以后的學(xué)習(xí)和工作生活中注意,細(xì)節(jié)決定成敗,不細(xì)心何談細(xì)節(jié)。【參考文獻(xiàn)】:1 張毅坤. 單片微型計算機(jī)原理及應(yīng)用M.西安電子科技大學(xué)出版社. 1998.2 柴鈺. 單片機(jī)原理應(yīng)用M.西安電子科技大學(xué)出版社. 2009.3 譚浩強(qiáng). 單片機(jī)課程設(shè)計M. 北京:清華大學(xué)出版社.1998.附錄附錄一 系統(tǒng)模擬圖:圖5 系統(tǒng)模擬圖附錄二實物圖:圖6 系統(tǒng)實物圖附錄三元件清單:表4 元件清單單片機(jī)STC89C52RC板1個共陰數(shù)碼管2個1K電阻8個發(fā)光二極管(紅、黃、綠)共12個(各3個)開關(guān)6個杜

30、邦線45根排針兩排附錄四程序清單:/*交通燈控制系統(tǒng)C語言源程序*#include <reg51.h>#define uchar unsigned char#define uint unsigned intuchar data buf4;uchar data sec_dx=20;/東西數(shù)默認(rèn)uchar data sec_nb=30;/南北默認(rèn)值uchar data set_timedx=20;uchar data set_timenb=30;int n;uchar data b;/定時器中斷次數(shù)sbit k1=P16;/定義5組開關(guān)sbit k2=P17;sbit k3=P27;s

31、bit k4=P30;sbit k5=P31;sbit Yellow_nb=P25;/南北黃燈標(biāo)志sbit Yellow_dx=P22;/東西黃燈標(biāo)志sbit Green_nb=P24;sbit Green_dx=P21;sbit Buzz=P37;bit Buzzer_Indicate;bit time=0;/燈狀態(tài)循環(huán)標(biāo)志bit set=1;/調(diào)時方向切換鍵標(biāo)志uchar code table11= /共陰極字型碼0x3f, /-00x06, /-10x5b, /-20x4f, /-30x66, /-40x6d, /-50x7d, /-60x07, /-70x7f, /-80x6f, /-

32、90x00 /-NULL;/函數(shù)的聲明部分void delay(int ms);/延時子程序void key();/按鍵掃描子程序void key_to1();/鍵處理子程序void key_to2();void key_to3();void display();/顯示子程序void logo(); /開機(jī)LOGOvoid Buzzer();/主程序void main()TMOD=0X01;TH0=0XD8;TL0=0XF0;EA=1;ET0=1;TR0=1;EX0=1;EX1=1; logo();P2=0Xc3;/ 開始默認(rèn)狀態(tài),東西綠燈,南北紅燈 sec_nb=sec_dx+5; whil

33、e(1) key(); /調(diào)用按鍵掃描程序display(); /調(diào)用顯示程序Buzzer();/函數(shù)的定義部分void key()/按鍵掃描子程序 if(k1!=1)delay(10);if(k1!=1)while(k1!=1) key_to1(); for(n=0;n<40;n+) display(); if(k2!=1)delay(10);if(k2!=1)while(k2!=1) key_to2(); for(n=0;n<40;n+) display();if(k3!=1)TR0=1; /啟動定時器Buzzer_Indicate=0;sec_nb=set_timenb;/從

34、中斷回復(fù),仍顯示設(shè)置過的數(shù)值sec_dx=set_timedx;if(time=0) P2=0X99;sec_nb=sec_dx+5; else P2=0xC3;sec_dx=sec_nb+5; if(k4!=1) delay(5);if(k4!=1) while(k4!=1);set=!set; if(k5!=1) delay(5); if(k5!=1) while(k5!=1) key_to3(); void display() /顯示子程序buf1=sec_dx/10; /第1位 東西秒十位buf2=sec_dx%10; /第2位 東西秒個位buf3=sec_nb/10; /第3位 南北

35、秒十位buf0=sec_nb%10; /第4位 南北秒個位 P1=0xff; / 初始燈為滅的 P0=0x00; P1=0xfe; /片選LCD1 P0=tablebuf1; delay(1); P1=0xff; P0=0x00; P1=0xfd; /片選LCD2 P0=tablebuf2; delay(1); P1=0xff; P0=0x00; P1=0Xfb; /片選LCD3P0=tablebuf3; delay(1);P1=0xff; P0=0x00;P1=0Xf7;P0=tablebuf0; /片選LCD4 delay(1);void time0(void) interrupt 1using 1 /定時中斷子程序b+;if(b=19) / 定時器中斷次數(shù)b=0;sec_dx-;sec_nb-;if(sec_nb<=5&&time=0) /東西黃燈閃 Green_dx=0;Yellow_dx=!Yellow_dx; if(sec_dx<=5&&time=1) /南北黃燈閃 Green_nb=0;Yellow_nb=!Yellow_nb; if(sec_dx=0&&sec_nb=5) s

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論