新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)紅外遙控點(diǎn)陣貪食蛇程序

        51單片機(jī)紅外遙控點(diǎn)陣貪食蛇程序

        作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏

        ---------------------------------------------------------*/
        void main()
        {
        uint8 i;
        Radio_Init();//待機(jī)
        Timer0_Init();
        Matrix_Boot();
        Timer1_Init();
        ExtInt0_Init();
        ExtInt1_Init();
        Menu_Init();//菜單初始化
        DS1302_Init();
        DS18b20_Init();
        snake_status=0;
        while(1)
        {
        if(matrix.S==FIRST)//工作在首屏顯示
        {
        ClearBuf();
        if(matrix.N==SNAKE)//菜單編號(hào)等于snake游戲,顯示snake游戲logo
        Display_32x16(1);

        else
        if(matrix.N==JINIANRI)
        Display_32x16(2);

        else
        if(matrix.N==TIME)
        Display_32x16(3);//時(shí)鐘LOGO

        else if(matrix.N==SET)
        {
        Display_32x16(4);
        }
        else if(matrix.N==TEMPERATURE)
        {
        Display_32x16(5);
        for(i=0;i<60;i++)
        Display();

        Display_32x16(6);
        for(i=0;i<64;i++)
        temp1[i]=temp[i];
        Display_32x16(5);
        UpDown_Move(UP,SET_NEXT_SPEED);
        for(i=0;i<60;i++)
        Display();
        Display_32x16(5);
        for(i=0;i<64;i++)
        temp1[i]=temp[i];
        Display_32x16(6);
        UpDown_Move(DOWN,SET_NEXT_SPEED);
        for(i=0;i<60;i++)
        Display();
        }
        else if(matrix.N==RADIO)
        Display_32x16(7);
        Display();
        }

        本文引用地址:http://www.104case.com/article/201611/323812.htm

        else//進(jìn)入了程序執(zhí)行狀態(tài)
        {
        if(matrix.N==SNAKE)//執(zhí)行貪食蛇游戲
        {
        //if(snake_status==0)//游戲狀態(tài)為0,表示一次執(zhí)行或者游戲結(jié)束 需初始化
        //Snake_Init();//游戲初始化
        //else
        Snake_Ing();//游戲進(jìn)行時(shí)
        }
        else if(matrix.N==JINIANRI)
        Display_LeftMove(img_16x16III,25);
        else if(matrix.N==TIME)
        Time_Ing();
        else if(matrix.N==SET)
        TimeSet_Ing();
        else if(matrix.N==TEMPERATURE)
        Temperature_Ing();
        else if(matrix.N==RADIO)
        Radio_Ing();
        }

        }
        }

        /*---------------------------------------------------------
        函數(shù)功能:Timer0中斷服務(wù)
        調(diào)用形式:
        參數(shù):
        返回值:
        修改時(shí)間:13.4.16
        備注:
        ---------------------------------------------------------*/
        void Timer0_IRQ() interrupt 1
        {
        seed++;
        }

        /*---------------------------------------------------------
        函數(shù)功能:外中斷1服務(wù)函數(shù)
        調(diào)用形式:無(wú)
        參數(shù):無(wú)
        返回值:
        修改時(shí)間:13.4.17
        備注:根據(jù)點(diǎn)陣的工作狀態(tài)進(jìn)行掃描,便于按鍵復(fù)用
        ---------------------------------------------------------*/
        void ExtInt1_IRQ() interrupt 2
        {
        if(matrix.S==FIRST)
        Menu_Key();//點(diǎn)陣狀態(tài)工作在首屏,執(zhí)行首屏按鍵掃描
        else //執(zhí)行程序時(shí)的按鍵掃描
        {
        if(matrix.N==SNAKE)
        Snake_Key();//貪吃蛇游戲的按鍵掃描

        else if(matrix.N==JINIANRI)
        LeftMove_Key();
        else if(matrix.N==TIME)
        Time_Key();
        else if(matrix.N==SET)
        Time_Set_Key();
        else if(matrix.N==TEMPERATURE)
        Temperature_Key();
        else if(matrix.N==RADIO)
        Radio_Key();
        }
        }


        上一頁(yè) 1 2 下一頁(yè)

        評(píng)論


        技術(shù)專(zhuān)區(qū)

        關(guān)閉
        主站蜘蛛池模板: 精河县| 武安市| 南昌县| 旺苍县| 上林县| 莲花县| 泸州市| 宁津县| 马公市| 屯门区| 平凉市| 乌拉特中旗| 甘孜县| 姚安县| 罗江县| 仁化县| 广元市| 漯河市| 阆中市| 岱山县| 阿鲁科尔沁旗| 湖南省| 灌南县| 前郭尔| 孝感市| 左权县| 临夏县| 辽宁省| 灵山县| 乌鲁木齐县| 肃北| 大安市| 洪江市| 龙陵县| 绿春县| 吉隆县| 和静县| 浮梁县| 岱山县| 六安市| 仁化县|