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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  摘 要</b></p><p>  隨著社會(huì)的發(fā)展進(jìn)步,各式有趣的小電動(dòng)玩具已經(jīng)遍布我們得生活。大街上隨處可見拿著只有幾個(gè)按鍵的打地鼠游戲機(jī)。簡(jiǎn)單的幾個(gè)按鍵,就可以給人們帶來娛樂。</p><p>  打地鼠游戲是電子技術(shù)發(fā)展的產(chǎn)物。打地鼠有軟件版也有硬件版得。而軟硬件打地鼠的游戲規(guī)則類似?,F(xiàn)在我們來討論用單片機(jī)制作打地鼠游戲機(jī)。根據(jù)打

2、地鼠的游戲規(guī)則,先制定特定位置,在確認(rèn)按下了該位置的按鈕。這種這種規(guī)則很容易用單片機(jī)實(shí)現(xiàn)。單片機(jī)具有強(qiáng)大的控制功能和靈活的編程實(shí)現(xiàn)特性,它已經(jīng)溶入現(xiàn)代人們的生活中,成為不可替代的一部分。本文的主要內(nèi)容是用STC89C52單片機(jī)為核心控制元件,設(shè)計(jì)一個(gè)打地鼠游戲機(jī)。以單片機(jī)作為主控核心,與鍵盤、蜂鳴器、數(shù)碼管等模塊組成核心主控制模塊,在主控模塊上設(shè)有4×4的矩陣鍵盤、數(shù)碼管和蜂鳴器。本系統(tǒng)運(yùn)行穩(wěn)定,其優(yōu)點(diǎn)是硬件電路簡(jiǎn)單,軟件功能

3、完善,控制系統(tǒng)可靠,性價(jià)比較高等,具有一定的實(shí)用和參考價(jià)值。</p><p>  關(guān)鍵詞:STC89C52單片機(jī) 打地鼠游戲機(jī) 數(shù)碼管 蜂鳴器 </p><p><b>  目錄</b></p><p><b>  摘 要1</b></p><p><b>  目錄2</b

4、></p><p><b>  1.引 言3</b></p><p><b>  2. 總體設(shè)計(jì)4</b></p><p><b>  2.1基本原理4</b></p><p>  2.2系統(tǒng)總體框圖及設(shè)計(jì)思路4</p><p><b

5、>  3.詳細(xì)設(shè)計(jì)5</b></p><p>  3.1 硬件設(shè)計(jì)5</p><p>  3.2軟件設(shè)計(jì).6</p><p>  3.2.1程序設(shè)計(jì)思路6</p><p>  3.2.2 程序流程圖7</p><p>  3.2.3 程序代碼8</p><p> 

6、 4. 系統(tǒng)調(diào)試及分析22</p><p><b>  5.心得體會(huì)23</b></p><p><b>  參考文獻(xiàn)23</b></p><p><b>  1.引 言</b></p><p>  單片微型計(jì)算機(jī)是大規(guī)模集成電路技術(shù)發(fā)展的產(chǎn)物,屬第四代電子計(jì)算機(jī),它具有

7、高性能、高速度、體積小、價(jià)格低廉、穩(wěn)定可靠、應(yīng)用廣泛的特點(diǎn)。它的應(yīng)用必定導(dǎo)致傳統(tǒng)的控制技術(shù)從根本上發(fā)生變革。因此,單片機(jī)的開發(fā)應(yīng)用已成為高科技和工程領(lǐng)域的一項(xiàng)重大課題。 打地鼠游戲機(jī)是現(xiàn)代電子技術(shù)發(fā)展的產(chǎn)物。是一種按鍵式的游戲機(jī)。是人們的休閑娛樂的好選擇。單片機(jī)具有強(qiáng)大的控制功能和靈活的編程實(shí)現(xiàn)特性,它已經(jīng)融入現(xiàn)代人們的生活中,成為不可替代的一部分。本文的主要內(nèi)容是用STC89C52單片機(jī)為核心控制元件,設(shè)計(jì)一個(gè)打地鼠游戲機(jī)。以

8、單片機(jī)作為主控核心,4×4矩陣鍵盤、蜂鳴器等模塊組成核心主控制模塊。 本文主要對(duì)使用單片機(jī)設(shè)計(jì)打打地鼠游戲機(jī)進(jìn)行了分析,并介紹了基于單片機(jī)打地鼠游戲機(jī)硬件組成。利用單片機(jī)產(chǎn)生隨機(jī)數(shù)來點(diǎn)亮指定的位置的led發(fā)光管。在判斷是否按下了對(duì)應(yīng)位置的按鍵。根據(jù)游戲規(guī)則判斷是該加分還是加錯(cuò)。錯(cuò)5次則本次游戲結(jié)束。并且本文分別從原理圖,主要芯片,以及程序的調(diào)試來詳細(xì)闡述。 游戲流程是先由單片機(jī)產(chǎn)生隨機(jī)數(shù),點(diǎn)亮對(duì)應(yīng)位置的了點(diǎn)發(fā)光

9、管,并記錄被點(diǎn)亮的位置。這時(shí)就開始掃描鍵盤,按鍵結(jié)果用來判</p><p><b>  2. 總體設(shè)計(jì)</b></p><p><b>  2.1基本原理</b></p><p>  先由單片機(jī)產(chǎn)生隨機(jī)數(shù),點(diǎn)亮對(duì)應(yīng)位置的了點(diǎn)發(fā)光管,并記錄被點(diǎn)亮的位置。這時(shí)就開始掃描鍵盤,按鍵結(jié)果用來判斷游戲規(guī)則。用單片機(jī)產(chǎn)生隨機(jī)數(shù)類似電腦

10、上產(chǎn)生隨機(jī)數(shù)。需要開系統(tǒng)時(shí)鐘,即定時(shí)器。我們可以利用單片機(jī)的定時(shí)/計(jì)數(shù)器T0來提供系統(tǒng)時(shí)鐘。矩陣鍵盤需要掃描才能應(yīng)用。數(shù)碼管顯示位數(shù)是動(dòng)態(tài)的,即有幾位數(shù)就顯示幾位數(shù),數(shù)據(jù)的前面不會(huì)有0出現(xiàn)。</p><p>  若要產(chǎn)生隨機(jī)數(shù),只要提供系統(tǒng)時(shí)鐘,即定時(shí)器,然后調(diào)用rand()函數(shù)獲得隨機(jī)數(shù)。期間一定要保證系統(tǒng)時(shí)鐘一直開著,這就要求一定是用中斷方式處理定時(shí)器/計(jì)數(shù)器0,是定時(shí)器/計(jì)數(shù)器一直開著。另外,經(jīng)過試驗(yàn)發(fā)現(xiàn),

11、單片機(jī)產(chǎn)生隨機(jī)數(shù)的隨機(jī)性和單片機(jī)的時(shí)鐘值和要獲得的數(shù)據(jù)范圍有關(guān)。</p><p>  利用STC89C52的內(nèi)部定時(shí)器使其工作在定時(shí)器方式1下,設(shè)置計(jì)數(shù)值TH0及TL0初值,根據(jù)要去數(shù)據(jù)范圍合理設(shè)定。</p><p>  2.2系統(tǒng)總體框圖及設(shè)計(jì)思路</p><p><b>  總體設(shè)計(jì)思路:</b></p><p> 

12、 本設(shè)計(jì)利用單片機(jī)P0口連接4×4矩陣按鍵,作為功能控制鍵。其中,左上角的是1號(hào)鍵右下的是16號(hào)鍵。進(jìn)行編號(hào)是為了處理游戲功能是方便。硬件部分是用點(diǎn)陣連接成4×4的矩陣,與矩陣鍵盤的位置相對(duì)應(yīng)。一個(gè)數(shù)碼管用于顯示得分和游戲結(jié)束時(shí)顯示over。蜂鳴器用于添加游戲聲音。</p><p><b>  3.詳細(xì)設(shè)計(jì)</b></p><p><b>

13、;  3.1 硬件設(shè)計(jì)</b></p><p><b>  1.芯片及原理介紹</b></p><p><b>  STC89C52</b></p><p>  STC89C52與MCS-51單片機(jī)產(chǎn)品兼容 、8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器、 1000次擦寫周期、 全靜態(tài)操作:0Hz~33MHz 、 三級(jí)

14、加密程序存儲(chǔ)器 、 32個(gè)可編程I/O口線 、三個(gè)16位定時(shí)器/計(jì)數(shù)器 八個(gè)中斷源 、全雙工UART串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時(shí)器 、雙數(shù)據(jù)指針 、掉電標(biāo)識(shí)符 。 </p><p>  STC89C52的一些特殊功能口,如下表所示:</p><p><b>  數(shù)碼管</b></p><p>  數(shù)碼管使

15、用條件:a、段及小數(shù)點(diǎn)上加限流電阻b、使用電壓:段:根據(jù)發(fā)光顏色決定;小數(shù)點(diǎn):根據(jù)發(fā)光顏色決定c、使用電流:靜態(tài):總電流 80mA(每段 10mA);動(dòng)態(tài):平均電流 4-5mA 峰值電流 100mA上面這只是七段數(shù)碼管引腳圖,其中共陽(yáng)極數(shù)碼管引腳圖和共陰極的是一樣的。</p><p>  LED數(shù)碼顯示原理:    七段LED顯示器內(nèi)部由七個(gè)條形發(fā)光二極管和一個(gè)小圓點(diǎn)發(fā)光二極

16、管組成,根據(jù)各管的極管的接線形式,可分成共陰極型和共陽(yáng)極型。 LED數(shù)碼管的g~a七個(gè)發(fā)光二極管因加正電壓而發(fā)亮,因加零電壓而不以發(fā)亮,不同亮暗的組合就能形成不同的字形,這種組合稱之為字形碼,下面給出共陰極的字形碼表</p><p><b>  2.硬件原理圖</b></p><p>  P0口通過連接4×4個(gè)矩陣鍵盤,游戲鍵盤,根據(jù)掃描檢測(cè)到得按鍵值,依照

17、相應(yīng)游戲規(guī)則,判斷游戲是否加分;P1口接4位8段數(shù)碼管的段選腳a接P1.0以此類推。P2口接數(shù)碼管的位選端,P2.0接第一位,以此類推。P2.6接蜂鳴器。P3口接LED矩陣。</p><p><b>  軟件設(shè)計(jì). </b></p><p>  3.2.1程序設(shè)計(jì)思路</p><p>  LED矩陣部分是有單片機(jī)產(chǎn)生隨機(jī)數(shù)點(diǎn)亮的。</p&

18、gt;<p>  打地鼠游戲機(jī)游戲規(guī)則判斷部分,先由矩陣鍵盤掃描程序獲得鍵值,利用該鍵值和點(diǎn)亮LED的隨機(jī)數(shù)進(jìn)行比較得到游戲結(jié)果。</p><p>  數(shù)碼管動(dòng)態(tài)顯示部分,先判斷數(shù)據(jù)長(zhǎng)度,再根據(jù)長(zhǎng)度掃描數(shù)碼管,實(shí)現(xiàn)數(shù)碼管動(dòng)態(tài)顯示。</p><p>  蜂鳴器部分,在程序的矩陣鍵盤掃描部分添加了蜂鳴器控制。即有鍵按下就會(huì)發(fā)聲。</p><p>  3.2

19、.2 程序流程圖</p><p>  3.2.3 程序代碼</p><p>  #include<reg52.h> //預(yù)定義部分</p><p>  #include<stdlib.h></p><p>  #define uchar unsigned ch

20、ar</p><p>  uchar KEY; //得到按鍵返回值</p><p>  uchar led; //隨機(jī)數(shù)產(chǎn)生的1到16的值,用于點(diǎn)亮led矩陣</p><p>  uchar ledcode; //用于記錄led,的倒霉按鍵值后根據(jù)游戲規(guī)則判斷</p><p>  int score; /

21、/游戲得分</p><p>  char error_c; //記錄錯(cuò)誤次數(shù)</p><p>  uchar table[]={0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90, 0xc1, 0x86, 0x88 }; // 共陽(yáng)數(shù)碼管碼表</p><p>  uchar tim

22、e_c;</p><p>  sbit scond=P2^6; // 接蜂鳴器的P2.6管腳</p><p>  void delay(int tt) //毫秒級(jí)延時(shí)</p><p><b>  {</b></p><p>  uchar a,b;</p><p>  for(tt;tt&

23、gt;0;tt--)</p><p>  for(b=142;b>0;b--)</p><p>  for(a=2;a>0;a--);</p><p><b>  }</b></p><p>  void display(int num){ //數(shù)碼管動(dòng)態(tài)掃描函數(shù)</p><p&g

24、t;  uchar flag;</p><p>  if(num<10){</p><p>  flag=1;//判斷應(yīng)該顯示記為數(shù)據(jù)</p><p>  }else if(num<100){</p><p><b>  flag=2;</b></p><p>  }else

25、 if(num<1000){</p><p><b>  flag=3;</b></p><p>  }else if(num<10000){</p><p><b>  flag=4;</b></p><p><b>  }</b></p><

26、p>  switch(flag){ //顯示數(shù)據(jù)</p><p><b>  case 4:</b></p><p><b>  P2=0xf8;</b></p><p>  P1=table[ num/1000%10];</p><p><b>  delay(1);&

27、lt;/b></p><p>  case 3: //沒有break可以動(dòng)態(tài)顯示不同位數(shù)</p><p><b>  P2=0xf4;</b></p><p>  P1=table[ num/100%10];</p><p><b>  delay(1);</b></p&

28、gt;<p><b>  case 2:</b></p><p><b>  P2=0xf2;</b></p><p>  P1=table[ num/10%10];</p><p><b>  delay(1);</b></p><p><b>  c

29、ase 1:</b></p><p><b>  P2=0xf1;</b></p><p>  P1=table[num%10];</p><p><b>  delay(1);</b></p><p><b>  break;</b></p><

30、;p><b>  }</b></p><p><b>  }</b></p><p>  uchar keypress(){ //鍵盤掃描</p><p>  uchar xx,yy,key,rekey;</p><p>  P0=0x0f; //先掃描低四位

31、</p><p>  xx=P0&0x0f;</p><p>  if(xx==0x0f)return 0xff;</p><p>  P0=0xf0; //再掃描高四位</p><p>  yy=P0&0xf0;</p><p>  key=xx|yy; </p>

32、;<p>  delay(10); //消抖</p><p><b>  P0=0x0f;</b></p><p>  xx=P0&0x0f;</p><p>  if(xx==0x0f)return 0xff;</p><p><b>  P0=0xf0;</b>

33、;</p><p>  yy=P0&0xf0;</p><p>  rekey=xx|yy;</p><p>  if(key==rekey){ //松手檢測(cè)</p><p>  do{ //松手后才返回鍵值</p><p><b>  P0=0x0f;</b>

34、;</p><p>  xx=P0&0x0f;</p><p>  display(score);</p><p>  scond=!scond;</p><p>  }while(xx!=0x0f);</p><p><b>  scond=1;</b></p><

35、p>  return(rekey);</p><p><b>  }</b></p><p>  return 0xff;</p><p><b>  }</b></p><p>  void time0_interrupt(void) interrupt 1</p><p

36、><b>  {</b></p><p>  EA=0; //關(guān)cpu中斷</p><p><b>  TR0=0;</b></p><p>  TMOD=0x01;</p><p>  TH0=0;//-(50000/256); //定時(shí)器0置數(shù)</p><p

37、>  TL0=1;//-(50000%256);</p><p><b>  TR0=1;</b></p><p><b>  EA=1;</b></p><p><b>  ET0=1;</b></p><p>  if(time_c++<100){</p

38、><p><b>  time_c++;</b></p><p><b>  }else{</b></p><p><b>  time_c=0;</b></p><p><b>  }</b></p><p><b>  }

39、</b></p><p>  int TTT; //控制鍵盤掃描次數(shù)</p><p>  void main(void){</p><p>  TMOD=0x01;</p><p>  TH0=0;//-(50000/256);</p><p>  TL0=1;//-(50000%256);</p

40、><p><b>  TR0=1;</b></p><p><b>  EA=1;</b></p><p><b>  ET0=1;</b></p><p>  IP:while(1){ //游戲功能及規(guī)則部分</p><p>  uint i;

41、 </p><p>  i = (TH0<<8)|TL0; //產(chǎn)生隨機(jī)數(shù)</p><p>  srand(i); </p><p>  led=1+(uchar)(rand())%16;</p><p>  if(error_c==5){</p><p>  goto EXIT;

42、</p><p><b>  }</b></p><p><b>  TTT=500;</b></p><p>  switch(led){ // 點(diǎn)亮LED矩陣</p><p><b>  case 1:</b></p><p><b

43、>  P3=0x1e;</b></p><p>  ledcode=0x1e;</p><p><b>  break;</b></p><p><b>  case 2:</b></p><p><b>  P3=0x1d;</b></p>&

44、lt;p>  ledcode=0x1d;</p><p><b>  break;</b></p><p><b>  case 3:</b></p><p><b>  P3=0x1b;</b></p><p>  ledcode=0x1b;</p>&l

45、t;p><b>  break;</b></p><p><b>  case 4:</b></p><p><b>  P3=0x17;</b></p><p>  ledcode=0x17;</p><p><b>  break;</b><

46、;/p><p><b>  case 5:</b></p><p><b>  P3=0x2e;</b></p><p>  ledcode=0x2e;</p><p><b>  break;</b></p><p><b>  case 6:&

47、lt;/b></p><p><b>  P3=0x2d;</b></p><p>  ledcode=0x2d;</p><p><b>  break;</b></p><p><b>  case 7:</b></p><p><b&g

48、t;  P3=0x2b;</b></p><p>  ledcode=0x2b;</p><p><b>  break;</b></p><p><b>  case 8:</b></p><p><b>  P3=0x27;</b></p><

49、;p>  ledcode=0x27;</p><p><b>  break;</b></p><p><b>  case 9:</b></p><p><b>  P3=0x4e;</b></p><p>  ledcode=0x4e;</p><

50、p><b>  break;</b></p><p><b>  case 10:</b></p><p><b>  P3=0x4d;</b></p><p>  ledcode=0x4d;</p><p><b>  break;</b><

51、/p><p><b>  case 11:</b></p><p><b>  P3=0x4b;</b></p><p>  ledcode=0x4b;</p><p><b>  break;</b></p><p><b>  case 12:

52、</b></p><p><b>  P3=0x47;</b></p><p>  ledcode=0x47;</p><p><b>  break;</b></p><p><b>  case 13:</b></p><p><b

53、>  P3=0x8e;</b></p><p>  ledcode=0x8e;</p><p><b>  break;</b></p><p><b>  case 14:</b></p><p><b>  P3=0x8d;</b></p>

54、<p>  ledcode=0x8d;</p><p><b>  break;</b></p><p><b>  case 15:</b></p><p><b>  P3=0x8b;</b></p><p>  ledcode=0x8b;</p>

55、<p><b>  break;</b></p><p><b>  case 16:</b></p><p><b>  P3=0x87;</b></p><p>  ledcode=0x87;</p><p>  break; </p>&

56、lt;p><b>  }</b></p><p>  while(TTT--){</p><p>  KEY=keypress(); //鍵盤掃描</p><p>  display(score); //數(shù)碼管顯示</p><p>  switch(KEY){ //游戲規(guī)則處理

57、 </p><p>  case 0x77: //判斷LED和按鍵是否重合</p><p>  if(ledcode==0x1e){ //重合則加分從新點(diǎn)亮其他LED </p><p><b>  score++;</b></p><p><b>  }else{</b><

58、;/p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p>  break; //當(dāng)有鍵按下KEY值不為0xff則進(jìn)入相應(yīng)的case部分判斷應(yīng)該加分還是加錯(cuò)誤次數(shù)</p><p&g

59、t;  case 0x7b: //因?yàn)橛墟I按下所以goto IP:重新開始下一次的</p><p>  if(ledcode==0x1d){</p><p>  score++; </p><p><b>  }else{</b></p><p>  error_c++;</p>&

60、lt;p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0x7d:</p><p>  if(ledcode==0x1b){</p><p&

61、gt;<b>  score++;</b></p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p>&

62、lt;p><b>  break;</b></p><p>  case 0x7e:</p><p>  if(ledcode==0x17){</p><p>  score++;</p><p><b>  }else{</b></p><p>  error_c

63、++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0xb7:</p><p>  if(ledcode==0x2e){&l

64、t;/p><p><b>  score++;</b></p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b&g

65、t;</p><p><b>  break;</b></p><p>  case 0xbb:</p><p>  if(ledcode==0x2d){</p><p>  score++;</p><p><b>  }else{</b></p><

66、;p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0xbd:</p><p>  if(le

67、dcode==0x2b){</p><p>  score++;</p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b>

68、</p><p><b>  break;</b></p><p>  case 0xbe:</p><p>  if(ledcode==0x27){</p><p><b>  score++;</b></p><p><b>  }else{</b>

69、</p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0xd7:</p>&

70、lt;p>  if(ledcode==0x4e){</p><p><b>  score++;</b></p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><p&

71、gt;<b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0xdb:</p><p>  if(ledcode==0x4d){</p><p><b>  score++;</b></p><

72、p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p>&l

73、t;p>  case 0xdd:</p><p>  if(ledcode==0x4b){</p><p><b>  score++;</b></p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>

74、;  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0xde:</p><p>  if(ledcode==0x47){</p><p><b>  sc

75、ore++;</b></p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>

76、  break;</b></p><p>  case 0xe7:</p><p>  if(ledcode==0x8e){</p><p><b>  score++;</b></p><p><b>  }else{</b></p><p>  error_c

77、++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0xeb:</p><p>  if(ledcode==0x8d){&l

78、t;/p><p><b>  score++;</b></p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b&g

79、t;</p><p><b>  break;</b></p><p>  case 0xed:</p><p>  if(ledcode==0x8b){</p><p><b>  score++;</b></p><p><b>  }else{</b&

80、gt;</p><p>  error_c++;</p><p><b>  }</b></p><p><b>  goto IP;</b></p><p><b>  break;</b></p><p>  case 0xee:</p>

81、<p>  if(ledcode==0x87){</p><p><b>  score++;</b></p><p><b>  }else{</b></p><p>  error_c++;</p><p><b>  }</b></p><

82、;p><b>  goto IP;</b></p><p><b>  break;</b></p><p><b>  default: </b></p><p><b>  break;</b></p><p><b>  } &l

83、t;/b></p><p><b>  }</b></p><p>  error_c++; //如果TTT次鍵盤掃描沒有鍵按下則按錯(cuò)誤處理,錯(cuò)誤次數(shù)加1</p><p><b>  }</b></p><p>  EXIT:while(1){ //游戲結(jié)束后數(shù)碼管顯示ove

84、r,蜂鳴器發(fā)聲。</p><p><b>  P2=0x88;</b></p><p>  P1=table[0];</p><p><b>  delay(2);</b></p><p><b>  P2=0x44;</b></p><p>  P1=

85、table[10];</p><p><b>  delay(2);</b></p><p><b>  P2=0x22;</b></p><p>  P1=table[11];</p><p><b>  delay(2);</b></p><p>&

86、lt;b>  P2=0x11;</b></p><p>  P1=table[12];</p><p><b>  delay(2);</b></p><p><b>  }</b></p><p><b>  }</b></p><p&g

87、t;  4. 系統(tǒng)調(diào)試及分析</p><p>  1、用keil編寫程序編譯運(yùn)行通過后,用Proteus仿真結(jié)果如下。</p><p>  隨機(jī)數(shù)點(diǎn)亮LED矩陣,數(shù)碼管顯示得分,蜂鳴器發(fā)聲。</p><p><b>  2、實(shí)物連接圖如下</b></p><p>  通過下載口把 打地鼠.hex 文件下載到單片機(jī)中,與仿

88、真結(jié)果一樣,可實(shí)現(xiàn)以上所訴的各個(gè)功能。</p><p><b>  5.心得體會(huì)</b></p><p>  首先要感謝課設(shè)期間老師對(duì)我的耐心指導(dǎo),經(jīng)過一周時(shí)間的課設(shè),讓我學(xué)到了很多知識(shí),特別是在實(shí)踐過程中,我了解到了很多的細(xì)節(jié)問題并加以解決,對(duì)單片機(jī)的熟悉程度又上了一個(gè)臺(tái)階。更使我明白了一個(gè)道理:實(shí)踐是進(jìn)步的最好方法。雖然說時(shí)間很短,但是這足以體現(xiàn)它的價(jià)值,從剛開始

89、的不入門到一周之后的完成任務(wù),自己的心里格外的開心,它證明了自己的努力和進(jìn)步,希望以后還能有更多這樣的機(jī)會(huì)來鍛煉自己。</p><p><b>  不足之處有:</b></p><p>  1.成本較高,各部分模塊的綜合不夠完善。 2.游戲規(guī)則不完善,只實(shí)現(xiàn)了基本功能。游戲等級(jí),復(fù)雜程度沒有得到控制。</p><p><b>

90、  參考文獻(xiàn)</b></p><p>  [1]李群芳 張士軍 黃建 《單片微型計(jì)算機(jī)與接口技術(shù)》電子工業(yè)出版社</p><p>  [2]周美娟 肖來勝 《單片機(jī)原理及系統(tǒng)設(shè)計(jì)》清華大學(xué)出版社</p><p>  [3] 黃鑫,馬善農(nóng),趙永科.基于CPLD的電子琴研究與設(shè)計(jì)[J].科技廣場(chǎng). </p><p>  [4] 趙亮,

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論