【开源DIY制作分享】采用STC15W408AS制作七彩LED广州塔
【广州塔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广州塔相关推荐
- 干货分享 | 代谢组学数据分析,常见图形制作分享-百趣生物
前两期<代谢组学两种常见图形制作分享>.<代谢组学常见图形制作分享(二)>给大家详细介绍了韦恩图.箱线图和ROC曲线的绘制,不知各位趣粉学得如何啦?今天BIOTREE生信分析的 ...
- 分享手机游戏制作各阶段的注意事项
分享手机游戏制作各阶段的注意事项 出自IED Wiki 跳转到: 导航, 搜索 作者:Kimberly Unger & Jeannie Novak [主要问题] 第三方工作室 & 独立 ...
- 采用UltraISO制作U盘启动盘
采用UltraISO制作U盘启动盘 打开UltralSO,选择"文件"--->"打开",如下图: 图1 打开WIN7操作系统的ISO文件,如下图: 图2 ...
- 新版“峡谷第一美”妲己尾巴毛发制作分享
关于作者:梁家斌,腾讯互动娱乐天美工作室群高级游戏美术师. 之前有很多人来询问新版妲己宝宝 毛茸茸的尾巴 做法, 先谢谢大家对这个毛发效果的认可, 我在这里就简单的分享一下, 毛发的实现思路和制作方法 ...
- (原创)制作一个采用 LCD1602 显示的电子钟,在 LCD 上显示当前的时间。显示格式为“时时:分分:秒秒”。设有 4 个功能键k1~k4,功能如下:(1)k1——进入时间修改。
(原创)制作一个采用 LCD1602 显示的电子钟,在 LCD 上显示当前的时间.显示格式为"时时:分分:秒秒".设有 4 个功能键k1-k4,功能如下: (1)k1--进入时间修 ...
- DIY微信朋友圈截图制作生成小程序源码下载
这是一款朋友圈截图制作的一款小程序源码 主要的特点是DIY,之前小编发布过朋友圈截图的小程序 不管之前那款小程序只能生成点赞数量,无法获取用户名等等 但是这一款就不一样了,这一款刚刚也说了特点是DIY ...
- 抖音记事本代码html,抖音表白程序制作教程 抖音表白代码制作分享-记事本文件...
抖音表白程序制作教程 抖音表白代码制作分享 抖音是一款短视频软件,上面有很多新奇而富有创意的玩法,比如最近很火的利用弹窗表白,那么抖音表白程序应该怎么制作呢?下面小编给大家带来抖音表白程序制作教程分享 ...
- QQ图文分享卡片如何制作,将链接转换为可编辑图文卡片
我们在QQ单/群聊中发送h5链接时,链接展现效果不是很好别人不敢点击,那么本教程教您如何制作QQ图文分享卡片. QQ图文卡片制作教程: 1.在后台点击 小狐工具箱-创建卡片,选择QQ卡片,先选择不 ...
- HTML制作分享到QQ空间,微信,新浪等效果
HTML制作分享到QQ空间,微信,新浪等效果 分享保存一个简单的HTML制作分享到QQ空间,微信,新浪等效果,分享一个比较简单的方法,只需套用代码便可完成 1.首先打开http://www.jiath ...
最新文章
- 如果一个按钮被覆盖如何响应?
- 如何创建自己的docker image并上传到DockerHub上
- 高中计算机考试编程题,2020年高中信息技术模块测试卷5(算法与程序设计) 信息技术试题(PDF版无答案)...
- Boost:align对齐的测试程序
- boost------signals2的使用1(Boost程序库完全开发指南)读书笔记
- 史上最可怕最震撼的46亿年世界历史!看完我跪了....
- 重磅推荐,计算机视觉开源周报20191003期
- javaweb开发要学习的所有技术和框架总结
- pdf417条码解码(下)——译码
- 爱思唯尔计算机期刊排名,2017影响因子高增长爱思唯尔物理期刊推荐
- SSD目标检测网络模型详细介绍
- AI近义词替换工具.v.1.2
- 百度地图的离线地图实现
- 软件是如何驱动硬件的,代码是怎样对计算机实现控制的?
- 弦外雨,晚风急 吹皱芳华太无情
- 【用Unity实现抛物线向目标点发射炮弹功能】
- sqlite 导出CSV,身份证号码显示科学计数法
- 键盘输入,大写字母变小写,小写变大写
- 微信小程序-日期时间选择器
- Linux快捷键大全