版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)---自動(dòng)打系統(tǒng)
- 基于51單片機(jī)的打地鼠游戲設(shè)計(jì)
- 打地鼠vb課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-單片機(jī)課程設(shè)計(jì)---電子時(shí)鐘
- 打地鼠課程設(shè)計(jì)報(bào)告--木槌打老鼠
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--單片機(jī)串行通訊
- 單片機(jī)秒表單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 虛擬儀器打地鼠課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---單片機(jī)數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)--單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)-單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)---單片機(jī)籃球計(jì)分器
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)---單片機(jī)原理及應(yīng)用
- 基于單片機(jī)的秒表設(shè)計(jì)單片機(jī)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論