久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1836|回復: 0
打印 上一主題 下一主題
收起左側

來一個數字移動程序.開始數字"1"移到最邊,然后"2"....

[復制鏈接]
跳轉到指定樓層
樓主
ID:88481 發表于 2018-4-15 18:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <reg52.h>

#define DIS_DB P0
#define DIS_WE P1

unsigned char flag100ms = 0;
unsigned char flag = 0;
unsigned char code dischar[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned char disbuf[6];

void Play();
void ConfigTime0();

void main()
{
        unsigned char i;

        ConfigTime0();
        while(1)
        {                 
                switch(flag)
                {                       
                        case 0: for (i=0;i<6;i++)
                                                disbuf[i] = 0xff;                                       
                                        if (flag100ms < 6)
                                           disbuf[flag100ms] = dischar[1];
                                        else
                                        {
                                                flag100ms = 0;
                                                flag++;
                                        }                                       
                                        break;
                        case 1: for (i=0;i<5;i++)
                                                disbuf[i] = 0xff;                                       
                                        if (flag100ms < 5)
                                        {
                                                disbuf[flag100ms] = dischar[2];
                                                disbuf[5] = dischar[1];
                                        }
                                        else
                                        {
                                                flag100ms = 0;
                                                flag++;
                                        }                                       
                                        break;
                        case 2: for (i=0;i<4;i++)
                                                disbuf[i] = 0xff;                                       
                                        if (flag100ms < 4)
                                        {
                                                disbuf[flag100ms] = dischar[3];
                                                disbuf[5] = dischar[1];
                                                disbuf[4] = dischar[2];
                                        }
                                        else
                                        {
                                                flag100ms = 0;
                                                flag++;
                                        }                                       
                                        break;
                        case 3: for (i=0;i<3;i++)
                                                disbuf[i] = 0xff;                                       
                                        if (flag100ms < 3)
                                        {
                                                disbuf[flag100ms] = dischar[4];
                                                disbuf[5] = dischar[1];
                                                disbuf[4] = dischar[2];
                                                disbuf[3] = dischar[3];
                                        }
                                        else
                                        {
                                                flag100ms = 0;
                                                flag++;
                                        }                                       
                                        break;
                        case 4: for (i=0;i<2;i++)
                                                disbuf[i] = 0xff;                                       
                                        if (flag100ms < 2)
                                        {
                                                disbuf[flag100ms] = dischar[5];
                                                disbuf[5] = dischar[1];
                                                disbuf[4] = dischar[2];
                                                disbuf[3] = dischar[3];
                                                disbuf[2] = dischar[4];
                                        }
                                        else
                                        {
                                                flag100ms = 0;
                                                flag++;
                                        }                                       
                                        break;
                        case 5:
                                        if (flag100ms < 1 )
                                        {
                                            disbuf[flag100ms] = dischar[6];
                                                disbuf[5] = dischar[1];
                                                disbuf[4] = dischar[2];
                                                disbuf[3] = dischar[3];
                                                disbuf[2] = dischar[4];
                                                disbuf[1] = dischar[5];
                                        }
                                        else
                                        {
                                                flag100ms = 0;
                                                flag = 0;
                                        }                                       
                                        break;
                }                                                                                                                                  
        }                                                                                       
}

void Play()
{
    static unsigned char i;

    DIS_DB = 0xff;
           DIS_DB = disbuf[i];
        DIS_WE = ~(0x01<<i);
        i++;
        if (i == 6)
                i = 0;
}

void ConfigTime0()
{
        TH0 = (65536-1000)/256;
        TL0 = (65536-1000)%256;
        TMOD = 0x01;
        TR0 = 1;
        ET0 = 1;
        EA = 1;
}

void InterruptTime0() interrupt 1
{
        static unsigned char i;

        TH0 = (65536-1000)/256;
        TL0 = (65536-1000)%256;
        Play();       
        i++;
        if (i >= 70)
        {
                i= 0;
                flag100ms++;
        }
}


數字移動.zip

32.59 KB, 下載次數: 3, 下載積分: 黑幣 -5

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美激情一区二区三区 | 日本粉嫩一区二区三区视频 | xxx.在线观看 | 观看毛片 | 四虎影视 | 三级欧美| 国产区精品在线观看 | 天天操夜夜拍 | 国产精品久久久久久影院8一贰佰 | 9191成人精品久久 | 欧美一区二区三区在线 | 国产精品99久久久久久www | 在线国产精品一区 | 操人网站| 欧美成人高清 | 国产激情网 | 欧美亚洲视频 | 国产精品黄色 | 欧美成年人网站 | 福利精品在线观看 | 午夜免费| 福利视频网 | 99精品九九 | 中文字幕中文字幕 | 国产欧美精品 | 男人天堂视频在线观看 | 中文字幕欧美日韩一区 | 欧美一级二级在线观看 | 男女视频免费 | 在线成人av| 一区二区三区在线免费观看 | 欧美一级欧美三级在线观看 | 精品免费av | 国产aaaaav久久久一区二区 | 成人国产精品久久 | 精品在线一区二区 | 亚洲综合视频 | 欧美日韩国产高清 | 欧美精品一二区 | 黄色小视频入口 | 成人综合伊人 |