單片機(jī)交通燈課程設(shè)計(jì)報(bào)告_第1頁(yè)
已閱讀1頁(yè),還剩36頁(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、<p><b>  摘 要1</b></p><p><b>  1.引言2</b></p><p>  2.總體設(shè)計(jì)方案2</p><p>  2.1.設(shè)計(jì)思路2</p><p>  2.1.1.設(shè)計(jì)目的2</p><p>  2.1.2.設(shè)計(jì)

2、任務(wù)和內(nèi)容3</p><p>  2.1.3.方案比較、設(shè)計(jì)與論證3</p><p>  2.1.4.芯片簡(jiǎn)介5</p><p>  2.2.設(shè)計(jì)方框圖8</p><p>  3.設(shè)計(jì)原理分析8</p><p>  3.1.交通燈顯示時(shí)序的理論分析與計(jì)算8</p><p>  

3、3.2.交通燈顯示時(shí)間的理論分析與計(jì)算10</p><p>  3.3.電路模塊11</p><p>  3.3.1.LED數(shù)碼管顯示模塊11</p><p>  3.3.2.LED紅綠燈顯示模塊13</p><p>  3.3.3.復(fù)位電路15</p><p>  3.3.4.晶振電路16</p

4、><p><b>  4.結(jié)束語(yǔ)16</b></p><p>  5.參考文獻(xiàn)16</p><p><b>  6.附錄17</b></p><p>  6.1.附錄1:程序清單17</p><p>  6.2.附錄2:電路設(shè)計(jì)總圖22</p>

5、<p>  6.3附錄3:實(shí)物圖23</p><p><b>  摘 要</b></p><p>  交通在人們的日常生活中占有重要的地位,隨著人們社會(huì)活動(dòng)的日益頻繁,這點(diǎn)更是體現(xiàn)的淋漓盡致。交通信號(hào)燈的出現(xiàn),使交通得以有效管制,對(duì)于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。近年來隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷深入,同時(shí)帶動(dòng)傳

6、統(tǒng)控制檢測(cè)技術(shù)日益更新。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往作為一個(gè)核心部件來使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu)軟硬件結(jié)合,加以完善。</p><p>  本系統(tǒng)采用單片機(jī)AT89S52為中心器件來設(shè)計(jì)交通燈控制器,系統(tǒng)實(shí)用性強(qiáng)、操作簡(jiǎn)單、擴(kuò)展性強(qiáng)。本設(shè)計(jì)就是采用單片機(jī)模擬十字路口交通燈的各種狀態(tài)顯示以及倒計(jì)時(shí)時(shí)間。</p><p>  本設(shè)計(jì)系統(tǒng)由單片機(jī)I

7、/O口擴(kuò)展系統(tǒng)、交通燈狀態(tài)顯示系統(tǒng)、LED數(shù)碼顯示系統(tǒng)、復(fù)位電路等幾大部分組成。系統(tǒng)除基本的交通燈功能外,還具有倒計(jì)時(shí)等功能,較好的模擬實(shí)現(xiàn)了十字路口可能出現(xiàn)的狀況。</p><p>  軟件上采用C51編程,主要編寫了主程序,LED數(shù)碼管顯示程序,中斷程序延時(shí)程序等。經(jīng)過整機(jī)調(diào)試,實(shí)現(xiàn)了對(duì)十字路口交通燈的模擬。</p><p>  關(guān)鍵字:電子線路 AT89S52 LED 交通燈<

8、;/p><p><b>  引言</b></p><p>  當(dāng)今,紅綠燈安裝在各個(gè)道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段。但這一技術(shù)在19世紀(jì)就已出現(xiàn)了。</p><p>  1858年,在英國(guó)倫敦主要街頭安裝了以燃煤氣為光源的紅,藍(lán)兩色的機(jī)械扳手式信號(hào)燈,用以指揮馬車通行。這是世界上最早的交通信號(hào)燈。1868年,英國(guó)機(jī)械工程師納伊特在

9、倫敦威斯敏斯特區(qū)的議會(huì)大廈前的廣場(chǎng)上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩以旋轉(zhuǎn)式方形玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869年1月2日,煤氣燈爆炸,使警察受傷,遂被取消。</p><p>  電氣啟動(dòng)的紅綠燈出現(xiàn)在美國(guó),這種紅綠燈由紅綠黃三色圓形的投光器組成,1914年始安裝于紐約市5號(hào)大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。</p><p>  

10、1918年,又出現(xiàn)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅綠燈,一種是把壓力探測(cè)器安在地下,車輛一接近紅燈便變?yōu)榫G燈;另一種是用擴(kuò)音器來啟動(dòng)紅綠燈,司機(jī)遇紅燈時(shí)按一下嗽叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當(dāng)行人踏上對(duì)壓力敏感的路面時(shí),它就能察覺到有人要過馬路。紅外光束能把信號(hào)燈的紅燈延長(zhǎng)一段時(shí)間,推遲汽車放行,以免發(fā)生交通事故。</p><p>  信號(hào)燈的出現(xiàn),使交通得以有效管制,對(duì)于疏導(dǎo)交通流量、提高道路通行

11、能力,減少交通事故有明顯效果。1968年,聯(lián)合國(guó)《道路交通和道路標(biāo)志信號(hào)協(xié)定》對(duì)各種信號(hào)燈的含義作了規(guī)定。綠燈是通行信號(hào),面對(duì)綠燈的車輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu)先通行。紅燈是禁行信號(hào),面對(duì)紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告信號(hào),面對(duì)黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時(shí)可以進(jìn)入交叉路口。</p

12、><p><b>  總體設(shè)計(jì)方案</b></p><p><b>  設(shè)計(jì)思路</b></p><p><b>  設(shè)計(jì)目的</b></p><p> ?。?)加強(qiáng)對(duì)單片機(jī)和匯編語(yǔ)言的認(rèn)識(shí),充分掌握和理解設(shè)計(jì)各部分的工作原理、設(shè)計(jì)過程、選擇芯片器件、模塊化編程等多項(xiàng)知識(shí)。<

13、/p><p> ?。?)用單片機(jī)模擬實(shí)現(xiàn)具體應(yīng)用,使個(gè)人設(shè)計(jì)能夠真正使用。</p><p> ?。?)把理論知識(shí)與實(shí)踐相結(jié)合,充分發(fā)揮個(gè)人能力,并在實(shí)踐中鍛煉。</p><p> ?。?)提高利用已學(xué)知識(shí)分析和解決問題的能力。</p><p> ?。?)提高實(shí)踐動(dòng)手能力。</p><p><b>  設(shè)計(jì)任務(wù)和內(nèi)

14、容</b></p><p><b>  設(shè)計(jì)任務(wù)</b></p><p>  單片機(jī)采用用AT89S52芯片,使用發(fā)光二極管(紅,黃,綠)代表各個(gè)路口的交通燈,用8段數(shù)碼管對(duì)轉(zhuǎn)換時(shí)間進(jìn)行倒時(shí)(東西路口15秒,南北路口25秒,黃燈時(shí)間5秒)。</p><p><b>  設(shè)計(jì)內(nèi)容</b></p>&

15、lt;p> ?。?)設(shè)計(jì)并繪制硬件電路圖</p><p> ?。?)制作PCB并焊接好元器件</p><p> ?。?)編寫程序并將調(diào)試好的程序固化到單片機(jī)中</p><p>  方案比較、設(shè)計(jì)與論證</p><p><b>  電源提供方案</b></p><p>  為使模塊穩(wěn)定工作,須

16、有可靠電源,采用單片機(jī)控制模塊提供電源。此方案的優(yōu)點(diǎn)是系統(tǒng)簡(jiǎn)明扼要,節(jié)約成本;缺點(diǎn)是輸出功率不高。</p><p><b>  復(fù)位方案</b></p><p>  復(fù)位方式有兩種:按鍵復(fù)位與軟件復(fù)位。由考慮到程序的簡(jiǎn)潔,避免冗長(zhǎng),本設(shè)計(jì)采用按鍵復(fù)位,在芯片的復(fù)位端口外接復(fù)位電路,通過按鍵對(duì)單片機(jī)輸入一個(gè)高電平脈沖,達(dá)到復(fù)位的目的。</p><p

17、><b>  輸入方案</b></p><p><b>  方案一:</b></p><p>  采用89S52擴(kuò)展I/O 口及鍵盤,顯示等。該方案的優(yōu)點(diǎn)是:使用靈活可編程,并且有RAM,及計(jì)數(shù)器。若用該方案,可提供較多I/O 口,但操作起來稍顯復(fù)雜。</p><p><b>  

18、方案二: </b></p><p>  直接在IO口線上接上按鍵開關(guān)。因?yàn)樵O(shè)計(jì)時(shí)精簡(jiǎn)和優(yōu)化了電路,所以剩余的口資源還比較多,我們使用2個(gè)按鍵,分別是K1、K2。由于該系統(tǒng)對(duì)于交通燈及數(shù)碼管的控制,只用單片機(jī)本身的I/O 口就可實(shí)現(xiàn),且本身的計(jì)數(shù)器及RAM已經(jīng)夠用,故選擇方案二</p><p><b>  顯示界面方案</b></p><

19、;p>  該系統(tǒng)要求完成倒計(jì)時(shí)、狀態(tài)燈等功能?;谏鲜鲈?,我們考慮了三種方案:</p><p><b>  方案一:</b></p><p>  完全采用數(shù)碼管顯示。這種方案只顯示有限的符號(hào)和數(shù)碼字符,無法勝任題目要求。</p><p><b>  方案二:</b></p><p>  完全

20、采用點(diǎn)陣式LED 顯示。這種方案實(shí)現(xiàn)復(fù)雜,且須完成大量的軟件工作;但功能強(qiáng)大,可方便的顯示各種英文字符,漢字,圖形等。</p><p><b>  方案三:</b></p><p>  采用數(shù)碼管與點(diǎn)陣LED (點(diǎn)陣式和8段式LED)相結(jié)合的方法因?yàn)樵O(shè)計(jì)既要求倒計(jì)時(shí)數(shù)字輸出,又要求有狀態(tài)燈輸出等,為方便觀看并考慮到現(xiàn)實(shí)情況,用數(shù)碼管與LED燈分別顯示時(shí)間與提示信息。這

21、種方案既滿足系統(tǒng)功能要求,又減少了系統(tǒng)實(shí)現(xiàn)的復(fù)雜度。權(quán)衡利弊,第三種方案可互補(bǔ)一二方案的優(yōu)缺,我們決定采用方案三以實(shí)現(xiàn)系統(tǒng)的顯示功能。</p><p><b>  設(shè)計(jì)方框圖</b></p><p>  整個(gè)設(shè)計(jì)以AT89S52單片機(jī)為核心,由數(shù)碼管顯示,LED數(shù)碼管顯示,復(fù)位電路組成。</p><p>  硬件模塊入圖2-1。</p&g

22、t;<p><b>  交通管理的方案論證</b></p><p>  東西、南北兩干道交于一個(gè)十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道的公共停車時(shí)間。指示燈燃亮的方案如表2。</p><p>  表2說明:

23、 </p><p>  (1)當(dāng)東西方向?yàn)榧t燈,此道車輛禁止通行,東西道行人可通過;南北道為綠燈,此道車輛通過,行人禁止通行。時(shí)間為25秒。</p><p> ?。?)黃燈5秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換。 </p><p> ?。?)當(dāng)東西方向?yàn)榫G燈,此道車輛通行;南北方向?yàn)榧t燈,南北道車輛禁止通過,行人通行。時(shí)間為25秒。 </p&

24、gt;<p>  (4)這樣如上表的時(shí)間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能安全暢通的通行。</p><p><b>  芯片簡(jiǎn)介</b></p><p>  1.AT89S52單片機(jī)簡(jiǎn)介</p><p>  其引DIP封裝的腳圖如下:</p><p><b>  主要性能 </

25、b></p><p>  與MCS-51單片機(jī)產(chǎn)品兼容 、8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器、 1000次擦寫周期、 全靜態(tài)操作:0Hz~33Hz 、 三級(jí)加密程序存儲(chǔ)器 、 32個(gè)可編程I/O口線 、三個(gè)16位定時(shí)器/計(jì)數(shù)器 八個(gè)中斷源 、全雙工UART串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時(shí)器 、雙數(shù)據(jù)指針 、掉電標(biāo)識(shí)符 。</p><p><b

26、>  功能特性描述 </b></p><p>  At89s52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel 公司高密度非 易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完 全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng) 可編程Flash,使得AT89S52為眾多

27、嵌入式控制應(yīng)用系統(tǒng)提 供高靈活、超有效的解決方案。 AT89S52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線,看門狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口, 片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工 作。掉電保護(hù)方式

28、下,RAM內(nèi)容被保存,振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。8 位微控制器 8K 字節(jié)在系統(tǒng)可編程 Flash AT89S52 </p><p>  P0 口:P0口是一個(gè)8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏 </p><p>  輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。 </p><p>  當(dāng)訪問外

29、部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下, </p><p>  P0具有內(nèi)部上拉電阻。 </p><p>  在flash編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn) </p><p>  時(shí),需要外部上拉電阻。 </p><p>  P1 口:P1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙

30、向I/O 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè) </p><p>  TTL 邏輯電平。對(duì)P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 </p><p>  口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 </p><p>  此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)

31、器2 </p><p>  的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。 </p><p>  在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。 </p><p><b>  引腳號(hào)第二功能 </b></p><p>  P1.0 T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出 </p>&l

32、t;p>  P1.1 T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制) </p><p>  P1.5 MOSI(在系統(tǒng)編程用) </p><p>  P1.6 MISO(在系統(tǒng)編程用) </p><p>  P1.7 SCK(在系統(tǒng)編程用) </p><p>  P2 口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O

33、口,P2 輸出緩沖器能驅(qū)動(dòng)4 個(gè) </p><p>  TTL 邏輯電平。對(duì)P2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 </p><p>  口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 </p><p>  在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR) </p&

34、gt;<p>  時(shí),P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用 </p><p>  8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。 </p><p>  在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。 </p><p>  P3 口:P3 口是一個(gè)具有內(nèi)部上

35、拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè) </p><p>  TTL 邏輯電平。對(duì)P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 </p><p>  口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 </p><p>  P3口亦作為AT89S52特殊功能(第二功能)使用,如下表所示。 <

36、/p><p>  在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。 </p><p><b>  端口引腳 第二功能</b></p><p>  P3.0 RXD(串行輸入口)</p><p>  P3.1 TXD(串行輸出口)</p><p>  P3.2 INTO(外中斷0)</p>

37、;<p>  P3.3 INT1(外中斷1)</p><p>  P3.4 TO(定時(shí)/計(jì)數(shù)器0)</p><p>  P3.5 T1(定時(shí)/計(jì)數(shù)器1)</p><p>  P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)</p><p>  P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)</p><p>  此外,P3口

38、還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。</p><p>  RST——復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。</p><p>  ALE/PROG——當(dāng)訪問外部程存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的

39、。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。</p><p>  對(duì)FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。</p><p>  如有必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。

40、</p><p>  PSEN——程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次PSEN信號(hào)。</p><p>  EA/VPP——外部訪問允許,欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。

41、需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。</p><p>  如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。</p><p>  FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。</p><p><b>  設(shè)計(jì)方框圖</b></p&

42、gt;<p><b>  設(shè)計(jì)原理分析</b></p><p>  交通燈顯示時(shí)序的理論分析與計(jì)算</p><p>  對(duì)于一個(gè)交通路口來說,能在最短的時(shí)間內(nèi)達(dá)到最大的車流量,就算是達(dá)到了最佳的性能,我們稱在單位時(shí)間內(nèi)多能達(dá)到的最大車流為車流量,用公式:車流量= 車流 / 時(shí)間 來表示。</p><p>  先設(shè)定一些標(biāo)號(hào)如圖2-

43、1 所示。</p><p><b>  說明:</b></p><p>  此圖為直方圖,上邊為北路口燈,右邊為東路口燈,下邊為南路口燈,左邊為西路口燈。 圖2-2 所示為一種紅綠燈規(guī)則的狀態(tài)圖,分別設(shè)定為S1、S2、S3、S4,交通燈以這四的狀態(tài)為一個(gè)周期,循環(huán)執(zhí)行(見圖2-3)。</p><p><b>  圖2-1<

44、;/b></p><p>  請(qǐng)注意圖2-1b和圖2-1d,它們?cè)谝粋€(gè)時(shí)間段中四個(gè)方向都可以通車,這種狀態(tài)能在一定的時(shí)間內(nèi)達(dá)到較大的車流量,效率特別高。依據(jù)上述的車輛行駛的狀態(tài)圖,可以列出各個(gè)路口燈的邏輯表,由于相向的燈的狀態(tài)圖是一樣的,所以只需寫出相鄰路口的燈的邏輯表;根據(jù)圖2-3 可以看出,相鄰路口的燈它們的狀態(tài)在相位上相差180°。因此最終只需寫出一組S1、S2、S3、S4的邏輯狀態(tài)表。&

45、lt;/p><p><b>  如表2-1 所示。</b></p><p><b>  表2-1</b></p><p>  表中的“×”代表是紅燈亮(也代表邏輯上的0),“√”是代表綠燈亮(也代表邏輯上的1),依上表,就可以向相應(yīng)的端口送邏輯值。</p><p>  交通燈顯示時(shí)間的理論分析

46、與計(jì)算</p><p>  東西和南北方向的放行時(shí)間的長(zhǎng)短是依據(jù)路口的各個(gè)方向平時(shí)的車流量來設(shè)定,并且S1、S2、S3、S4各個(gè)狀態(tài)保持的時(shí)間之有嚴(yán)格的對(duì)應(yīng)關(guān)系,其公式如下示。T-S1+T-S2=T-S3T-S2=T-S4T-S1=T-S3我們可以依據(jù)上述的標(biāo)準(zhǔn)來改變車輛的放行時(shí)間。按照一般的規(guī)則,一個(gè)十字路口可分為主干道和次干道,主干道的放行時(shí)間大于次干道的放行時(shí)間,我們?cè)O(shè)定值時(shí)也應(yīng)以此為參考</

47、p><p><b>  電路模塊</b></p><p>  LED數(shù)碼管顯示模塊</p><p>  靜態(tài)顯示方式:靜態(tài)顯示方式是指當(dāng)顯示器顯示某一字符時(shí),發(fā)光二極管的位選始終被選中。在這種顯示方式下,每一個(gè)LED數(shù)碼管顯示器都需要一個(gè)8位的輸出口進(jìn)行控制。由于單片機(jī)本身提供的I/O口有限,實(shí)際使用中,通常通過擴(kuò)展I/O口的形式解決輸出口數(shù)量不足

48、的問題。 靜態(tài)顯示主要的優(yōu)點(diǎn)是顯示穩(wěn)定,在發(fā)光二極管導(dǎo)通電流一定的情況下顯示器的亮度大,系統(tǒng)運(yùn)行過程中,在需要更新顯示內(nèi)容時(shí),CPU才去執(zhí)行顯示更新子程序,這樣既節(jié)約了CPU的時(shí)間,又提高了CPU的工作效率。其不足之處是占用硬件資源較多,每個(gè)LED數(shù)碼管需要獨(dú)占8條輸出線。隨著顯示器位數(shù)的增加,需要的I/O口線也將增加。 (2)動(dòng)態(tài)顯示方式:動(dòng)態(tài)顯示方式是指一位一位地輪流點(diǎn)亮每位顯示器(稱為掃描),即每個(gè)數(shù)碼管的位選被輪流選中,多個(gè)

49、數(shù)碼管公用一組段選,段選數(shù)據(jù)僅對(duì)位選選中的數(shù)碼管有效。對(duì)于每一位顯示器來說,每隔一段時(shí)間點(diǎn)亮一次。顯示器的亮度既與導(dǎo)通電流有關(guān),也與點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān)。通過調(diào)整電流和時(shí)間參數(shù),可以既保證亮度,又保證顯示。若顯示器的位數(shù)不大于8位,則顯示器的公共端只需一個(gè)8位I/O口進(jìn)行動(dòng)態(tài)掃描(稱為掃描口),控制每位顯</p><p><b>  數(shù)碼管顯示子程序:</b></p>

50、<p>  DISP: MOV A,R2 </p><p>  MOV B,#10</p><p><b>  DIV AB</b></p><p>  MOV 60H,A</p><p>  MOV 61H,B</p><p

51、>  MOV A,R3</p><p>  MOV B,#10</p><p><b>  DIV AB</b></p><p>  MOV 62H,A</p><p>  MOV 63H,B</p><p>  MOV 40H,#04H</p>

52、;<p>  MOV R5,#0FEH</p><p>  MOV R0,#60H</p><p>  LLP: MOV A,@R0</p><p>  MOV DPTR,#TABLE</p><p>  MOVC A,@A+DPTR</p><p>  MOV P0,

53、A</p><p>  MOV A,R5</p><p>  MOV P2,A</p><p>  LCALL DELAY1</p><p>  MOV P2, #0FFH ;令顯示器熄滅,以免產(chǎn)生殘影</p><p><b>  RL A</b&g

54、t;</p><p>  MOV R5,A</p><p><b>  INC R0</b></p><p>  DJNZ 40H,LLP</p><p><b>  RET</b></p><p>  DELAY1:

55、 ;延時(shí)子程序</p><p>  MOV R4,#12</p><p>  DL2: MOV R7,#12</p><p>  DJNZ R7,$</p><p>  DJNZ R4,DL2</p><p><b>  RET</b></p>

56、<p>  TABLE:DB 3FH,24H,5dH,75H,66H</p><p>  DB 73H,7bH,25H,7fH,77H</p><p><b>  END</b></p><p>  LED紅綠燈顯示模塊</p><p><b>  本實(shí)驗(yàn)有四種狀態(tài):</b>

57、;</p><p>  狀態(tài)1, 東西綠燈亮,南北紅燈亮,此時(shí)P1.0口—P1.7口的高低電平為#0BBH。</p><p><b>  子程序:</b></p><p>  ST1: MOV P1,#0EBH ;第一個(gè)狀態(tài),主干道亮綠燈、支干道亮紅燈;</p><p>  CJN

58、E R1,#0FFH,TZ1</p><p>  MOV R1,#00H</p><p>  DEC 20H</p><p>  DEC 23H</p><p>  TZ1: MOV R2,20H</p><p>  MOV R3,23H</p><p>  

59、LCALL DISP ;調(diào)用顯示子程序。</p><p>  MOV A,20H</p><p>  CJNE A,#00H,ST1</p><p>  MOV 20H,#25</p><p>  狀態(tài)2, 東西黃燈亮,南北紅燈亮,此時(shí)P1.0口—P1.7口的高低電平為#0BDH。<

60、;/p><p><b>  子程序:</b></p><p>  ST2: MOV P1,#0EDH ;第二個(gè)狀態(tài),主干道亮黃燈、支干道亮紅燈;</p><p>  CJNE R1,#0FFH,TZ2</p><p>  MOV R1,#00H</p><p

61、>  DEC 21H</p><p>  DEC 23H</p><p>  TZ2: MOV R2,21H</p><p>  MOV R3,23H</p><p>  LCALL DISP ;調(diào)用顯示子程序。</p><p>  MOV

62、A,21H</p><p>  CJNE A,#00H,ST2</p><p>  MOV 21H,#05</p><p>  狀態(tài)3, 東西紅燈亮,南北綠燈亮,此時(shí)P1.0口—P1.7口的高低電平為#0DEH。</p><p><b>  子程序:</b></p><p>  ST3:

63、 MOV P1,#0BEH ;第三個(gè)狀態(tài),主干道亮紅燈、支干道亮綠燈;</p><p>  CJNE R1,#0FFH,TZ3</p><p>  MOV R1,#00H</p><p>  DEC 24H</p><p>  DEC 22H</p><p>

64、  TZ3: MOV R2,24H</p><p>  MOV R3,22H</p><p>  LCALL DISP ;調(diào)用顯示子程序。</p><p>  MOV A,22H</p><p>  CJNE A,#00H,ST3</p><p>  MO

65、V 22H,#15</p><p>  狀態(tài)4, 東西紅燈亮,南北黃燈亮,此時(shí)P1.0口—P1.7口的高低電平為#0EEH。再采用顯示子程序與延時(shí)子程序可使LED顯示燈按照要求點(diǎn)亮。</p><p><b>  子程序:</b></p><p>  ST4: MOV P1,#0DEH ;第四個(gè)狀態(tài),主

66、干道 亮紅燈、支干道亮黃燈;</p><p>  CJNE R1,#0FFH,TZ4</p><p>  MOV R1,#00H</p><p>  DEC 24H</p><p>  DEC 21H</p><p>  TZ4: MOV R2,24H</p><p&g

67、t;  MOV R3,21H</p><p>  LCALL DISP ;調(diào)用顯示子程序。</p><p>  MOV A,21H</p><p>  CJNE A,#00H,ST4</p><p>  MOV 21H,#05</p><p>  MOV

68、 24H,#20</p><p>  LJMP ST1</p><p><b>  復(fù)位電路</b></p><p>  復(fù)位方式有多種,本設(shè)計(jì)采用按鍵復(fù)位。接線圖如圖程序3.1復(fù)位電路,</p><p><b>  框圖</b></p><p>  在設(shè)定的定時(shí)時(shí)間內(nèi)

69、,89S52必須在RST引腳產(chǎn)生一個(gè)由高到低的電平變化,以清內(nèi)部定時(shí)器. </p><p><b>  晶振電路</b></p><p>  晶振電路原理圖如3-2:</p><p>  3-2 晶振模塊原理圖</p><p>  選取原則:傳統(tǒng)做法,但能夠?qū)崿F(xiàn)所需,即最簡(jiǎn)單也最是實(shí)用。電容選取30pF,晶振為30MHz

70、。</p><p><b>  結(jié)束語(yǔ)</b></p><p>  通過這次課程設(shè)計(jì),使我得到了一次用專業(yè)知識(shí)、專業(yè)技能分析和解決問題全面系統(tǒng)的鍛煉。使我在單片機(jī)的基本原理、單片機(jī)應(yīng)用系統(tǒng)開發(fā)過程,以及在常用編程設(shè)計(jì)思路技巧(特別是匯編語(yǔ)言)的掌握方面都能向前邁了一大步。本次課程設(shè)計(jì)的過程是艱辛的,不過收獲卻是很大的。</p><p>  在設(shè)

71、計(jì)過程中,會(huì)出現(xiàn)了一些問題,但都是常見的小問題,如:代碼中雙引號(hào)的使用并不是在英語(yǔ)書寫狀態(tài)下,輸入字母出錯(cuò)等,在調(diào)試時(shí)出現(xiàn)異常,不過這些都是經(jīng)常性錯(cuò)誤,經(jīng)過調(diào)試修改都一一解決,程序順利完成,并實(shí)現(xiàn)了其功能。</p><p>  綜合課程設(shè)計(jì)讓我把以前學(xué)習(xí)到的知識(shí)得到鞏固和進(jìn)一步的提高認(rèn)識(shí),對(duì)已有知識(shí)有了更進(jìn)一步的理解和認(rèn)識(shí)。在此,由于自身能力有限,在課程設(shè)計(jì)中碰到了很多的問題,我通過查閱相關(guān)書籍、資料以及和周圍同

72、學(xué)交流。</p><p>  由于使用的是單片機(jī)作為核心的控制元件,使得電路的可靠性比較高,功能也比較強(qiáng)大,而且可以隨時(shí)的更新系統(tǒng),進(jìn)行不同狀態(tài)的組合。但是在我們?cè)O(shè)計(jì)和調(diào)試的過程中,也發(fā)現(xiàn)了一些問題,譬如紅燈和綠燈的切換還不夠迅速,紅綠燈規(guī)則不效率還不是很高等等,這需要在實(shí)踐中進(jìn)一步完善。</p><p>  當(dāng)然,通過這次課程設(shè)計(jì),我也發(fā)現(xiàn)了自身的很多不足之處,在以后的學(xué)習(xí)中,我會(huì)不斷的

73、完善自我。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1].李朝青.單片機(jī)原理及接口技術(shù)(第3版).2005年10月</p><p>  [2].蔡朝洋.單片機(jī)控制實(shí)習(xí)與專題制作</p><p>  [3].樓然苗.單片機(jī)課程設(shè)計(jì)指導(dǎo)</p><p>  [4].趙廣林.

74、電路設(shè)計(jì)與制版</p><p><b>  附錄</b></p><p><b>  附錄1:程序清單</b></p><p>  ORG 0000H</p><p>  LJMP MAIN</p><p>  ORG 0003H</p><

75、;p>  LJMP INTT0</p><p>  ORG 0013H</p><p>  LJMP INTT1</p><p>  ORG 001BH</p><p>  LJMP TT1</p><p>  ORG 0100H</p><p>  TT1:

76、 MOV TH1,#0D8H ;定時(shí)器1,定時(shí)10us</p><p>  MOV TL1,#0F0H</p><p>  DJNZ R6,EXIT</p><p>  MOV R6,#100 ;定時(shí)器定時(shí)100次</p><p>  MOV R1,

77、#0FFH</p><p>  EXIT: RETI</p><p>  INTT0:MOV P1,#0BEH ;外部中斷0,</p><p>  JB P3.4,$</p><p><b>  RETI</b></p><p>  INTT1:MO

78、V P1,#0BBH ;外部中斷1,</p><p>  JB P3.4,$</p><p><b>  RETI</b></p><p>  ORG 1000H</p><p>  MAIN: MOV R6,#100 ;主程序

79、;</p><p>  MOV R1,#00H</p><p>  MOV TMOD,#10H ;初始化</p><p>  MOV TH1,#0D8H</p><p>  MOV TL1,#0F0H</p><p>  MOV IE,#8DH</p&g

80、t;<p>  MOV 20H,#25</p><p>  MOV 21H,#5</p><p>  MOV 22H,#15</p><p>  MOV 23H,#30</p><p>  MOV 24H,#20</p><p>  SETB TR1</p>

81、<p>  ST1: MOV P1,#0EBH ;第一個(gè)狀態(tài),主干道亮綠燈、支干道亮紅燈;</p><p>  CJNE R1,#0FFH,TZ1</p><p>  MOV R1,#00H</p><p>  DEC 20H</p><p>  DEC 23H<

82、/p><p>  TZ1: MOV R2,20H</p><p>  MOV R3,23H</p><p>  LCALL DISP ;調(diào)用顯示子程序。</p><p>  MOV A,20H</p><p>  CJNE A,#00H,ST1</p&g

83、t;<p>  MOV 20H,#25</p><p>  ST2: MOV P1,#0EDH ;第二個(gè)狀態(tài),主干道亮黃燈、支干道亮紅燈;</p><p>  CJNE R1,#0FFH,TZ2</p><p>  MOV R1,#00H</p><p>  DEC 2

84、1H</p><p>  DEC 23H</p><p>  TZ2: MOV R2,21H</p><p>  MOV R3,23H</p><p>  LCALL DISP ;調(diào)用顯示子程序。</p><p>  MOV A,21H</p>

85、;<p>  CJNE A,#00H,ST2</p><p>  MOV 21H,#05</p><p>  MOV 23H,#30</p><p>  ST3: MOV P1,#0BEH ;第三個(gè)狀態(tài),主干道亮紅燈、支干道亮綠燈;</p><p>  CJNE R1,#

86、0FFH,TZ3</p><p>  MOV R1,#00H</p><p>  DEC 24H</p><p>  DEC 22H</p><p>  TZ3: MOV R2,24H</p><p>  MOV R3,22H</p><p>  LCALL D

87、ISP ;調(diào)用顯示子程序。</p><p>  MOV A,22H</p><p>  CJNE A,#00H,ST3</p><p>  MOV 22H,#15</p><p>  ST4: MOV P1,#0DEH ;第四個(gè)狀態(tài),主干道亮紅燈、支干

88、道亮黃燈;</p><p>  CJNE R1,#0FFH,TZ4</p><p>  MOV R1,#00H</p><p>  DEC 24H</p><p>  DEC 21H</p><p>  TZ4: MOV R2,24H</p><p>  MOV

89、 R3,21H</p><p>  LCALL DISP ;調(diào)用顯示子程序。</p><p>  MOV A,21H</p><p>  CJNE A,#00H,ST4</p><p>  MOV 21H,#05</p><p>  MOV 24H,#20

90、</p><p>  LJMP ST1 ;跳轉(zhuǎn)到第一個(gè)狀態(tài)。</p><p>  DISP: MOV A,R2 ;顯示子程序。</p><p>  MOV B,#10</p><p><b>  DIV AB</b><

91、;/p><p>  MOV 60H,A</p><p>  MOV 61H,B</p><p>  MOV A,R3</p><p>  MOV B,#10</p><p><b>  DIV AB</b></p><p>  MOV 62H

92、,A</p><p>  MOV 63H,B</p><p>  MOV 40H,#04H</p><p>  MOV R5,#0FEH</p><p>  MOV R0,#60H</p><p>  LLP: MOV A,@R0</p><p>  MOV

93、 DPTR,#TABLE</p><p>  MOVC A,@A+DPTR</p><p>  MOV P0,A</p><p>  MOV A,R5</p><p>  MOV P2,A</p><p>  LCALL DELAY1</p><p>  MOV P

94、2, #0FFH; 注意,這里是程序修改的地方,令顯示器熄滅,以免產(chǎn)生殘影</p><p><b>  RL A</b></p><p>  MOV R5,A</p><p><b>  INC R0</b></p><p>  DJNZ 40H,LLP</p>

95、<p><b>  RET</b></p><p>  DELAY1: ;延時(shí)子程序</p><p>  MOV R4,#12</p><p>  DL2: MOV R7,#12</p><p>  DJNZ R7,$</p&g

96、t;<p>  DJNZ R4,DL2</p><p><b>  RET</b></p><p>  TABLE:DB 3FH,24H,5dH,75H,66H</p><p>  DB 73H,7bH,25H,7fH,77H</p><p><b>  END </b&

溫馨提示

  • 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ù)僅提供信息存儲(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)論