【广州塔DIY】采用STC15W408AS制作七彩LED广州塔


  • 之前在上升沿购买的散件led散件回来自己搭建的广州塔的,半年前突然就不亮了,这次重新购买回来了芯片,将程序烧录进去,重新恢复了。采用的单片机是STC15W408AS-35I-SKDIP28
  • 找了其他网上的广州塔LED代码,烧录进去,效果不理想,有的采用的是共阴极焊接的,有的能亮但是,显示的效果都不多,没有原来之前芯片里面自带程序的效果多,今天想到免去淘宝翻一翻你是记录,看看,能不能找到资料,果真,还有,立马下载下来,将里面附带的程序烧录进去,效果和原来的一样了。特此分享出来,完全可以自己去嘉立创打板,自己做,成本的话也就10块钱的成本完全够,去TB购买散件需要25元左右,对于电子DIY,最重要的就是程序和原理图了,有了这两样基本上制作都没有什么难度了,所以分享出来,让后面的人如果想自己动手制作,完全可以按照这里的资料自己制作。
  • STC15W408AS-35I-SKDIP28
  • Led灯的价格很便宜的,一大包要不了多少钱,然后就是4个电阻。

制作所需材料(包含教程原理图,程序,焊接教程)

链接: https://pan.baidu.com/s/1DKJq5fa0UdwnCnK4ic_gTw
提取码: edjc
  • 资料截图

  • 实际焊接的骨架效果取决于个人的焊接水平。凑合着看吧


程序代码

/*共阳极LED灯焊接***/#include "STC15F2K.h"
#include "intrins.h"
#include <math.h>#define uchar unsigned char
#define uint unsigned intsbit L1=P2^5;
sbit L2=P2^6;
sbit L3=P2^7;
sbit L4=P1^1;
sbit L5=P1^2;
sbit L6=P1^3;
sbit L7=P3^7;
sbit L8=P2^0;
sbit L9=P2^1;
sbit L10=P2^2;
sbit L11=P2^3;
sbit L12=P2^4;sbit C1=P3^0;
sbit C2=P3^1;
sbit C3=P3^3;
sbit C4=P3^4;
sbit C5=P3^5;
sbit C6=P3^6;
sbit C7=P1^4;
sbit C8=P1^5;
sbit C9=P1^6;
sbit C10=P1^7;
sbit C11=P5^4;
sbit C12=P5^5;sbit hwx=P3^2;      //红外接收数据引脚,unsigned char ly_lhj[4];                  //保存NEC的四个字节数据
bit ly_flag=0;                             //成功接收标志unsigned int temp;char moshi=1;
int hys=100;
char zy=0,sj=0;void Delayms(uint t)
{uchar i;while(t--)for(i=0;i<hys;i++);
}void bjc()//层变化
{L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1;if(sj==0){C1=0;C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(sj==1){C1=1;C2=0;C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(sj==2){C1=C2=1;C3=0;C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(sj==3){C1=C2=C3=1;C4=0;C5=C6=C7=C8=C9=C10=C11=C12=1;}if(sj==4){C1=C2=C3=C4=1;C5=0;C6=C7=C8=C9=C10=C11=C12=1;   }if(sj==5){C1=C2=C3=C4=C5=1;C6=0;C7=C8=C9=C10=C11=C12=1;  }if(sj==6){C1=C2=C3=C4=C5=C6=1;C7=0;C8=C9=C10=C11=C12=1;}if(sj==7){C1=C2=C3=C4=C5=C6=C7=1;C8=0;C9=C10=C11=C12=1;    }if(sj==8){C1=C2=C3=C4=C5=C6=C7=C8=1;C9=0;C10=C11=C12=1;  }if(sj==9){C1=C2=C3=C4=C5=C6=C7=C8=C9=1;C10=0;C11=C12=1;  }if(sj==10){C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=1;C11=0;C12=1; }if(sj==11){C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=1;C12=0;   }
}
void bjs()//竖变化
{C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=0;      if(zy==0){L1=1;L2=L3=L4=L5=L6=0;L7=1;L8=L9=L10=L11=L12=0;}if(zy==1){L1=0;L2=1;L3=L4=L5=L6=L7=0;L8=1;L9=L10=L11=L12=0;}  if(zy==2){L1=L2=0;L3=1;L4=L5=L6=L7=L8=0;L9=1;L10=L11=L12=0;}  if(zy==3){L1=L2=L3=0;L4=1;L5=L6=L7=L8=L9=0;L10=1;L11=L12=0;}  if(zy==4){L1=L2=L3=L4=0;L5=1;L6=L7=L8=L9=L10=0;L11=1;L12=0;}  if(zy==5){L1=L2=L3=L4=L5=0;L6=1;L7=L8=L9=L10=L11=0;L12=1; }
}void dh1()
{int time=1200;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;C1=0;Delayms(time);C2=0;Delayms(time);C3=0;Delayms(time);C4=0;Delayms(time);C5=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C6=0;Delayms(time);C7=0;Delayms(time);    C8=0;Delayms(time);C9=0;Delayms(time);C10=0;Delayms(time);C11=0;Delayms(time);C12=0;if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;
hm:;
}
void dh2()
{int time=1000,i;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=0;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;for(i=0;i<12;i++){L1=1;L7=1;Delayms(time);L1=0;L7=0;L2=1;L8=1;Delayms(time);L2=0;L8=0;L3=1;L9=1;Delayms(time);L3=0;L9=0;if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}    L4=1;L10=1;Delayms(time);L4=0;L10=0;L5=1;L11=1;Delayms(time);L5=0;L11=0;L6=1;L12=1;Delayms(time);L6=0;L12=0;    if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}}
hm:;
}void dh3()
{char i;int time=500;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;for(i=0;i<4;i++){C1=0;Delayms(time);C1=1;C2=0;Delayms(time);C2=1;C3=0;Delayms(time);C3=1;C4=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C4=1;C5=0;Delayms(time);C5=1;C6=0;Delayms(time);C6=1;C7=0;Delayms(time);C7=1;C8=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C8=1;C9=0;Delayms(time);C9=1;C10=0;Delayms(time);C10=1;C11=0;Delayms(time);C11=1;C12=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C12=1;C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);C9=1;C8=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C8=1;C7=0;Delayms(time);C7=1;C6=0;Delayms(time);C6=1;C5=0;Delayms(time);C5=1;C4=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C4=1;C3=0;Delayms(time);C3=1;C2=0;Delayms(time);C2=1; }
hm:;
}
void dh4()
{char i;int time=800;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;for(i=0;i<4;i++){C6=0;C7=0; C1=1;C12=1;Delayms(time);C6=1;C7=1;C5=0;C8=0;Delayms(time);C4=0;C9=0;C5=1;C8=1;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C4=1;C9=1;C3=0;C10=0;Delayms(time);C2=0;C11=0;C3=1;C10=1;Delayms(time);C2=1;C11=1;C1=0;C12=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}}C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=0;
hm:;
}
void dh5()
{int time=800;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=0;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;L1=1;Delayms(time);L2=1;Delayms(time);L3=1;Delayms(time);L4=1;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}L5=1;Delayms(time);L6=1;Delayms(time);L7=1;Delayms(time);L8=1;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}L9=1;Delayms(time);L10=1;Delayms(time);L11=1;Delayms(time);L12=1;Delayms(time);    if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);
hm:;
}
void dh6()
{char i;int time=500;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=0;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;for(i=0;i<10;i++){L1=L4=L7=L10=1;Delayms(time);L1=L4=L7=L10=0;L2=L5=L8=L11=1;Delayms(time);L3=L6=L9=L12=1;L2=L5=L8=L11=0;Delayms(time);L3=L6=L9=L12=0;if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}}
hm:;
}
void dh7()
{int i,time=500;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;C12=0;for(i=0;i<2;i++){C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);C9=1;C8=0;Delayms(time);C8=1;C7=0;Delayms(time);C7=1;C6=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C6=1;C5=0;Delayms(time);C5=1;C4=0;Delayms(time);C4=1;C3=0;Delayms(time);C3=1;C2=0;Delayms(time);C2=1;C1=0;Delayms(time);C11=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);C9=1;C8=0;Delayms(time);C8=1;C7=0;Delayms(time);C7=1;C6=0;Delayms(time);C6=1;C5=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C5=1;C4=0;Delayms(time);C4=1;C3=0;Delayms(time);C3=1;C2=0;Delayms(time);C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C9=1;C8=0;Delayms(time);C8=1;C7=0;Delayms(time);C7=1;C6=0;Delayms(time);C6=1;C5=0;Delayms(time);C5=1;C4=0;Delayms(time);C4=1;C3=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);C9=1;C8=0;Delayms(time);C8=1;C7=0;Delayms(time);C7=1;C6=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C6=1;C5=0;Delayms(time);C5=1;C4=0;Delayms(time);C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);C9=1;C8=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C8=1;C7=0;Delayms(time);C7=1;C6=0;Delayms(time);C6=1;C5=0;Delayms(time);C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C9=1;C8=0;Delayms(time);C8=1;C7=0;Delayms(time);C7=1;C6=0;Delayms(time);C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C9=1;C8=0;Delayms(time);C8=1;C7=0;Delayms(time);C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);C9=1;C8=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C10=1;C9=0;Delayms(time);C11=0;Delayms(time);C11=1;C10=0;Delayms(time);C11=0;Delayms(time);     }
hm:;
}
void dh8()
{int i,time=800;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1;  for(i=0;i<6;i++){C9=1;C10=1;C3=1;C4=1;C7=0;C12=0;C1=0;C6=0;Delayms(time);C7=1;C12=1;C1=1;C6=1;C8=0;C11=0;C2=0;C5=0;Delayms(time); C8=1;C11=1;C2=1;C5=1;C9=0;C10=0;C3=0;C4=0;Delayms(time);    if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}  }
hm:;
}
void dh9()
{int i,time=1000;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1; for(i=0;i<3;i++){C12=C11=C10=C9=0;Delayms(time);C12=1;C11=C10=C9=C8=0;Delayms(time);C11=1;C10=C9=C8=C7=0;Delayms(time);C10=1;C9=C8=C7=C6=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C9=1;C8=C7=C6=C5=0;Delayms(time);C8=1;C7=C6=C5=C4=0;Delayms(time);C7=1;C6=C5=C4=C3=0;Delayms(time);C6=1;C5=C4=C3=C2=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C5=1;C4=C3=C2=C1=0;Delayms(time);C4=1;C3=C2=C1=0;Delayms(time);C3=1;C2=C1=0;Delayms(time);C2=1;C1=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C1=1;Delayms(time);    }
hm:;
}
void dh10()
{int i,time=1100;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1; for(i=0;i<3;i++){C6=C7=0;Delayms(time);C5=C8=0;Delayms(time);C4=C9=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C3=C10=0;Delayms(time);C2=C11=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C1=C12=0;Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}
hm:;
}
void dh11()
{int i,time=1100;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1; for(i=0;i<3;i++){C12=0;Delayms(time);C11=0;Delayms(time);C10=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C9=0;Delayms(time);C8=0;Delayms(time);C7=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C6=0;Delayms(time);C5=0;Delayms(time);C4=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C3=0;Delayms(time);C2=0;Delayms(time);C1=0;Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}Delayms(8000);C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}
hm:;
}
void dh12()
{int time=1000,i;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;for(i=0;i<12;i++){if(i==0)C1=0;if(i==1)C2=0;if(i==2)C3=0;if(i==3)C4=0;if(i==4)C5=0;if(i==5)C6=0;if(i==6)C7=0;if(i==7)C8=0;if(i==8)C9=0;if(i==9)C10=0;if(i==10)C11=0;if(i==11)C12=0;L1=1;L7=1;Delayms(time);L1=0;L7=0;L2=1;L8=1;Delayms(time);L2=0;L8=0;L3=1;L9=1;Delayms(time);L3=0;L9=0;if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}L4=1;L10=1;Delayms(time);L4=0;L10=0;L5=1;L11=1;Delayms(time);L5=0;L11=0;L6=1;L12=1;Delayms(time);L6=0;L12=0;    if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}}
hm:;
}
void dh13()
{int time=1000,i;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;for(i=0;i<6;i++){if(i==0){C6=C7=0;}if(i==1){C5=C8=0;}if(i==2){C4=C9=0;}if(i==3){C3=C10=0;}if(i==4){C2=C11=0;}if(i==5){C1=C12=0;}L1=1;L7=1;Delayms(time);L1=0;L7=0;L2=1;L8=1;Delayms(time);L2=0;L8=0;L3=1;L9=1;Delayms(time);L3=0;L9=0;if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}L4=1;L10=1;Delayms(time);L4=0;L10=0;L5=1;L11=1;Delayms(time);L5=0;L11=0;L6=1;L12=1;Delayms(time);L6=0;L12=0;if(ly_flag==1){moshi=0;ly_flag=0;goto hm;} }
hm:;
}
void dh14()
{int i,time=500;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;for(i=0;i<12;i++){if(i==0){C1=0;C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==1){C1=1;C2=0;C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==2){C1=C2=1;C3=0;C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==3){C1=C2=C3=1;C4=0;C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==4){C1=C2=C3=C4=1;C5=0;C6=C7=C8=C9=C10=C11=C12=1;}if(i==5){C1=C2=C3=C4=C5=1;C6=0;C7=C8=C9=C10=C11=C12=1;}if(i==6){C1=C2=C3=C4=C5=C6=1;C7=0;C8=C9=C10=C11=C12=1;}if(i==7){C1=C2=C3=C4=C5=C6=C7=1;C8=0;C9=C10=C11=C12=1;}if(i==8){C1=C2=C3=C4=C5=C6=C7=C8=1;C9=0;C10=C11=C12=1;}if(i==9){C1=C2=C3=C4=C5=C6=C7=C8=C9=1;C10=0;C11=C12=1;}if(i==10){C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=1;C11=0;C12=1;}if(i==11){C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=1;C12=0;}   L1=1;Delayms(time);L1=0;L2=1;Delayms(time);L2=0;L3=1;Delayms(time);L3=0;L4=1;Delayms(time);L4=0;L5=1;Delayms(time);L5=0;L6=1;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}L6=0;L7=1;Delayms(time);L7=0;L8=1;Delayms(time);L8=0;L9=1;Delayms(time);L9=0;L10=1;Delayms(time);L10=0;L11=1;Delayms(time);L11=0;L12=1;Delayms(time);L12=0;    if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}  }
hm:;
}
void dh15()
{int i,time=500;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;for(i=0;i<12;i++){if(i==0){C1=0;C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==1){C1=1;C2=0;C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==2){C1=C2=1;C3=0;C4=C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==3){C1=C2=C3=1;C4=0;C5=C6=C7=C8=C9=C10=C11=C12=1;}if(i==4){C1=C2=C3=C4=1;C5=0;C6=C7=C8=C9=C10=C11=C12=1;}if(i==5){C1=C2=C3=C4=C5=1;C6=0;C7=C8=C9=C10=C11=C12=1;}if(i==6){C1=C2=C3=C4=C5=C6=1;C7=0;C8=C9=C10=C11=C12=1;}if(i==7){C1=C2=C3=C4=C5=C6=C7=1;C8=0;C9=C10=C11=C12=1;}if(i==8){C1=C2=C3=C4=C5=C6=C7=C8=1;C9=0;C10=C11=C12=1;}if(i==9){C1=C2=C3=C4=C5=C6=C7=C8=C9=1;C10=0;C11=C12=1;}if(i==10){C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=1;C11=0;C12=1;}if(i==11){C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=1;C12=0;}   L1=1;Delayms(time);L2=1;Delayms(time);L3=1;Delayms(time);L4=1;Delayms(time);L5=1;Delayms(time);L6=1;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}L7=1;Delayms(time);L8=1;Delayms(time);L9=1;Delayms(time);L10=1;Delayms(time);L11=1;Delayms(time);L12=1;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;        }
hm:;
}
void dh16()
{int i,time=300;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;for(i=0;i<12;i++){if(i==0 || i==2 || i==4 ||i==6 ||i==8 ||i==10){L1=0;L7=1;}if(i==1 || i==3 || i==5 ||i==7 ||i==9 ||i==11){L1=1;L7=0;}C1=0;Delayms(time);C1=1;C2=0;Delayms(time);C3=0;C2=1;Delayms(time);C3=1;C4=0;Delayms(time);C4=1;C5=0;Delayms(time);C5=1;C6=0;Delayms(time);if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}C6=1;C7=0;Delayms(time);C7=1;C8=0;Delayms(time);C8=1;C9=0;Delayms(time);C9=1;C10=0;Delayms(time);C10=1;C11=0;Delayms(time);C11=1;C12=0;;Delayms(time);C12=1;    if(ly_flag==1){moshi=0;ly_flag=0;goto hm;}  }
hm:;
}void init()
{TMOD= 0x11;                  TL0 = 0;        //设置定时初值TH0 = 0;        //设置定时初值EX0=1;                //开启外部中断0IT0=1;                    //设置成下降沿触发方式EA = 1;
}void main()
{P3M0=0xff;P3M1=0x04;P2M0=0xff;P2M1=0x00;P1M0=0xff;P1M1=0x00;P5M0=0xff;P5M1=0x00;init();while(1){if(moshi==1)dh1();if(moshi==1)dh2();if(moshi==1)dh3();if(moshi==1)dh4();if(moshi==1)dh5();if(moshi==1)dh6();if(moshi==1)dh7();if(moshi==1)dh8();if(moshi==1)dh9();if(moshi==1)dh10();if(moshi==1)dh11();if(moshi==1)dh12();if(moshi==1)dh13();if(moshi==1)dh14();if(moshi==1)dh15();if(moshi==1)dh16();//调试模式if(moshi==3)bjs();                          if(moshi==4)bjc();}
}void delayh(void){     unsigned char i=200;while(i--);
}/***********外中断0入口函数,P32引脚,红外线接收IC数据脚**************************/
void hongwai(void)   interrupt 0
{unsigned char i,ia;/**************开始判断是否为NEC波形引导码的前9MS和后4.5MS******************************/TL0=0;TH0=0;             //定时/计数器1初始值TR0=1;             //定时器以12M晶振12分频计数,即1us计数while(!hwx);TR0=0;              //信号翻转停止计数if(TH0<30||TH0>40)  //NEC引导码前9MS,计数约9000,TH1约等于35,给个误差值,用30-40之间来判断return;TH0=0;              //定时/计数器1初始值TR0=1;while(hwx){delayh();if(TH0>22)        //NEC引导码引导码的后4。5MS,计数约4500,TH1约等于17return;        }TR0=0;if(TH0<12)           //NEC引导码引导码的后4。5MS,计数约4500,TH1约等于17return;/***********开始接收四个字节内容**************************************/   for(i=0;i<4;i++){for(ia=0;ia<8;ia++){               while(!hwx);    //低电平开始,不处理只等待高电平TH0=0;TR0=1;          //高电平开始,启动计数while(hwx){delayh();if(TH0>15)        return;     }TR0=0;//高电平结束,判断数据1或0向变量移入ly_lhj[i]>>=1;            //数据由高位移入低位if(TH0>4)             //时间量TH1高于4,即高于1MS判断为1ly_lhj[i]|=0x80;}}if(ly_lhj[2]==0x15)//动画模式{moshi=1;IE2=0X00;}if(ly_lhj[2]==0x45)//全灭{moshi=2;IE2=0X00;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=0;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=1;     }if(ly_lhj[2]==0x47)//全灭{moshi=2;IE2=0X00;L1=L2=L3=L4=L5=L6=L7=L8=L9=L10=L11=L12=1;C1=C2=C3=C4=C5=C6=C7=C8=C9=C10=C11=C12=0;        }if(ly_lhj[2]==0x5E)//动画速度减速{if(hys<1000)hys=hys+10;}if(ly_lhj[2]==0x5A)//动画速度减速{if(hys>10)hys=hys-10;}if(ly_lhj[2]==0x4A)//动画速度复位{hys=100;}if(ly_lhj[2]==0x44)//编辑竖模式{moshi=4;ly_flag=1;IE2=0X00;}if(ly_lhj[2]==0x43)//编辑层模式{moshi=3;ly_flag=1;IE2=0X00;}if(moshi==3){if(ly_lhj[2]==0x07)//左移{zy++;if(zy>6)zy=0;   }if(ly_lhj[2]==0x09)//右移{zy--;if(zy<0)zy=5;       }}if(moshi==4){if(ly_lhj[2]==0x40)//上升{sj++;if(sj>11)sj=11;}if(ly_lhj[2]==0x19)//下降{sj--;if(sj<0)sj=0;  }}TF1=0;
}

【开源DIY制作分享】采用STC15W408AS制作七彩LED广州塔相关推荐

  1. 干货分享 | 代谢组学数据分析,常见图形制作分享-百趣生物

    前两期<代谢组学两种常见图形制作分享>.<代谢组学常见图形制作分享(二)>给大家详细介绍了韦恩图.箱线图和ROC曲线的绘制,不知各位趣粉学得如何啦?今天BIOTREE生信分析的 ...

  2. 分享手机游戏制作各阶段的注意事项

    分享手机游戏制作各阶段的注意事项 出自IED Wiki 跳转到: 导航, 搜索 作者:Kimberly Unger & Jeannie Novak [主要问题] 第三方工作室 & 独立 ...

  3. 采用UltraISO制作U盘启动盘

    采用UltraISO制作U盘启动盘 打开UltralSO,选择"文件"--->"打开",如下图: 图1 打开WIN7操作系统的ISO文件,如下图: 图2 ...

  4. 新版“峡谷第一美”妲己尾巴毛发制作分享

    关于作者:梁家斌,腾讯互动娱乐天美工作室群高级游戏美术师. 之前有很多人来询问新版妲己宝宝 毛茸茸的尾巴 做法, 先谢谢大家对这个毛发效果的认可, 我在这里就简单的分享一下, 毛发的实现思路和制作方法 ...

  5. (原创)制作一个采用 LCD1602 显示的电子钟,在 LCD 上显示当前的时间。显示格式为“时时:分分:秒秒”。设有 4 个功能键k1~k4,功能如下:(1)k1——进入时间修改。

    (原创)制作一个采用 LCD1602 显示的电子钟,在 LCD 上显示当前的时间.显示格式为"时时:分分:秒秒".设有 4 个功能键k1-k4,功能如下: (1)k1--进入时间修 ...

  6. DIY微信朋友圈截图制作生成小程序源码下载

    这是一款朋友圈截图制作的一款小程序源码 主要的特点是DIY,之前小编发布过朋友圈截图的小程序 不管之前那款小程序只能生成点赞数量,无法获取用户名等等 但是这一款就不一样了,这一款刚刚也说了特点是DIY ...

  7. 抖音记事本代码html,抖音表白程序制作教程 抖音表白代码制作分享-记事本文件...

    抖音表白程序制作教程 抖音表白代码制作分享 抖音是一款短视频软件,上面有很多新奇而富有创意的玩法,比如最近很火的利用弹窗表白,那么抖音表白程序应该怎么制作呢?下面小编给大家带来抖音表白程序制作教程分享 ...

  8. QQ图文分享卡片如何制作,将链接转换为可编辑图文卡片

    ​​我们在QQ单/群聊中发送h5链接时,链接展现效果不是很好别人不敢点击,那么本教程教您如何制作QQ图文分享卡片. QQ图文卡片制作教程: 1.在后台点击 小狐工具箱-创建卡片,选择QQ卡片,先选择不 ...

  9. HTML制作分享到QQ空间,微信,新浪等效果

    HTML制作分享到QQ空间,微信,新浪等效果 分享保存一个简单的HTML制作分享到QQ空间,微信,新浪等效果,分享一个比较简单的方法,只需套用代码便可完成 1.首先打开http://www.jiath ...

最新文章

  1. 如果一个按钮被覆盖如何响应?
  2. 如何创建自己的docker image并上传到DockerHub上
  3. 高中计算机考试编程题,2020年高中信息技术模块测试卷5(算法与程序设计) 信息技术试题(PDF版无答案)...
  4. Boost:align对齐的测试程序
  5. boost------signals2的使用1(Boost程序库完全开发指南)读书笔记
  6. 史上最可怕最震撼的46亿年世界历史!看完我跪了....
  7. 重磅推荐,计算机视觉开源周报20191003期
  8. javaweb开发要学习的所有技术和框架总结
  9. pdf417条码解码(下)——译码
  10. 爱思唯尔计算机期刊排名,2017影响因子高增长爱思唯尔物理期刊推荐
  11. SSD目标检测网络模型详细介绍
  12. AI近义词替换工具.v.1.2
  13. 百度地图的离线地图实现
  14. 软件是如何驱动硬件的,代码是怎样对计算机实现控制的?
  15. 弦外雨,晚风急 吹皱芳华太无情
  16. 【用Unity实现抛物线向目标点发射炮弹功能】
  17. sqlite 导出CSV,身份证号码显示科学计数法
  18. 键盘输入,大写字母变小写,小写变大写
  19. 微信小程序-日期时间选择器
  20. Linux快捷键大全

热门文章

  1. 中压开关柜中的弧光保护
  2. MySQL中间件Atlas
  3. 武汉星淘惠:武汉跨境产业稳步发展,线上选品大会已圆满落幕
  4. linux 无线传输,嵌入式Linux下图像存储与无线传输技术研究
  5. 晨曦记账本,使用项目图表统计收支账户
  6. i.MX平台Qt交叉编译环境搭建
  7. AutoCAD 2021中文授权版
  8. Linux中软件自启动三种方式
  9. 光传感器类有哪些最新发表的毕业论文呢?
  10. Oracle 数据库损坏恢复