1098

帖子

0

TA的资源

至上芯片

81
 

老外做的7个LED的旋转电子钟

三。软件编程
  因学的是C51(不懂汇编)这里只提供C语言源程序,并限制为无遥控功能。也可提供带遥控功能的hex文件。
        


#include
sbit gate11=P3^0;
sbit gate12=P3^1;

#define unit unsigned int
#define uchar unsigned char

uchar data BUFFER[]={0,0,0,0,1,1,7};
uchar data M[]={31,28,31,30,31,30,31,31,30,31,30,31};

uchar code NUM1[] =         
{

0x80,0x7F,0xC0,0xFF,0x40,0x90,0x40,0x8C,                // -0-
0x40,0x82,0xC0,0xFF,0x80,0x7F,0x00,0x00,

0x00,0x00,0x00,0x81,0x80,0x81,0xC0,0xFF,                // -1-
0xC0,0xFF,0x00,0x80,0x00,0x80,0x00,0x00,

0x80,0xE0,0xC0,0xF0,0x40,0x98,0x40,0x8C,                // -2-
0x40,0x86,0xC0,0xC3,0x80,0xC1,0x00,0x00,

0x80,0x40,0xC0,0xC0,0x40,0x84,0x40,0x84,                // -3-
0x40,0x84,0xC0,0xFF,0x80,0x7B,0x00,0x00,

0x00,0x0C,0x00,0x0E,0x00,0x0B,0x80,0x89,                // -4-
0xC0,0xFF,0xC0,0xFF,0x00,0x88,0x00,0x00,

0xC0,0x47,0xC0,0xC7,0x40,0x84,0x40,0x84,                // -5-
0x40,0x8C,0x40,0xFC,0x40,0x78,0x00,0x00,

0x00,0x7F,0x80,0xFF,0xC0,0x84,0x40,0x84,                // -6-
0x40,0x84,0x00,0xFC,0x00,0x78,0x00,0x00,

0xC0,0x00,0xC0,0x00,0x40,0xF0,0x40,0xF8,                // -7-
0x40,0x0C,0xC0,0x07,0xC0,0x03,0x00,0x00,

0x80,0x7B,0xC0,0xFF,0x40,0x84,0x40,0x84,                // -8-
0x40,0x84,0xC0,0xFF,0x80,0x7B,0x00,0x00,

0x80,0x03,0xC0,0x87,0x40,0x84,0x40,0x84,                // -9-
0x40,0xC4,0xC0,0x7F,0x80,0x3F,0x00,0x00,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,                // -:-
0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,
};

uchar code NUM2[]=
{
                  0x00,0x00,0x7f,0x80,0xff,0xc0,0x82,0x40,                // -0-
                  0x8c,0x40,0x90,0x40,0xff,0xc0,0x7f,0x80,

                  0x00,0x00,0x00,0x00,0x20,0x40,0x60,0x40,                // -1-
                  0xff,0xc0,0xff,0xc0,0x00,0x40,0x00,0x40,

                  0x00,0x00,0x41,0xc0,0xc3,0xc0,0x86,0x40,                // -2-
                  0x8c,0x40,0x98,0x40,0xf0,0xc0,0x60,0xc0,

                  0x00,0x00,0x40,0x80,0xc0,0xc0,0x88,0x40,                // -3-
                  0x88,0x40,0x88,0x40,0xff,0xc0,0x77,0x80,

                  0x00,0x00,0x0c,0x00,0x1c,0x00,0x34,0x00,                // -4-
                  0x64,0x40,0xff,0xc0,0xff,0xc0,0x04,0x40,

                  0x00,0x00,0xf8,0x80,0xf8,0xc0,0x88,0x40,                // -5-
                  0x88,0x40,0x8c,0x40,0x8f,0xc0,0x87,0x80,

                  0x00,0x00,0x3f,0x80,0x7f,0xc0,0xc8,0x40,                // -6-
                  0x88,0x40,0x88,0x40,0x0f,0xc0,0x07,0x80,

                  0x00,0x00,0xc0,0x00,0xc0,0x00,0x83,0xc0,                // -7-
                  0x87,0xc0,0x8c,0x00,0xf8,0x00,0xf0,0x00,

                  0x00,0x00,0x77,0x80,0xff,0xc0,0x88,0x40,                // -8-
                  0x88,0x40,0x88,0x40,0xff,0xc0,0x77,0x80,

                  0x00,0x00,0x70,0x00,0xf8,0x40,0x88,0x40,                // -9-
                  0x88,0x40,0x88,0xc0,0xff,0x80,0x7f,0x00,

                  0x00,0x00,0x00,0xc0,0x01,0x80,0x03,0x00,                // -/-
                  0x06,0x00,0x0c,0x00,0x18,0x00,0x30,0x00,
};

unit disp1,disp2,key1,key2;
unit ii,jj;
unit i,sw,xz;

void Delay(unit ms){
                ms=ms*3;
                while(--ms);
}


void num_led(int kk, int tt)
{
int jj;
for(jj=0;jj<8;jj++){
                gate11=key1; gate12=key2;
                P2=~NUM1[kk+jj*2];P1=~NUM1[kk+1+jj*2];
                Delay(20);
                P1=0xff;P2=0xff;
                gate11=key2; gate12=key1;
                P2=~NUM2[tt+15-jj*2];P1=~NUM2[tt+14-jj*2];
                Delay(20);
                P1=0xff;P2=0xff;
                }
}

void display_clock(void)
{
                key1=!key1;key2=!key2;
                disp1=BUFFER[3]/10;disp2=BUFFER[4]-(BUFFER[4]/10)*10;
                ii=disp1*16;jj=disp2*16;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);

                disp1=BUFFER[3]-disp1*10;disp2=BUFFER[4]/10;
                ii=disp1*16;jj=disp2*16;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);

                ii=160;jj=160;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);

                disp1=BUFFER[2]/10;disp2=BUFFER[5]-(BUFFER[5]/10)*10;
                ii=disp1*16;jj=disp2*16;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);

                disp1=BUFFER[2]-disp1*10;disp2=BUFFER[5]/10;
                ii=disp1*16;jj=disp2*16;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);

                ii=160;jj=160;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);

                disp1=BUFFER[1]/10;disp2=BUFFER[6]-(BUFFER[6]/10)*10;
                ii=disp1*16;jj=disp2*16;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);

                disp1=BUFFER[1]-disp1*10;disp2=BUFFER[6]/10;
                ii=disp1*16;jj=disp2*16;
                num_led(ii,jj);
                P2=0xff;P1=0xff;Delay(60);
}


void timer0(void)                interrupt 1 using 1
{
                TMOD=0x11;
                TH0=-(5000/256);      
                TL0=-(5000%256);
                TR0=1;
                BUFFER[0]=BUFFER[0]+1;
                if (BUFFER[6]%4==0) M[1]=M[1]+1;
                if (BUFFER[0]>201+xz){
                  BUFFER[0]=0;
                  BUFFER[1]=BUFFER[1]+1;
if (BUFFER[1]==60){
                 BUFFER[1]=0;
                 BUFFER[2]=BUFFER[2]+1;
                 if (BUFFER[2]==60){
                BUFFER[2]=0;
                BUFFER[3]=BUFFER[3]+1;
                if (BUFFER[3]==24){
                  BUFFER[3]=0;
                        BUFFER[4]=BUFFER[4]+1;
                        if (BUFFER[4]>M[BUFFER[5]-1]){
                          BUFFER[4]=1;
                          BUFFER[5]=BUFFER[5]+1;
                          if (BUFFER[5]>12){
                            BUFFER[5]=1;
                            BUFFER[6]=BUFFER[6]+1;
                            if(BUFFER[6]>99) {
                  BUFFER[6]=0;
                              M[1]=M[1]-1;
                  }
                            }
                          }
                        }
                      }
                    }
                  }
}


void intersvr0(void)                interrupt 0
{
sw=1;
}



void main(void)
{
                 xz=8;
                 key1=1;key2=0;

                 EA=1;
   
                 IT0=1;EX0=1;

                 IT1=1;ET0=1;
                 TMOD=0x11;  
                 TH0=-5000/256; TL0=-5000%256;
                 TR0=1;

for(;;){
                 Delay(10);
                 if(sw==1) {display_clock();sw=0;}
                 }
}

 

回复

1098

帖子

0

TA的资源

至上芯片

82
 

老外做的7个LED的旋转电子钟

四。运行效果
  从开机,调整到最后完成。

20.jpg (54.45 KB, 下载次数: 0)

20.jpg
 
 

回复

1098

帖子

0

TA的资源

至上芯片

83
 

老外做的7个LED的旋转电子钟

调时状态

21.jpg (47.86 KB, 下载次数: 0)

21.jpg
 
 
 

回复

1098

帖子

0

TA的资源

至上芯片

84
 

老外做的7个LED的旋转电子钟

正常运行状态

22.jpg (49.86 KB, 下载次数: 0)

22.jpg
 
 
 

回复

12

帖子

0

TA的资源

一粒金砂(中级)

85
 
我也来QQ122135996

龙章浒
广东省东莞市樟木头镇金河工业区金岭路68号  万码
邮编:523628
mob:13392742788
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

86
 

我很有兴趣

我很相做,请联系我,QQ78150656  wuzhiwen2@yahoo.com.cn
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

87
 
ding dingd ing ding ding
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

88
 

大家好呀,

我也想加入呀,可惜不懂编程呀
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

89
 
pic我比较熟悉,玩玩
 
 
 

回复

98

帖子

0

TA的资源

一粒金砂(初级)

90
 
太漂亮了 我也想做啊
 
 
 

回复

98

帖子

0

TA的资源

一粒金砂(初级)

91
 
能发块电路板来吗 我就是那个有点问题 自己做的不好啊
 
 
 

回复

6

帖子

0

TA的资源

一粒金砂(初级)

92
 
 
 

回复

6

帖子

0

TA的资源

一粒金砂(初级)

93
 
meilirichu7889@163.com
QQ:542650073
交流一下!!!
 
 
 

回复

1098

帖子

0

TA的资源

至上芯片

94
 

回复 94楼 的帖子

我觉的的大家应该多写些制作过程中的心得体会的东西吧,资料都给大家递完了啊
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

95
 

我也想做

各位兄弟好;我是个新手我对这个很感兴趣,希望能得到大家的指点.QQ117466252   gzrjxsf@163.com
 
 
 

回复

6

帖子

0

TA的资源

一粒金砂(初级)

96
 

回复 95楼 的帖子

对于好像给的下在线电路板不太明白,能给明示哈嘛?
 
 
 

回复

5

帖子

0

TA的资源

一粒金砂(初级)

97
 
我是新手~~对这个东西很感兴趣~~~有空希望能交流交流!QQ:76092703
 
 
 

回复

17

帖子

0

TA的资源

一粒金砂(初级)

98
 
应该不难做,结构搞好的话就基本上没什么问题了
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

99
 

我也算一个的了

我也算上一个的了
有什么的好玩的都玩玩了
278150697QQ
 
 
 

回复

216

帖子

0

TA的资源

纯净的硅(高级)

100
 
老外真会做这个嘛!!
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表