注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

耳朵的博客

做自己想做的人

 
 
 

日志

 
 

旋转LED时钟(数字版)  

2008-12-22 14:00:02|  分类: 单片机 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

#include
sbit lan_deng=P3^0;
const unsigned char code table[11][6] ={{ 0x3e, 0x41, 0x41, 0x41, 0x3e, 0x00  }, // 0
                                      { 0x00, 0x21, 0x7f, 0x01, 0x00, 0x00  }, // 1
                                      { 0x21, 0x43, 0x45, 0x49, 0x31, 0x00  }, // 2
                                      { 0x42, 0x41, 0x51, 0x69, 0x46, 0x00  }, // 3
                                      { 0x0c, 0x14, 0x24, 0x5f, 0x04, 0x00  }, // 4
                                      { 0x72, 0x51, 0x51, 0x51, 0x4e, 0x00  }, // 5
                                      { 0x1e, 0x29, 0x49, 0x49, 0x06, 0x00  }, // 6
                                      { 0x40, 0x47, 0x48, 0x50, 0x60, 0x00  }, // 7
                                      { 0x36, 0x49, 0x49, 0x49, 0x36, 0x00  }, // 8
                                      { 0x30, 0x49, 0x49, 0x4a, 0x3c, 0x00  }, // 9
                                      { 0x00, 0x36, 0x36, 0x00, 0x00, 0x00  }};// :
          code table_2[3][7]={{ 0x0e, 0x11, 0x11, 0x11, 0x11, 0x11 ,0x0e }, // 0
                    { 0x0f, 0x10, 0x10, 0x08, 0x04, 0x02 ,0x1f }, // 2  
                    { 0x0e, 0x11, 0x11, 0x0e, 0x11, 0x11 ,0x0e }};// 8            
char n=0,a[8]={1,2,10,0,0,10,0,0};
void delay(unsigned long i)
{
 while(i--);
}
void main(void)
{
 TMOD=0x11;
 EA=1;
 EX0=1;
 IT0=1;
 ET0=1;
 
 TR0=1;
 
 TH0=0x00;
 TL0=0x00;
 lan_deng=0;
 while(1)
 {
  P0=0xff;
  P1=0xff;
  P2=0xff;
  if(a[7]==10)
  {
   a[7]=0;
   a[6]++;
  }
  if(a[6]==6)
  {
   a[6]=0;
   a[4]++;
  }
  if(a[4]==10)
  {
   a[4]=0;
   a[3]++;
  }
  if(a[3]==6)
  {
   a[3]=0;
   a[1]++;
  }
  if(a[1]==10)
  {
   a[1]=0;
   a[0]++;
  }
  if(a[1]==4&&a[0]==2)
  {
   a[1]=0;
   a[0]=0;
  }

 }

}

void i0(void)  interrupt 0
{
 unsigned char i,j,k=15;
 delay(300);
 for(i=0;i<7;i++)
 {
  P0=0xff-table_2[1][i];
  P1=0xff-(table_2[0][i]<<2);
  delay(2*k);
 }
 P1=0xff;
 P0=0xff;
 delay(340);
 for(j=0;j<8;j++)
  for(i=0;i<6;i++)
  {
   P0=0xff-(table[a[j]][i]<<1);
   delay(k);
  }
 P0=0xff;
 delay(300);
 for(i=0;i<7;i++)
 {
  P0=0xff-table_2[2][i];
  P1=0xff-(table_2[0][i]<<2);
  delay(2*k);
 }
 P1=0xff;
 P0=0xff;          
}           

void i1(void) interrupt 1
{
 TH0=0x00;
 TL0=0x00; 
 n++;
 if(n==30)
 {
  n=0;
  a[7]++;
 }
 
}

效果图:

 


 旋转LED时钟(数字版) - 耳朵 - 耳朵的博客

  评论这张
 
阅读(1682)| 评论(2)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018