單片機課程設計--單片機動態(tài)控制64個彩燈_第1頁
已閱讀1頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  課題:單片機動態(tài)控制64個彩燈</p><p><b>  任務書</b></p><p><b>  設計內容:</b></p><p>  用8051控制64個彩燈,使其先從左到右動態(tài)點亮3次,后從右到左動態(tài)點亮3次,再從上到下動態(tài)點亮3次,最后從上到下動態(tài)點亮3次。如此循環(huán)</p>

2、<p><b>  設計要求:</b></p><p><b>  確定系統設計方案;</b></p><p>  進行系統的硬件設計;</p><p>  完成必要的參數計算與元器件選擇;</p><p><b>  完成應用程序設計;</b></p>

3、<p><b>  應用程序的調試。</b></p><p><b>  目錄</b></p><p>  一、課題名稱………………………………………………………3</p><p>  二、設計目的………………………………………………………3</p><p>  三、系統原理圖…………

4、…………………………………………3</p><p>  四、方案論證………………………………………………………4</p><p><b>  五、單獨電路設計</b></p><p>  5.1單片機最小系統……………………………………6</p><p>  5.2點陣模塊電路……………………………………7</p&

5、gt;<p>  5.3 8051引腳圖……………………………………8</p><p>  5.4系統調試 …………………………………………8</p><p>  六、源程序…………………………………………………………9</p><p>  七、總結……………………………………………………………11</p><p>  八、參

6、考文獻………………………………………………………11</p><p>  九、致謝……………………………………………………………12</p><p><b>  一、 課題名稱</b></p><p>  單片機動態(tài)控制64個彩燈</p><p><b>  設計目的</b></p>

7、<p>  進一步熟悉和掌握單片機的結構及工作原理。</p><p>  掌握單片機的接口技術及相關外圍芯片的外特性,控制方法。</p><p>  通過課程設計,掌握以單片機核心的電路設計的基本方法和技術,了解表關電路參數的計算方法。</p><p>  通過實際程序設計和調試,逐步掌握模塊化程序設計方法和調試技術。</p><p&g

8、t;  通過完成一個包括電路設計和程序開發(fā)的完整過程,了解開發(fā)一單片機應用系統的全過程。</p><p><b>  系統原理圖</b></p><p>  1、彩燈控制系統的硬件電路原理圖如下</p><p><b>  圖1 電路原理圖</b></p><p><b>  方案論證&l

9、t;/b></p><p>  隨著人們生活環(huán)境的不斷改善和美化,在許多場合可以看到彩色霓虹燈。LED彩燈由于其豐 富的燈光色彩,低廉的造價以及控制簡單等特點而得到了廣泛的應用,用 彩燈來裝飾街道和城市建筑物已經成為一種時尚。但目前市場上各式樣的LED彩燈控制器大多數用全硬件電路實現,電路結構復雜、功能單一,這樣一旦制作成品只能按照固定的模式閃亮,不能根據不同場合、不同時間段的需要來調節(jié)亮燈時間、模

10、式、閃爍頻率等動態(tài) 參數。這種彩燈控制器結構往往有芯片過多、電路復雜、功率損耗大等缺點。此外從功能效果上看,亮燈模式少而且樣式單調,缺乏用戶可操作性,影響亮燈效果。因此有必要對現有的彩燈控制器進行改進?! ”疚奶岢隽艘环N基于AT89C51單片機的彩燈控制方案,實現對LED彩燈的控制。本方案以AT89C51單片</p><p>  機作為主控核心,與鍵盤、顯示、驅動等模塊組成核心主控制模塊</p>

11、<p>  單片機控制64個彩燈系統框圖</p><p><b>  五、單獨電路設計</b></p><p>  5.1單片機最小系統</p><p>  單片機最小系統原理圖如下:</p><p>  其作用主要是為了保證單片機系統能正常工作。如圖7所示,單片機最小系統主要由AT89C51單片機、外部振

12、蕩電路、復位電路和+5V電源組成。在外部振蕩電路中,單片機的XTAL1和XTAL2管腳分別接至由12MHZ晶振和兩個30PF電容構成的振蕩電路兩側,為電路提供正常的時鐘脈沖。 </p><p><b>  5.2點陣模塊電路</b></p><p>  本設計采用了AT89C51單片機作控制器,12MHz晶振, 8×8點陣共需要64個發(fā)光二極管組成,當接

13、高電平的時候則相應的二極管就亮。先開始清屏100MS,置碼指針初值設置每個字的停留時間,每個字8個碼,存入R0,然后掃描輸出,再掃描下一個,輸出到P2,再取下一個碼,掃描1MS,八個碼完,如果不完就循環(huán)到掃描輸出,下一步每個字的碼時間是否到了不到就從每個字八個碼開始循環(huán),下一步8個字48個碼是否完成,如果沒有完成就從每個字停留時間。字模中每一點使用一個二進制位(Bit)表示,如果是1,則說明此處有點,若是0,則說明沒有。</p&g

14、t;<p>  5.3 8051引腳圖</p><p><b>  5.4系統調試</b></p><p><b>  調試過程:</b></p><p>  保證電路板連接正確后,接上電源。</p><p>  測量各路電源電壓,看其是否正常。</p><p&

15、gt;  確認無誤后,插入89S51單片機,進行硬件調試,燒寫程序檢查各部分硬件是否正常。</p><p>  修改段碼,使其達到預期控制效果,完成實驗要求。</p><p><b>  六、源程序</b></p><p>  #include "STC12C5A60S2.h"</p><p>  u

16、nsigned char code DATA[]={</p><p>  0x01,0x02,0x04,0x08,</p><p>  0x10,0x20,0x40,0x80</p><p><b>  };</b></p><p>  void Delay(unsigned int ms)</p><

17、;p><b>  {</b></p><p>  unsigned int i,k;</p><p>  for(i=0;i<10;i++)</p><p>  for(k=0;k<ms;k++);</p><p><b>  }</b></p><p> 

18、 void UpToDown(unsigned char cNum)</p><p><b>  {</b></p><p>  unsigned int i,m,n,k;</p><p>  for(i=0;i<cNum;i++)</p><p><b>  {</b></p>

19、<p>  for(m=0;m<8;m++)</p><p><b>  {</b></p><p>  P1 = DATA[m];</p><p>  for(k=0;k<500;k++)</p><p><b>  {</b></p><p>  

20、for(n=0;n<8;n++)</p><p><b>  {</b></p><p>  P3 = DATA[n];</p><p>  Delay(1);</p><p><b>  }</b></p><p><b>  }</b>&l

21、t;/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void DownToUp(unsigned char cNum)</p><p><b>  {<

22、;/b></p><p>  unsigned int i,m,n,k;</p><p>  for(i=0;i<cNum;i++)</p><p><b>  {</b></p><p>  for(m=8;m>0;m--)</p><p><b>  {</b

23、></p><p>  P1 = DATA[m-1];</p><p>  for(k=0;k<500;k++)</p><p><b>  {</b></p><p>  for(n=8;n>0;n--)</p><p><b>  {</b></p

24、><p>  P3 = DATA[n-1];</p><p>  Delay(1);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><

25、b>  }</b></p><p><b>  }</b></p><p>  void LeftToRight(unsigned char cNum)</p><p><b>  {</b></p><p>  unsigned int i,m,n,k;</p>

26、<p>  for(i=0;i<cNum;i++)</p><p><b>  {</b></p><p>  for(m=0;m<8;m++)</p><p><b>  {</b></p><p>  P3 = ~DATA[m];</p><p> 

27、 for(k=0;k<500;k++)</p><p><b>  {</b></p><p>  for(n=0;n<8;n++)</p><p><b>  {</b></p><p>  P1 = DATA[n];</p><p>  Delay(1);&

28、lt;/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b><

29、/p><p>  void RightToLeft(unsigned char cNum)</p><p><b>  {</b></p><p>  unsigned int i,m,n,k;</p><p>  for(i=0;i<cNum;i++)</p><p><b>  {

30、</b></p><p>  for(m=8;m>0;m--)</p><p><b>  {</b></p><p>  P3 = ~DATA[m-1];</p><p>  for(k=0;k<500;k++)</p><p><b>  {</b>

31、;</p><p>  for(n=8;n>0;n--)</p><p><b>  {</b></p><p>  P1 = DATA[n-1];</p><p>  Delay(1);</p><p><b>  }</b></p><p>

32、;<b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void main(void)</p><p><b&g

33、t;  {</b></p><p>  P1M0 = 0xFF;</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  UpToDown(3);</p><p>  DownToUp(3);</p&

34、gt;<p>  LeftToRight(3);</p><p>  RightToLeft(3);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  七、總結</b></p><p

35、>  1、在設計系統過程中,更加熟悉了Protel99se畫原理圖。</p><p>  2、自己動手制作電路板,提高動手能力。</p><p>  3、通過該系統的制作,學會了點陣動態(tài)顯示原理及其編程方法。</p><p>  3、調試程序過程中,針對遇到的問題,尋找解決方法。</p><p><b>  八、參考文獻<

36、;/b></p><p>  1.《單片機技術實驗實訓教程》 周 越 江海職業(yè)技術學院 2007</p><p>  2.《單片機基礎》 李廣弟 北京航空航天大學出版社 1992 </p><p>  3.《單片微機控制應用技術—實操指導書》 張大明 劉振鵬 機械工業(yè)出版社</p><p>  4.《8

37、051單片機典型模塊設計與應用》 鐘富昭、張 晨 人民郵電出版社</p><p>  5.《單片機原理技術與應用技術》 李全釗 機械工業(yè)出版社</p><p>  6. 《單片機原理及應用技術》 李全利 高等教育出版社 2004年7月</p><p><b>  九、致謝</b></p><p&g

38、t;  在這次超聲波高度儀設計的過程中,我得到了許多人的幫助。首先我要感謝的是我的老</p><p>  師,在課程設計上給了我各方面的指導,這是我能順利完成這次報告的首要條件。更重</p><p>  要的是幫我解決了許多技術上的難題,讓我能把系統做的更加完善。在此期間,我不僅</p><p>  學到了許多的新知識,而且也開闊了視野,提高了自己的設計能力。其次,

溫馨提示

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

評論

0/150

提交評論