單片機(jī)課程設(shè)計(jì)報(bào)告--簡(jiǎn)易交通燈設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩7頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(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><b>  --簡(jiǎn)易交通燈設(shè)計(jì)</b></p><p>  班級(jí):09級(jí)通信工程二班</p><p><b>  學(xué)號(hào): </b></p><p><b>  姓名: </b><

2、;/p><p><b>  指導(dǎo)老師: </b></p><p>  日期:2012年3月24日</p><p>  課題:簡(jiǎn)易交通信號(hào)控制器</p><p><b>  課程設(shè)計(jì)目的: </b></p><p>  單片機(jī)課程設(shè)計(jì)是一門(mén)實(shí)踐課程,要求學(xué)生具有制作調(diào)試單片機(jī)最小系

3、統(tǒng)及外設(shè)的能力,能夠掌握單片機(jī)內(nèi)部資源的使用。</p><p>  單片機(jī)課程設(shè)計(jì)內(nèi)容包括硬件設(shè)計(jì)、制作及軟件編寫(xiě)、調(diào)試,學(xué)生在熟練掌握焊接技術(shù)的基礎(chǔ)上,能熟練使用單片機(jī)軟件開(kāi)發(fā)環(huán)境Keil C51編程調(diào)試,并使用STC ISP調(diào)試工具采用串口下載方式聯(lián)調(diào)制作的單片機(jī)最小系統(tǒng)。</p><p>  課程設(shè)計(jì)內(nèi)容及要求:</p><p>  自制一個(gè)單片機(jī)最小系統(tǒng),包

4、括串口下載、復(fù)位電路,采用內(nèi)部定時(shí)器定時(shí)控制南北、東西的交通信號(hào)燈(采用LED模擬),交通信號(hào)燈由紅、黃、綠燈組成,東西、南北模擬路口由12路LED組成,其中南北、東西均采用并聯(lián)方式連接,雙向均有倒計(jì)時(shí)牌。</p><p><b>  控制方案如下:</b></p><p><b>  實(shí)現(xiàn)思路:</b></p><p>

5、  使用定時(shí)器0方式一及中斷實(shí)現(xiàn)精準(zhǔn)定時(shí),P0口控制兩組交通燈亮滅,P1,P2口分別控制路口倒計(jì)時(shí)牌十位和各位數(shù)值顯示,實(shí)現(xiàn)倒數(shù)功能!</p><p><b>  實(shí)現(xiàn)程序如下:</b></p><p>  #include<reg52.h></p><p>  #define uint unsigned int</p>

6、<p>  #define uchar unsigned char</p><p>  uint i=0,num=0;</p><p>  uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,</p><p>  0x6d,0x7d,0x07,0x7f,0x6f};// 顯示段碼值0~9</p>&l

7、t;p>  sbit dxgreen=P1^0;</p><p>  sbit dxyellow=P1^1;</p><p>  sbit dxred=P1^2;</p><p>  sbit nbgreen=P1^3;</p><p>  sbit nbyellow=P1^4;</p><p>  sbit n

8、bred=P1^5;</p><p>  sbit gewei=P1^6;</p><p>  sbit shiwei=P1^7;</p><p>  void main()</p><p><b>  {</b></p><p><b>  P1=0xff;</b><

9、;/p><p>  TMOD = 0x01; //使用模式1,16位定時(shí)器</p><p>  TH0=(65536-50000)/256; //定時(shí)50ms,裝初值</p><p>  TL0=(65536-50000)%256;</p><p>  EA=1; //總中斷打開(kāi)</p><p&

10、gt;  ET0=1; //定時(shí)器中斷打開(kāi)</p><p><b>  TR0=1; </b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  if(i==20)</

11、b></p><p><b>  {</b></p><p><b>  i=0;</b></p><p><b>  num++;</b></p><p>  if(num>=1&num<=30)</p><p><b&

12、gt;  {</b></p><p>  if(num>=1&num<=10)</p><p><b>  {</b></p><p>  if(num==1)</p><p><b>  {</b></p><p><b> 

13、 nbred=0;</b></p><p><b>  dxred=1;</b></p><p>  dxgreen=0;</p><p><b>  }</b></p><p><b>  shiwei=1;</b></p><p>  P

14、0=table[2];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[10-num];</p><p><b>  gewei=0;</b></p><p&

15、gt;<b>  }</b></p><p>  if(num>=11&num<=20)</p><p><b>  {</b></p><p><b>  shiwei=1;</b></p><p>  P0=table[1];</p>&l

16、t;p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[20-num];</p><p><b>  gewei=0;</b></p><p><b>  }</b>

17、</p><p>  if(num>=21&num<=30)</p><p><b>  {</b></p><p><b>  shiwei=1;</b></p><p>  P0=table[0];</p><p><b>  shiwei

18、=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[30-num];</p><p><b>  gewei=0;</b></p><p>  if(num>=23&num<=27) </p>&l

19、t;p><b>  {</b></p><p>  dxgreen=~dxgreen;</p><p><b>  }</b></p><p>  if(num>=28&num<=30)</p><p><b>  {</b></p>&

20、lt;p>  dxgreen=1;</p><p>  dxyellow=0;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(num>=31&

21、amp;num<=60)</p><p><b>  {</b></p><p>  if(num>=31&num<=40)</p><p><b>  {</b></p><p>  if(num==31)</p><p><b>  {

22、</b></p><p>  dxyellow=1;</p><p><b>  dxred=0;</b></p><p><b>  nbred=1;</b></p><p>  nbgreen=0;</p><p><b>  }</b>

23、</p><p><b>  shiwei=1;</b></p><p>  P0=table[2];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[4

24、0-num];</p><p><b>  gewei=0;</b></p><p><b>  }</b></p><p>  if(num>=41&num<=50)</p><p><b>  {</b></p><p><

25、b>  shiwei=1;</b></p><p>  P0=table[1];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[50-num];</p><p&

26、gt;<b>  gewei=0;</b></p><p><b>  }</b></p><p>  if(num>=51&num<=60)</p><p><b>  {</b></p><p><b>  shiwei=1;</b&g

27、t;</p><p>  P0=table[0];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[60-num];</p><p><b>  gewei=0;&l

28、t;/b></p><p>  if(num>=53&num<57) </p><p><b>  {</b></p><p>  nbgreen=~nbgreen;</p><p><b>  } </b></p><p>  if(num>

29、=58&num<=60)</p><p><b>  {</b></p><p>  nbgreen=1;</p><p>  nbyellow=0;</p><p><b>  }</b></p><p><b>  }</b><

30、/p><p><b>  }</b></p><p>  if(num==61) </p><p><b>  {</b></p><p><b>  num=0;</b></p><p>  nbyellow=1;</p><

31、p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void timer0() interrupt 1 </p>&l

32、t;p><b>  {</b></p><p>  TH0=(65536-50000)/256; //定時(shí)50ms,裝初值</p><p>  TL0=(65536-50000)%256;</p><p><b>  i++;</b></p><p><b>  }</b

33、></p><p>  Proteus仿真結(jié)果如下:</p><p><b>  課程設(shè)計(jì)心得體會(huì):</b></p><p>  其實(shí)在之前的單片機(jī)課程學(xué)習(xí)的時(shí)候,就發(fā)現(xiàn)自己對(duì)單片機(jī)比較感興趣了,自己買(mǎi)了個(gè)單片機(jī)開(kāi)發(fā)板學(xué)習(xí)了一些簡(jiǎn)單控制的教程,這些都為我這次成功的單片機(jī)課程設(shè)計(jì)打下了基礎(chǔ),本次單片機(jī)課程設(shè)計(jì)一共歷時(shí)5天,從拿到課程開(kāi)始,發(fā)

34、現(xiàn)和數(shù)電課程設(shè)計(jì)的課題差不多,當(dāng)時(shí)的想法就是做一個(gè)不一樣的東西,呵呵,所以就選擇了做交通燈的設(shè)計(jì)。話(huà)說(shuō)我編程的時(shí)候遇到了很多問(wèn)題,導(dǎo)致仿真的時(shí)候現(xiàn)象老是不正確,后來(lái)經(jīng)過(guò)積極向同學(xué)和學(xué)長(zhǎng)詢(xún)問(wèn)和請(qǐng)教,最終完全成功的實(shí)現(xiàn)了正確仿真,不過(guò)程序里基本上全是使用的if語(yǔ)句,之所以選擇使用if語(yǔ)句,是因?yàn)樽晕腋杏X(jué)if語(yǔ)句的可讀性好些,呵呵,但是后來(lái),也看到了一些學(xué)長(zhǎng)們同樣課題的編程,發(fā)現(xiàn)他們的代碼比我的要精簡(jiǎn)高效些,我發(fā)現(xiàn)需要學(xué)習(xí)和提高的地方還有很多

溫馨提示

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

評(píng)論

0/150

提交評(píng)論