單片機(jī)課程設(shè)計(jì)---節(jié)日彩燈控制_第1頁
已閱讀1頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  目 錄</b></p><p>  一、引言- 2 -</p><p>  1.1設(shè)計(jì)目的- 2 -</p><p>  1.2設(shè)計(jì)內(nèi)容- 2 -</p><p>  二、總體設(shè)計(jì)- 2 -</p><p>  2.1硬件電路設(shè)計(jì)- 3 -</

2、p><p>  2.1.1AT89S52- 3 -</p><p>  2.1.2 晶振特性- 3 -</p><p>  2.1.3 AT89S52最小系統(tǒng)- 3 -</p><p>  2.1.4硬件電路- 3 -</p><p>  2.2軟件電路設(shè)計(jì)- 4 -</p><p>  

3、2.2.1 程序設(shè)計(jì)- 4 -</p><p>  2.2.2 主程序設(shè)計(jì)- 4 -</p><p>  三、設(shè)計(jì)總結(jié):- 5 -</p><p>  四、參考文獻(xiàn)- 6 -</p><p>  五、附錄- 6 -</p><p><b>  節(jié)日彩燈控制</b></p>

4、<p><b>  一、引言</b></p><p><b>  1.1設(shè)計(jì)目的</b></p><p>  1、了解節(jié)日彩燈控制器的工作原理</p><p>  2、掌握電路板的實(shí)物焊接</p><p><b>  1.2設(shè)計(jì)內(nèi)容</b></p>&l

5、t;p>  1、設(shè)計(jì)4個(gè)按鍵S0、S1、S2、S3,</p><p>  S0,按此鍵則停止流動,所有燈為暗。</p><p>  S1,按此鍵則燈由上向下流動。</p><p>  S2,按此鍵則燈由下向上流動。</p><p>  S3,按此鍵則燈由中間向兩邊流動。</p><p>  2.由按鍵控制功能的流

6、水燈,其中的LED采取共陽極接法,通過依次向連接LED的I/O口送出低電平,可實(shí)現(xiàn)題目要求的功能。</p><p><b>  3、要求做出實(shí)物。</b></p><p><b>  二、總體設(shè)計(jì)</b></p><p>  本系統(tǒng)采用AT89S52單片機(jī)作為中央處理器。其主要任務(wù)收集按鍵的信息,判斷按鍵時(shí)否按下來執(zhí)行相應(yīng)

7、彩燈的點(diǎn)亮方式</p><p>  在本系統(tǒng)中,AT89S52單片機(jī)的P1口用于接按鍵,方便使用者選擇方式。P2、P3口接的16個(gè)時(shí)LED彩燈。還有最小系統(tǒng)電路和電源電路。</p><p><b>  2.1硬件電路設(shè)計(jì)</b></p><p>  2.1.1AT89S52</p><p>  AT89S52是一種低功耗

8、、高性能CMOS8位微控制器,具有8K 在系統(tǒng)可編程Flash 存儲器。使用Atmel 公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S5為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,256字節(jié)RAM,32 位I/O

9、 口線,看門狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。 </p><p>  2.1.2 晶振特性</p><p>  A

10、T89S52 單片機(jī)有一個(gè)用于構(gòu)成內(nèi)部振蕩器的反相放大器,XTAL1 </p><p>  XTAL2 分別是放大器的輸入、輸出端。石英晶體和陶瓷諧振器都可以用來一起構(gòu)成自激振蕩器。從外部時(shí)鐘源驅(qū)動器件的話,XTAL2 可以不接,而從XTAL1 接入,。由于外部時(shí)鐘信號經(jīng)過二分頻觸發(fā)后作為外部時(shí)鐘電路輸入的,所以對外部時(shí)鐘信號的占空比沒有其它要求,最長低電平持續(xù)時(shí)間和最少高電平持續(xù)時(shí)間等還是要</p>

11、<p>  2.1.3 AT89S52最小系統(tǒng) </p><p>  AT89S52最小系統(tǒng)中XTAL1、XTAL2端接上晶振及兩個(gè)諧振電容,在RESET端接上相應(yīng)的電阻、電容,如需要按鍵復(fù)位,加上按鍵即可組成一個(gè)最小系統(tǒng),按要求通電后,系統(tǒng)就可以工作了。 </p><p>  2.1.4硬件電路</p><p>  打開PROTEUS的ISIS編輯

12、環(huán)境,從PROTEUS中選取該電路所需要的元器件,置元器件、放置電源和地、連線得到如圖所示的電氣原理圖,再點(diǎn)菜單欄工具下拉的電氣規(guī)則檢查,當(dāng)規(guī)則檢查出現(xiàn):“NETLIST GENERATED OK NO ERC ERRORD FOUND”,表示通過檢查。電路設(shè)計(jì)完成。</p><p><b>  2.2軟件電路設(shè)計(jì)</b></p><p>  2.2.1 程序設(shè)計(jì)&l

13、t;/p><p>  程序設(shè)計(jì)(Programming)是指設(shè)計(jì)、編制、調(diào)試程序的方法和過程。它是目標(biāo)明確的智力活動。在進(jìn)行微機(jī)控制系統(tǒng)設(shè)計(jì)時(shí),除了系統(tǒng)硬件設(shè)計(jì)外,大量的工作就是如何根據(jù)每個(gè)生產(chǎn)對象的實(shí)際需要設(shè)計(jì)應(yīng)用程序。因此,軟件設(shè)計(jì)在微機(jī)控制系統(tǒng)設(shè)計(jì)中占重要地位。對于本系統(tǒng),軟件也占有重要的地位。</p><p>  在單片機(jī)控制系統(tǒng)中,大體上可分為數(shù)據(jù)處理、過程控制兩個(gè)基本類型。數(shù)據(jù)處理

14、包括:數(shù)據(jù)的采集、數(shù)字濾波、標(biāo)度變換等。過程控制程序主要是使單片機(jī)按一定的方法進(jìn)行計(jì)算,然后再輸出,以便控制生產(chǎn)。</p><p>  2.2.2 主程序設(shè)計(jì)</p><p>  在系統(tǒng)的程序設(shè)計(jì)中,主控模塊只負(fù)責(zé)根據(jù)消息調(diào)用相應(yīng)模塊的處理函數(shù),具體如何處理這些消息由各功能模塊中的對應(yīng)程序決定。</p><p>  當(dāng)收到按鍵一按下使so的電平有高電平變成低電平時(shí),

15、主程序就跳到方式一的子函數(shù)執(zhí)行,這樣就實(shí)現(xiàn)了方式一的點(diǎn)亮。</p><p>  當(dāng)收到按鍵二按下使s1的電平有高電平變成低電平時(shí),主程序就跳到方式二的子函數(shù)執(zhí)行,這樣就實(shí)現(xiàn)了方式二的點(diǎn)亮。</p><p>  當(dāng)收到按鍵三按下使s2的電平有高電平變成低電平時(shí),主程序就跳到方式三的子函數(shù)執(zhí)行,這樣就實(shí)現(xiàn)了方式三的點(diǎn)亮。</p><p>  當(dāng)收到按鍵四按下使s3的電平

16、有高電平變成低電平時(shí),主程序就跳到方式四的子函數(shù)執(zhí)行,這樣就實(shí)現(xiàn)了方式四的點(diǎn)亮。</p><p><b>  三、設(shè)計(jì)總結(jié):</b></p><p>  經(jīng)過將兩周的努力,我們組終于完成的這學(xué)期的單片機(jī)課程設(shè)計(jì),過程雖是辛苦的,但從中我卻學(xué)到了很多東西。首先鞏固了課上學(xué)習(xí)的理論知識,對于單片機(jī)有了更深的認(rèn)識。在做的過程中也遇到一些問題,首先是程序的編寫,我們用的是ke

17、il軟件,經(jīng)過不斷的調(diào)試修改終于使程序編譯成功,然后將其加到proteus中設(shè)計(jì)好的電氣圖中進(jìn)行仿真,沒有錯(cuò)誤。在硬件焊接的過程中主要是端口的選擇,開始由于端口沒連對,使我們的四個(gè)按鍵無法控制彩燈亮的方式,還有就是焊接時(shí)要小心別焊錯(cuò)了。整個(gè)設(shè)計(jì)過程最大的收獲就是意識到理論知識扎實(shí)的重要性,實(shí)踐是建立在理論之上的,平時(shí)基礎(chǔ)知識學(xué)的好的同學(xué)做起來就是嫻熟,同時(shí)意識到作為一名工程技術(shù)人員,要求具備的首要素質(zhì)絕對應(yīng)該是嚴(yán)謹(jǐn)。我們這次實(shí)習(xí)所遇到的

18、多半問題多數(shù)都是由于我們不夠嚴(yán)謹(jǐn)。另外就是合作的重要性,每個(gè)人都有他的特長一個(gè)人難免有疏漏,只有大家共同努力才能順利的完成任務(wù)。不過無論做什么事情,我們都要堅(jiān)強(qiáng),有足夠的毅力與決心,有足夠的挑戰(zhàn)困難的勇氣,那樣就能把事情做好做成功。</p><p>  在這次難得的課程設(shè)計(jì)過程中我們鍛煉了自己的思考能力和動手能力。通過題目選擇和設(shè)計(jì)電路的過程中,加強(qiáng)了我們思考問題的完整性和實(shí)際生活聯(lián)系的可行性。在方案設(shè)計(jì)選擇和芯

19、片的選擇上,培養(yǎng)了我們綜合應(yīng)用單片機(jī)的能力,對單片機(jī)的各個(gè)管腳的功能也有了進(jìn)一步的認(rèn)識。還鍛煉我們個(gè)人的查閱技術(shù)資料的能力,動手能力,發(fā)現(xiàn)問題,解決問題的能力。同時(shí)感謝老師和同學(xué)的指導(dǎo)幫助。</p><p><b>  四、參考文獻(xiàn)</b></p><p>  [1] 高峰.單片微型計(jì)算機(jī)原理與接口技術(shù).科學(xué)出版社,2007</p><p> 

20、 [2]李飛.單片機(jī)原理及其應(yīng)用 西安電子科技大學(xué)出版社 ,2007</p><p>  [3]張毅剛彭喜元.單片機(jī)原理與應(yīng)用設(shè)計(jì) 電子工業(yè)出版社2010</p><p><b>  五、附錄</b></p><p>  #include<reg52.h></p><p>  #define uchar un

21、signed char</p><p>  #define unit unsigned int</p><p>  #define led P2</p><p>  sbit button1=P1^0;</p><p>  sbit button2=P1^1;</p><p>  sbit button3=P1

22、^2;</p><p>  sbit button4=P1^3;</p><p>  void delaytime (unit t)</p><p><b>  {</b></p><p>  uchar i,j;</p><p>  for(i=t;i--;i>0)</p>

23、<p>  for(j=100;j--;j>0);</p><p><b>  }</b></p><p>  void main()</p><p><b>  {</b></p><p>  uchar i,j;</p><p>  uchar led

24、1,led2;</p><p><b>  led=0x00;</b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  if(button1==0){while(button1==0);j=1;}</p&g

25、t;<p>  if(button2==0){while(button2==0);j=2;}</p><p>  if(button3==0){while(button3==0);j=3;}</p><p>  if(button4==0){while(button4==0);j=4;}</p><p><b>  switch(j)<

26、/b></p><p><b>  {</b></p><p>  case 0x01: led=0x01; </p><p>  for(i=0;i<8;i++)</p><p><b>  {</b></p><p>  delaytime (100);<

27、;/p><p>  led=led<<1;</p><p><b>  }</b></p><p><b>  break;</b></p><p>  case 0x02: led=0x80; </p><p>  for(i=0;i<8;i++)</p

28、><p><b>  {</b></p><p>  delaytime (100);</p><p>  led=led>>1;</p><p><b>  }</b></p><p><b>  break;</b></p>&

29、lt;p>  case 0x03: delaytime (100);led=0x00;break;</p><p>  case 0x04: led=0x18;</p><p>  led1=led&0x10;</p><p>  led2=led&0x08;</p><p>  for(i=0;i<4;i++)

30、</p><p><b>  { </b></p><p>  delaytime (200);</p><p>  led1=led1<<1;</p><p>  led2=led2>>1;</p><p>  led=led1|led2;</p><

溫馨提示

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

評論

0/150

提交評論