2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩6頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

1、<p>  單片機課程設計——節日彩燈</p><p><b>  需求分析:</b></p><p><b>  應用場合</b></p><p>  應用于各種場合,如學校,企事業單位,家庭等可以應用于節日彩燈的控制、廣告燈控制等場所。</p><p><b>  設計目的&

2、lt;/b></p><p>  了解單片機的基本原理以及基本應用;</p><p>  提高動手制作單片機開發板的能力;</p><p>  掌握基本I/O口的輸入輸出方法;</p><p>  掌握中斷的處理方法以及編程方法;</p><p>  掌握焊接單片機開發板所需要的最基本的最小系統電路。</p

3、><p><b>  立題意義</b></p><p>  通過這個實驗,能夠對同學們的動手能力有所提高和培養,提高同學對單片機的基本原理的理解,學會一些單片機的簡單應用。</p><p><b>  硬件設計方案</b></p><p>  在設計中用到單片機最小系統:復位電路以及時鐘(晶振)電路、程

4、序燒寫電路以及各種顏色的彩燈。</p><p><b>  復位電路:</b></p><p>  復位是單片機的初始化操作,目的是使CPU以及各個寄存器處于一個確定的初始狀態。分為手動復位方式和上電自動方式。</p><p><b>  時鐘電路:</b></p><p>  51單片機的時鐘信號

5、可由芯片內部的震蕩電路產生,也可以由外部產生。</p><p><b>  程序燒寫電路:</b></p><p>  在使用串口進行燒寫電路時,用到MAX232芯片以及幾個104瓷片電容。用STC軟件進行程序燒寫。</p><p><b>  硬件所用器件:</b></p><p><b&g

6、t;  軟件設計方案</b></p><p>  首先單片機執行四種方案的程序等待中斷。</p><p>  中斷中判斷是第幾次執行相應的程序。</p><p>  程序流程圖如圖所示:</p><p>  圖1-1 程序流程圖</p><p><b>  系統調試</b></p

7、><p>  問題一:在焊接電路過程中,電源正負極電壓為2V</p><p>  解決方法:在焊接中將電源指示燈直接連接在正負極上,沒有加限流電阻導致,經修改后電路正常。</p><p>  問題二:在系統軟件調試中,中斷執行時不能返回程序</p><p>  解決方法:在中斷中燈的延時指令for(i=0;i<200;i++) for(j=

8、0;j<200;j++);修改為for(i=0;i<149;i++) for(j=0;j<149;j++);后,單片機正常執行指令。</p><p><b>  總結</b></p><p>  通過本次課程設計,加強了我的動手操作能力,將課堂上所學的知識應用到實踐中來,并且了解了單片機的基本工作原理和使用方法,在實踐過程中練習了IO口的輸入輸出方式

9、,熟練的掌握了中斷的處理及其編程方法,掌握焊接單片機開發板所需要的最基本的最小系統電路。在三周的學習中,在查找資料自我分析以及跟同學的討論,加上老師的悉心教導,使我順利的完成的本次課程設計,感覺受益匪淺。</p><p><b>  附錄1:</b></p><p>  #include<reg52.h></p><p>  #de

10、fine uint unsigned int</p><p>  #define uchar unsigned char</p><p>  unsigned int i,j,y,n,m=0;</p><p>  uint c,d,e;</p><p>  uint p=0xff;</p><p>  void del

11、ay()</p><p><b>  {</b></p><p>  for(i=0;i<150;i++)</p><p>  for(j=0;j<500;j++);</p><p><b>  }</b></p><p>  void main()</p

12、><p>  {uint a=0x7f;</p><p>  uint b=0x7f;</p><p><b>  uint x;</b></p><p>  EA=1;EX0=1;IT0=1;</p><p><b>  while(1)</b></p><

13、;p>  //第一次 ********************************************************************** </p><p>  {for(x=0;x<8;x++) //P0控制N的 第一個| 流水顯示 7~0</p><p><b>  {</b></p><

14、p><b>  P0=a>>x;</b></p><p><b>  delay();</b></p><p><b>  }</b></p><p>  for(x=0;x<7;x++) //P2控制N的 \ 流水顯示 1~7</p><

15、p><b>  {</b></p><p><b>  P2=b>>x;</b></p><p><b>  delay();</b></p><p><b>  }</b></p><p>  for(x=0;x<8;x++)

16、 //P1控制N的 第二個| 流水顯示 7~0</p><p><b>  {</b></p><p>  P1=a>>x;</p><p><b>  delay();</b></p><p><b>  }</b></p

17、><p>  P2=0x00; //P2.0控制 1亮</p><p><b>  delay();</b></p><p>  //第二次 ********************************************************************** </p><p><b

18、>  P0=0xff;</b></p><p><b>  P2=0xff;</b></p><p>  P1=0xff; //全滅</p><p>  delay();delay();delay();</p><p>  P0=0x0f; //P0.7~0.4 亮</p>

19、<p>  delay();delay();delay();</p><p>  P0=0x00; //P0.0~0.7 亮</p><p>  delay();delay();delay();</p><p>  P2=0x1f; //P2.7~2.5 亮</p><p>  delay();delay();

20、delay();</p><p>  P2=0x01; //P2.7~2.1 亮</p><p>  delay();delay();delay();</p><p>  P1=0x0f; //P1.7~1.4 亮</p><p>  delay();delay();delay();</p><p>

21、;  P1=0x00; //P1.0~1.7 亮</p><p>  delay();delay();delay();</p><p>  P2=0x00; //P2 口控制全亮 目的控制P2.0</p><p><b>  delay();</b></p><p>  //第三次 *********

22、************************************************************* </p><p><b>  P0=0xff;</b></p><p><b>  P2=0xff;</b></p><p>  P1=0xff; //全滅</p><p&g

23、t;<b>  delay();</b></p><p>  P0=0x00; //P0 控制的 第一個| 全亮</p><p>  delay();delay();delay();</p><p>  P2=0x01; //P2 控制的 \ 全亮</p><p>  delay();delay();d

24、elay();</p><p>  P1=0x00; //P1 控制的 第二個| 全亮</p><p>  delay();delay();delay();</p><p>  P2=0x00; //P2 控制的 第三個1 亮</p><p>  delay();delay();delay();</p><p&

25、gt;  //第四次 ********************************************************************** </p><p><b>  P0=0xff;</b></p><p><b>  P2=0xff;</b></p><p>  P1=0xff; //全

26、滅</p><p>  delay();delay();delay();</p><p>  for(x=0;x<3;x++) //閃爍3次</p><p><b>  {</b></p><p><b>  P0=0x00;</b></p><p><b>

27、;  P2=0x00;</b></p><p>  P1=0x00;//全滅</p><p>  delay();delay();delay();</p><p><b>  P0=0xff;</b></p><p><b>  P2=0xff;</b></p>&l

28、t;p>  P1=0xff;//全亮</p><p>  delay();delay();delay();</p><p><b>  } </b></p><p><b>  }</b></p><p><b>  }</b></p><p&g

29、t;  void int0() interrupt 0 </p><p><b>  {EX0=0;</b></p><p><b>  IT0=0;</b></p><p>  EA=0; //關中斷</p><p><b>  c=P0;</b></p&g

30、t;<p><b>  d=P1;</b></p><p>  e=P2; //保護現場</p><p>  m++; //中斷次數 第幾次中斷</p><p><b>  m=m%3;</b></p><p>  if(m==1) //第一次中斷</p&

31、gt;<p><b>  {</b></p><p>  for(n=0;n<5;n++) //5次循環</p><p><b>  {</b></p><p>  for(y=0;y<9;y++) //從下到上一排一排點亮</p><p><b>  {<

32、/b></p><p>  P1=p>>y;P2=p<<y;P0=p>>y;</p><p>  for(i=0;i<149;i++)</p><p>  for(j=0;j<149;j++);</p><p><b>  }</b></p><p

33、><b>  }</b></p><p><b>  }</b></p><p>  if(m==2) //第二次中斷</p><p><b>  {</b></p><p>  for(n=0;n<10;n++) //閃爍10次</p><p

34、><b>  {</b></p><p><b>  P1=0xff;</b></p><p><b>  P2=0xff;</b></p><p>  P0=0xff;//全滅</p><p>  for(i=0;i<149;i++)</p>&l

35、t;p>  for(j=0;j<149;j++);</p><p><b>  P1=0x00;</b></p><p><b>  P2=0x00;</b></p><p>  P0=0x00; //全亮</p><p>  for(i=0;i<149;i++)</p&

36、gt;<p>  for(j=0;j<149;j++);</p><p><b>  }}</b></p><p>  if(m==0)//第三次中斷</p><p><b>  {</b></p><p>  for(n=0;n<5;n++) //循環5次</p

37、><p><b>  {</b></p><p>  for(y=0;y<9;y++) //從上到下依次點亮</p><p><b>  {</b></p><p>  P1=p<<y;P2=p>>y;P0=p<<y;</p><p>

38、  for(i=0;i<149;i++)</p><p>  for(j=0;j<149;j++);</p><p><b>  }}</b></p><p><b>  }</b></p><p><b>  P1=d;</b></p><p&

溫馨提示

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

評論

0/150

提交評論