找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3182|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)乒乓球游戲機(jī)程序 小白求大神改一下

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
想做一個乒乓球游戲機(jī)  功能:剛開始通過產(chǎn)生一個隨機(jī)數(shù)來判斷誰發(fā)球  當(dāng)球(就是發(fā)光二極管)達(dá)到兩端是按下?lián)羟蜴I 球向回走 若未接到 則對方得一分

這是我的程序
#include<reg52.h>
#include<intrins.h>
#include<stdlib.h>
#define uint unsigned int
#define uchar unsigned char
void change();
void display();
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f         };
uchar aa,mm;
uint SUM=0;
sbit PA=P1^0;
sbit PB=P1^1;
sbit PC=P1^2;
sbit dula=P2^0;                                                        
sbit wela=P2^1;
void delay(uint xms)
{        uint m,n;                                
        for(m=xms;m>0;m--)
                for(n=110;n>0;n--) ;
}
void main()
{        int j,i;
        P3=0x00;
        wela=1;
        P0=0x00;
        wela=0;
        dula=1;
        P0=table[0]        ;
        dula=0;
    i=rand();
        if(i%2==0)
                aa=0x80;
        else
                aa=0x01;
    while(1)//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
        {        if(PC==0)  //..........................................
                {        delay(10);
                        if(PC==0)
                        {        P3=aa;          //裁判判斷誰發(fā)球
                        }
                while(~PC);//..........................................
                }
               
               
                if(PB==0)        //.........................................
                {        delay(10);
                        if(PB==0)
                        {        if(P3==0x01)
                                {        aa=0x01;
                                        for(j=0;j<8;j++)
                                        {        P3=aa;
                                                delay(200);
                                                aa=_crol_(aa,1);//判斷為B時B發(fā)球
                                        }
                                mm=0x80;
                                }
                                while(~PB);
                        }
                }             //.........................................
                  
               
                if(PA==0)          //.........................................
                {        delay(10);
                        if(PA==0);
                        {        if(P3==0x80)
                                {        aa=0x80;
                                        for(j=0;j<8;j++)
                                        {        P3=aa;                        //判斷為A時A發(fā)球
                                                delay(200);
                                                aa=_cror_(aa,1);
                                        }
                                mm=0x01;
                                }
                                while(~PA);
                        }
                }                //..................................................
        

                if(mm==0x80&&PA!=0)
                {        P3=0x00;
                        SUM=SUM+1;
                }
                if(mm==0x01&&PB!=0)
                {        P3=0x00;
                        SUM=SUM+100;
                }
                display();
        }           //while()結(jié)尾的括號$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
}                   //main()結(jié)尾的括號%%%%%%%%%%%%%%%%%%%%%%%%%%
void display(void)
{        P0=0x0e;
        wela=1;
        wela=0;
        P0=table[SUM%10];
        dula=1;
        dula=0;
        delay(2);
        P0=0x0d ;
        wela=1;
        wela=0;
        P0=table[SUM/10%10];
        dula=1;
        dula=0;
        delay(2);
        P0=0x0b;
        wela=1;
        wela=0;
        P0=table[SUM/100%10];
        dula=1;
        dula=0;
        delay(2);
        P0=0x07;
        wela=1;
        wela=0;
        P0=table[SUM/1000%10];
        dula=1;
        dula=0;
        delay(2);        
}

為什么一按按鍵數(shù)碼管的燈就滅了 然后按下?lián)羟蜴I 數(shù)碼管就不斷地出隨機(jī)數(shù)

~PR){`G1}XSU]5R)J~A9430.png (27.82 KB, 下載次數(shù): 67)

~PR){`G1}XSU]5R)J~A9430.png

_(B)T53134JU(YF6KUT$AQ9.png (44.95 KB, 下載次數(shù): 54)

_(B)T53134JU(YF6KUT$AQ9.png

(@E`(7F{GHW)P@_O9E~MX4O.png (29.82 KB, 下載次數(shù): 61)

(@E`(7F{GHW)P@_O9E~MX4O.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表