版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 單片機(jī)課程設(shè)計(jì)報(bào)告</b></p><p> 班 級(jí): 電氣1101 </p><p> 姓 名: </p><p> 學(xué) 號(hào): </p><p> 指導(dǎo)教師:
2、 </p><p> 撰寫日期: 2012.12.13 </p><p><b> 目錄</b></p><p> 第一章 交通燈課程設(shè)計(jì)功能描述2</p><p> 第二章 課程設(shè)計(jì)分析設(shè)計(jì)2</p><p><b> 2.1技術(shù)指標(biāo)2</b&g
3、t;</p><p><b> 2.2設(shè)計(jì)分析3</b></p><p> 第三章 繪制硬件圖并對(duì)硬件電路進(jìn)行說明3</p><p> 3.1 MCS-51單片機(jī)芯片引腳位置及功能符號(hào)3</p><p> 3.2 51系列單片機(jī)運(yùn)行的硬件條件4</p><p> 3.3 單片機(jī)
4、的特點(diǎn)與應(yīng)用4</p><p> 第四章 控制系統(tǒng)程序設(shè)計(jì)5</p><p><b> 4.1軟件設(shè)計(jì)5</b></p><p> 4.2電路連接分配6</p><p> 4.3主程序流程圖7</p><p> 第五章 程序的源代碼清單7</p><p&
5、gt; 第六章 上機(jī)調(diào)試運(yùn)行結(jié)果及分析17</p><p> 6.1交通燈接線圖17</p><p> 第七章 課程設(shè)計(jì)的經(jīng)驗(yàn)教訓(xùn)總結(jié)18</p><p><b> 參考文獻(xiàn):19</b></p><p><b> 附錄19</b></p><p> 第
6、一章 交通燈課程設(shè)計(jì)功能描述</p><p> 紅黃綠交通燈控制器采用單片機(jī)及程序存儲(chǔ)器的擴(kuò)展控制,實(shí)現(xiàn)控制器的功能要求,例如紅黃綠燈的交替閃爍,定時(shí)等等。單片機(jī)將CPU,存儲(chǔ)器,定時(shí)器/計(jì)數(shù)器及各接口電路組成,具有良好的性價(jià)比。本控制器可對(duì)紅綠燈通過時(shí)間進(jìn)行加減,還可在緊急時(shí)刻進(jìn)行手動(dòng)控制,緊急情況下可開放南北或東西道路,,實(shí)施道路路況的控制。 交通信號(hào)燈控制方式很多。本系統(tǒng)采用單片機(jī)AT98S52來設(shè)計(jì)交通
7、燈控制器,實(shí)現(xiàn)了通過51芯片的P1口設(shè)置紅、綠燈亮?xí)r間的功能;紅綠燈循環(huán)點(diǎn)亮,倒計(jì)時(shí)剩3秒時(shí)黃燈閃爍警示;紅綠燈時(shí)間通過51單片機(jī)的P0口輸出到雙位數(shù)碼管顯示。本系統(tǒng)實(shí)用性強(qiáng)、操作簡(jiǎn)單、擴(kuò)展功能強(qiáng)。</p><p> 第二章 課程設(shè)計(jì)分析設(shè)計(jì)</p><p><b> 2.1技術(shù)指標(biāo)</b></p><p> 設(shè)計(jì)一個(gè)十字路口的交通燈控制
8、電路,每條道路上各配有一組紅、黃、綠交通信號(hào)燈,其中紅燈亮,表示該道路禁止通行;黃燈亮表示該道路上未過停車線的車輛禁止通行,已過停車線的車輛繼續(xù)通行;綠燈表示該道路允許通行。該電路自動(dòng)控制十字路口兩組紅、黃、綠交通燈的狀態(tài)轉(zhuǎn)換,實(shí)現(xiàn)十字路口自動(dòng)化。</p><p><b> 2.2設(shè)計(jì)分析</b></p><p> 實(shí)現(xiàn)紅、綠、黃燈的循環(huán)控制。要實(shí)現(xiàn)此功能需要表示
9、三種不同顏色的LED燈分別接在P0個(gè)管腳,用軟件實(shí)現(xiàn)。 要求東西車道和南北車道上的車輛交替運(yùn)行,每次通行時(shí)間為20s;根據(jù)設(shè)計(jì)要求和技術(shù)指標(biāo)設(shè)計(jì)好電路;繪制硬件圖并對(duì)硬件電路進(jìn)行說明。</p><p> 第三章 繪制硬件圖并對(duì)硬件電路進(jìn)行說明</p><p> 3.1 MCS-51單片機(jī)芯片引腳位置及功能符號(hào)</p><p><b> 如下圖所示。&
10、lt;/b></p><p> 51單片機(jī)系統(tǒng)的引腳說明: 51單片機(jī)89c51采用40Pin封裝的列直接DIP結(jié)構(gòu), 40個(gè)引腳中,正電源和底線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用。</p><p> 3.2 51系列單片機(jī)運(yùn)行的硬件條件</p><p> 3.3 單片機(jī)的特點(diǎn)與應(yīng)用</p>
11、<p><b> 單片機(jī)的特點(diǎn): </b></p><p> (1)控制功能強(qiáng); </p><p> ?。?)抗干擾性強(qiáng),可靠性高,工作溫度范圍寬; </p><p> (3)開發(fā)周期短,性價(jià)比高,易于產(chǎn)品化;</p><p> 單片機(jī)的應(yīng)用領(lǐng)域: </p><p> ?。?)
12、智能化儀表 ;</p><p> ?。?)實(shí)時(shí)工業(yè)控制 ;</p><p> ?。?)機(jī)電一體化產(chǎn)品;</p><p><b> ?。?)智能接口; </b></p><p> ?。?)辦公自動(dòng)化; </p><p><b> ?。?)商業(yè)營(yíng)銷 ;</b></p>
13、<p><b> ?。?)家用電器;</b></p><p> 第四章 控制系統(tǒng)程序設(shè)計(jì)</p><p><b> 4.1軟件設(shè)計(jì)</b></p><p> 先了解實(shí)際交通燈的變化規(guī)律,假設(shè)一個(gè)十字路口為東西南北走向。初始狀態(tài)0為東西紅燈,南北紅燈;然后轉(zhuǎn)狀態(tài)1南北綠燈通車,東西紅燈。過一段時(shí)間轉(zhuǎn)狀態(tài)
14、2,南北綠燈閃幾次轉(zhuǎn)黃燈,延時(shí)幾秒,東西仍然紅燈。再轉(zhuǎn)狀態(tài)3,東西綠燈通車,南北紅燈。過一段時(shí)間轉(zhuǎn)狀態(tài)4,東西綠燈閃幾次轉(zhuǎn)亮黃燈,延時(shí)幾秒,南北仍然紅燈,最后回到狀態(tài)1,不斷循環(huán)。</p><p> ?。?)當(dāng)東西方向?yàn)榧t燈,此道車輛禁止通行,東西道行人可通過;南北</p><p> 道為綠燈,此道車輛通過,行人禁止通行。時(shí)間為20秒。</p><p> ?。?)
15、黃燈閃爍3秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換。</p><p> ?。?)當(dāng)東西方向?yàn)榫G燈,此道車輛通行;南北方向?yàn)榧t燈,南北道車輛</p><p> 禁止通過,行人通行。時(shí)間為20秒。 東西方向車流大 通行時(shí)間長(zhǎng)。 (4)這樣如上表的時(shí)間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車 </p><p> 輛就能安全暢通的通行。</p>&
16、lt;p><b> 4.2電路連接分配</b></p><p><b> 4.3主程序流程圖</b></p><p> 第五章 程序的源代碼清單</p><p> #include <reg51.h></p><p> #include <intrins.h>
17、</p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> sbit k1=P1^6;</p><p> sbit k2=P1^7;</p><p> sbit k3=P2^7;</p>
18、<p> sbit k4=P3^0;</p><p> sbit yellowled_nb=P1^4;//南北黃燈</p><p> sbit yellowled_dx=P1^1;//東西黃燈</p><p> uchar code table[11]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x
19、7f,0x6f,0x00};</p><p> uchar data dig;//位選</p><p> uchar data led;//偏移量</p><p> uchar data buf[4];</p><p> uchar data sec_dx=20;//東西數(shù)碼指示值</p><p> uc
20、har data sec_nb=20;//南北數(shù)碼指示值</p><p> uchar data set_timedx=20;</p><p> uchar data set_timenb=20;//倒計(jì)時(shí)設(shè)置的鍵值保存</p><p> uchar data b;//定時(shí)器中斷次數(shù)</p><p> bit time;//燈狀態(tài)循環(huán)
21、標(biāo)志</p><p> bit int0_time;//中斷強(qiáng)行標(biāo)志</p><p> bit set;//調(diào)時(shí)方向切換鍵標(biāo)志</p><p> void delay(int ms);//延時(shí)子程序</p><p> void key();//按鍵掃描子程序</p><p> void key_to1()
22、;//鍵處理子程序</p><p> void key_to2();</p><p> void display();//顯示子程序</p><p> void main()</p><p><b> {</b></p><p> TMOD=0X01; </p><
23、p><b> TH0=0X3C;</b></p><p><b> TL0=0XB0;</b></p><p><b> EA=1;</b></p><p><b> ET0=1;</b></p><p><b> TR0=1;&
24、lt;/b></p><p><b> EX0=1;</b></p><p><b> EX1=1;</b></p><p> P1=0Xf3;// 東西通行</p><p><b> while(1)</b></p><p><b&
25、gt; {</b></p><p> key(); //調(diào)用按鍵掃描程序</p><p> display(); //調(diào)用顯示程序</p><p><b> }</b></p><p><b> }</b></p><p> void key()/
26、/按鍵掃描子程序</p><p><b> {</b></p><p><b> if(k1!=1)</b></p><p><b> {</b></p><p> delay(10);</p><p><b> if(k1!=1)&
27、lt;/b></p><p><b> {</b></p><p> while(k1!=1);</p><p> key_to1();</p><p><b> }</b></p><p><b> }</b></p>&
28、lt;p><b> if(k2!=1)</b></p><p><b> {</b></p><p> delay(10);</p><p><b> if(k2!=1)</b></p><p><b> {</b></p>
29、<p> while(k2!=1); </p><p> key_to2();</p><p><b> }</b></p><p><b> }</b></p><p><b> if(k4!=1)</b></p><p><
30、b> {</b></p><p> delay(10);</p><p><b> if(k4!=1)</b></p><p><b> {</b></p><p> while(k4!=1);</p><p><b> set=!se
31、t;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(k3!=1&&int0_time==1)</p><p><b> {</b></p><p> T
32、R0=1; //啟動(dòng)定時(shí)器</p><p> sec_nb=59;</p><p> sec_dx=59;</p><p> int0_time=0;//清標(biāo)志</p><p> } else if(k3!=1&&int0_time==0)</p><p><b> {<
33、/b></p><p><b> TR0=1;</b></p><p> set_timenb=sec_nb;</p><p> set_timedx=sec_dx; //設(shè)置的鍵值返回保存</p><p><b> }</b></p><p> void d
34、isplay()</p><p><b> {</b></p><p> buf[1]=sec_dx/10; //第1位 東西秒十位</p><p> buf[2]=sec_dx%10; //第2位 東西秒個(gè)位</p><p> buf[3]=sec_nb/10; //第3位 南北秒十位</p>&
35、lt;p> buf[0]=sec_nb%10; //第4位 南北秒個(gè)</p><p> P0=table[buf[led]];</p><p> delay(2);//先延時(shí),提前顯示一位了</p><p><b> P2=dig;</b></p><p> dig=_crol_(dig,1);<
36、/p><p><b> led++;</b></p><p> if (led==4)</p><p><b> {led=0;</b></p><p><b> dig=0xfe;</b></p><p><b> }</b>
37、;</p><p><b> }</b></p><p> void time0(void) interrupt 1 using 1 //定時(shí)中斷子程序</p><p><b> {</b></p><p><b> b++;</b></p><p
38、> if(b==10) // 定時(shí)器中斷次數(shù)。</p><p><b> {</b></p><p><b> b=0;</b></p><p><b> sec_dx--;</b></p><p><b> sec_nb--;</b>
39、</p><p> /******************南北黃燈閃爍判斷*************************/</p><p> if(sec_nb==3&&time==0)</p><p><b> {</b></p><p> yellowled_dx=1;//南北黃燈亮&
40、lt;/p><p> delay(300);</p><p> yellowled_dx=0</p><p><b> ;</b></p><p><b> }</b></p><p> if(sec_nb==2&&time==0)</p>
41、<p><b> {</b></p><p> yellowled_dx=1;//南北黃燈亮</p><p> delay(300);</p><p> yellowled_dx=0;</p><p><b> } </b></p><p> if(s
42、ec_nb==1&&time==0)</p><p><b> {</b></p><p> yellowled_dx=1;</p><p> delay(300);</p><p> yellowled_dx=0;</p><p><b> }</b&g
43、t;</p><p> /*******************東西黃燈閃判斷************************/ </p><p> if(sec_dx==3&&time==1)</p><p><b> {</b></p><p> yellowled_nb=1;//南
44、北黃燈亮</p><p> delay(300);</p><p> yellowled_nb=0;</p><p><b> }</b></p><p> if(sec_dx==2&&time==1)</p><p><b> {</b></
45、p><p> yellowled_nb=1;//南北黃燈亮</p><p> delay(300);</p><p> yellowled_nb=0;</p><p><b> }</b></p><p> if(sec_dx==1&&time==1)</p>
46、<p><b> {</b></p><p> yellowled_nb=1;</p><p> delay(300);</p><p> yellowled_nb=0;</p><p><b> }</b></p><p> /***********
47、********************************/</p><p> if(sec_dx==0||sec_nb==0) //東西或南北先到達(dá)1S時(shí)即開始重新計(jì)時(shí)</p><p><b> { </b></p><p> sec_dx=set_timedx; </p><p> sec_nb=set
48、_timenb; //第一次循環(huán)結(jié)束重置</p><p> if(time==1)</p><p><b> {</b></p><p> P1=0XF3; //東西通行</p><p><b> }</b></p><p><b> else</
49、b></p><p><b> {</b></p><p> P1=0xde; //南北通行</p><p><b> }</b></p><p> time=!time; //取反</p><p><b> }</b></p&
50、gt;<p><b> }</b></p><p><b> }</b></p><p> void key_to1()</p><p><b> {</b></p><p> TR0=0; //關(guān)定時(shí)器</p><p> i
51、f(set==0)</p><p> sec_nb++; //南北加1S</p><p><b> else</b></p><p> sec_dx++;//東西加1S</p><p> if(sec_nb==100)</p><p><b> sec_nb=1;</b&
52、gt;</p><p> if(sec_dx==100)</p><p> sec_dx=1;//加到100置1</p><p> void key_to2()</p><p><b> {</b></p><p> TR0=0;//關(guān)定時(shí)器</p><p>&
53、lt;b> if(set==0</b></p><p> sec_nb--; //南北減1S </p><p><b> else</b></p><p> sec_dx--; //東西減1S</p><p> if(sec_nb==0)</p><p> sec
54、_nb=99;</p><p> if(sec_dx==0 )</p><p> sec_dx=99;//減到1重置99</p><p><b> }</b></p><p> void int0(void) interrupt 0 using 1 //東西強(qiáng)行</p><p>&l
55、t;b> {</b></p><p><b> TR0=0;</b></p><p><b> P1=0XF3;</b></p><p> sec_dx=88;</p><p> sec_nb=88;</p><p> int0_time=1;&
56、lt;/p><p><b> }</b></p><p> void int1(void) interrupt 2 using 1 //南北強(qiáng)行</p><p><b> {</b></p><p><b> TR0=0;</b></p><p>
57、;<b> P1=0XDE;</b></p><p> sec_nb=88;</p><p> sec_dx=88;</p><p> int0_time=1;</p><p><b> }</b></p><p> void delay(int ms)</
58、p><p><b> {</b></p><p><b> uint j,k;</b></p><p> for(j=0;j<ms;j++)</p><p> for(k=0;k<124;k++);}</p><p> 第六章 上機(jī)調(diào)試運(yùn)行結(jié)果及分析<
59、/p><p><b> 6.1交通燈接線圖</b></p><p><b> ?。?)硬件連接圖</b></p><p><b> (2)仿真效果圖 </b></p><p> 經(jīng)過在仿真軟件上的仿真,已經(jīng)按實(shí)驗(yàn)要求得到了預(yù)期的結(jié)果,可以成功的控制十字交通路口的交通秩序。&l
60、t;/p><p> 第七章 課程設(shè)計(jì)的經(jīng)驗(yàn)教訓(xùn)總結(jié)</p><p> 通過這次課程設(shè)計(jì),加強(qiáng)了我動(dòng)手、思考和解決問題的能力。電路原理和連接,和芯片上的選擇,也略懂。鞏固數(shù)字邏輯電路的理論知識(shí),并對(duì)芯片有了新的認(rèn)識(shí),懂得它的功能,更重要的是如何將電路靈活運(yùn)用于實(shí)際生活。協(xié)作的重要性。我在做課程設(shè)計(jì)同時(shí)也是對(duì)課本知識(shí)的鞏固和加強(qiáng),平時(shí)看課本時(shí),有時(shí)問題老是弄不懂,做完課程設(shè)計(jì),那些問題就迎刃而
61、解了。而且還可以記住很多東西。比如一些芯片的功能,平時(shí)看課本,這次看了,下次就忘了,主要是因?yàn)闆]有動(dòng)手實(shí)踐過吧!認(rèn)識(shí)來源于實(shí)踐,實(shí)踐是認(rèn)識(shí)的動(dòng)力和最終目的,實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)。故一個(gè)小小的課程設(shè)計(jì),對(duì)我們的作用如此之大。 本次關(guān)于簡(jiǎn)易交通燈的設(shè)計(jì)與制作是在 指導(dǎo)老師的精心指導(dǎo)下,和同組內(nèi)其他成員的共同交流下才得以利完成。經(jīng)過本次設(shè)計(jì)把我在大學(xué)所學(xué)的理論知識(shí)轉(zhuǎn)化為實(shí)際應(yīng)用,既鍛煉了我們的實(shí)際操作能力,又使理論知識(shí)得以加強(qiáng)和升華,激發(fā)
62、了創(chuàng)新意識(shí)。 特別感謝與我同組的其他組員,在工作中我們積極配合、勇于創(chuàng)新。通過本次設(shè)計(jì)使我們自身的動(dòng)手能力得到了很大的提高,使我們走出了實(shí)踐的盲區(qū),為以后的畢業(yè)工作后的動(dòng)手打下了堅(jiān)實(shí)的基礎(chǔ)。最后感謝學(xué)院為我們提供了難得的機(jī)會(huì)。再次感謝各位</p><p><b> 參考文獻(xiàn):</b></p><p> [1] AT89C51引腳定義</p><
63、p> [2]百度文庫(kù)數(shù)碼管引腳定義</p><p> [3]百度空間 基于51單智能交通燈設(shè)計(jì) </p><p> [4]百度知道 51單片機(jī)定時(shí)器的使用</p><p> [5] MSC51單片機(jī)交通燈程序-單片機(jī)-電子工程世界網(wǎng)</p><p> [7] 倪志蓮.單片機(jī)系統(tǒng)設(shè)計(jì)與制作.機(jī)械工業(yè)出版社,2012</p&
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計(jì)--智能交通燈
- 智能交通燈系統(tǒng)課程設(shè)計(jì)報(bào)告
- 交通燈課程設(shè)計(jì)報(bào)告
- 交通燈課程設(shè)計(jì)報(bào)告
- 交通燈課程設(shè)計(jì)報(bào)告---交通燈控制器
- 課程設(shè)計(jì)交通燈設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)-交通燈設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告交通燈.doc
- 交通燈課程設(shè)計(jì)報(bào)告 (2)
- 交通燈課程設(shè)計(jì)報(bào)告6
- 交通燈課程設(shè)計(jì)報(bào)告5
- 交通燈課程設(shè)計(jì)報(bào)告2
- 微機(jī)交通燈課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告--基于labview智能交通燈系統(tǒng)設(shè)計(jì)
- 交通燈課程設(shè)計(jì)報(bào)告 (2)
- 微機(jī)課程設(shè)計(jì)報(bào)告-交通燈
- plc交通燈課程設(shè)計(jì)報(bào)告
- 交通燈電路課程設(shè)計(jì)報(bào)告
- 交通燈課程設(shè)計(jì)
- 課程設(shè)計(jì)交通燈
評(píng)論
0/150
提交評(píng)論