看到好多人都在做心形流水燈,自己就也想做一個(gè),于是淘寶上把東西買好了。元件清單:5mm紅色LED發(fā)光二極管32個(gè)、470Ω貼片限流電阻32個(gè)、9*15mm電木洞洞板一張、STC89C52RC單片機(jī)一片、40pin單片機(jī)插座一個(gè)、12M晶振一個(gè)、30pf瓷片電容兩個(gè)、10uf電解電容一個(gè)、10k直插電阻一個(gè)、電源插座一個(gè)、電源線一條、自鎖開關(guān)一個(gè)。以上就是這個(gè)心形流水燈的所用元件。程序就是KEIL環(huán)境下用C語言編的,序、原理圖、仿真文件放在51黑附件:
花樣燈的電路圖:
單片機(jī)花樣燈的源程序:
- #include
- #define uint unsigned int
- #define uchar unsigned char
- uchar code table0[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//LED從低位往高位移
- uchar code table1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//LED從高位往低位移
- uchar code table2[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00};//LED從1個(gè)亮到8個(gè)都點(diǎn)亮(從低位往高位)
- uchar code table3[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};//LED從1個(gè)亮到8個(gè)都點(diǎn)亮(從高位往低位)
- uchar code table4[]={0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};//LED從8個(gè)全亮到一個(gè)都不亮(從低位往高位)
- uchar code table5[]={0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};//LED從8個(gè)全亮到一個(gè)都不亮(從高位往低位)
- uchar code table6[]={0xfe,0xfc,0xfa,0xf6,0xee,0xde,0xbe,0x7e};//LED從低位往高位移(最低位始終為0)
- uchar code table7[]={0x7f,0x3f,0x5f,0x6f,0x77,0x7b,0x7d,0x7e};//LED從高位往低位移(最高位始終為0)
- uchar i,j; //定義循環(huán)變量
- uint tt=70; //定義時(shí)間指數(shù)
- void delay(uint time) //延時(shí)函數(shù)
- {
- uint x,y;
- for(x=time;x>0;x--)
- for(y=110;y>0;y--);
- }
- void disp0() //狀態(tài)0 所有LED閃爍3次
- {
- for(i=0;i<>
- {
- P0=0x00; P2=0x00; P3=0x00; P1=0x00;
- delay(300);
- P0=0xff; P2=0xff; P3=0xff; P1=0xff;
- delay(300);
- }
- }
- void disp1() //狀態(tài)1 LED順時(shí)針轉(zhuǎn)一圈
- {
- for(i=0;i<>
- {
- P2=table1[i];
- delay(100);
- }
- P2=0xff;
- for(i=0;i<>
- {
- P3=table1[i];
- delay(100);
- }
- P3=0xff;
- for(i=0;i<>
- {
- P1=table1[i];
- delay(100);
- }
- P1=0xff;
- for(i=0;i<>
- {
- P0=table0[i];
- delay(100);
- }
- P0=0xff;
- }
- void disp2() //狀態(tài)2 LED逆時(shí)針轉(zhuǎn)一圈
- {
- for(i=0;i<>
- {
- P0=table1[i];
- delay(100);
- }
- P0=0xff;
- for(i=0;i<>
- {
- P1=table0[i];
- delay(100);
- }
- P1=0xff;
- for(i=0;i<>
- {
- P3=table0[i];
- delay(100);
- }
- P3=0xff;
- for(i=0;i<>
- {
- P2=table0[i];
- delay(100);
- }
- P2=0xff;
- }
- void disp3() //狀態(tài)3 4個(gè)LED同時(shí)順時(shí)、逆時(shí)針移動(dòng)1/4圈
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P1=table1[i];
- P2=table1[i];
- P3=table0[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table0[i];
- P1=table0[i];
- P2=table0[i];
- P3=table1[i];
- delay(100);
- }
- P3=0xff; P0=0xff;
- }
- void disp4() //狀態(tài)4 2個(gè)LED同時(shí)順時(shí)針移動(dòng)半圈
- {
- for(i=0;i<>
- {
- P2=table1[i];
- P1=table1[i];
- delay(100);
- }
- P2=0xff; P1=0xff;
- for(i=0;i<>
- {
- P3=table1[i];
- P0=table0[i];
- delay(100);
- }
- P3=0xff; P0=0xff;
- }
- void disp5() //狀態(tài)5 2個(gè)LED同時(shí)逆時(shí)針移動(dòng)半圈
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P3=table0[i];
- delay(100);
- }
- P0=0xff; P3=0xff;
- for(i=0;i<>
- {
- P1=table0[i];
- P2=table0[i];
- delay(100);
- }
- P1=0xff; P2=0xff;
- }
- void disp6() //狀態(tài)6 LED自上而下逐漸點(diǎn)亮(一半點(diǎn)亮一半不亮)
- {
- for(i=0;i<>
- {
- P0=table3[i];
- P2=table3[i];
- delay(100);
- }
- P0=0xff; P2=0xff;
- for(i=0;i<>
- {
- P1=table2[i];
- P3=table3[i];
- delay(100);
- }
- P1=0xff; P3=0xff;
- }
- void disp7() //狀態(tài)7 LED自下而上逐漸點(diǎn)亮(直到全部點(diǎn)亮)
- {
- for(i=0;i<>
- {
- P1=table3[i];
- P3=table2[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table2[i];
- P2=table2[i];
- delay(100);
- }
- }
- void disp8() //狀態(tài)8 間斷8格的4個(gè)LED亮并逆時(shí)針旋轉(zhuǎn)
- {
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table0[i];
- P1=table0[i];
- P3=table0[i];
- delay(100);
- }
- P0=0xff; P2=0xff; P1=0xff; P3=0xff;
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table0[i];
- P1=table0[i];
- P3=table0[i];
- delay(100);
- }
- P0=0xff; P2=0xff; P1=0xff; P3=0xff;
- }
- }
- void disp9() //狀態(tài)9 間斷8格的4個(gè)LED亮,然后逆時(shí)針逐漸點(diǎn)亮(直到全部點(diǎn)亮)
- {
- for(i=0;i<>
- {
- P0=table3[i];
- P2=table2[i];
- P1=table2[i];
- P3=table2[i];
- delay(100);
- }
- delay(500);
- }
- void disp10() //狀態(tài)10 從LED全部亮到全不亮(間斷8格的4個(gè)LED開始逆時(shí)針熄滅)
- {
- for(i=0;i<>
- {
- P0=table5[i];
- P2=table4[i];
- P1=table4[i];
- P3=table4[i];
- delay(100);
- }
- delay(300);
- }
- void disp11() //狀態(tài)11 間斷8格的4個(gè)LED亮并順時(shí)針旋轉(zhuǎn)
- {
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P0=table0[i];
- P2=table1[i];
- P1=table1[i];
- P3=table1[i];
- delay(100);
- }
- P0=0xff; P2=0xff; P1=0xff; P3=0xff;
- for(i=0;i<>
- {
- P0=table0[i];
- P2=table1[i];
- P1=table1[i];
- P3=table1[i];
- delay(100);
- }
- P0=0xff; P2=0xff; P1=0xff; P3=0xff;
- }
- }
- void disp12() //間斷8格的4個(gè)LED亮,然后順時(shí)針逐漸點(diǎn)亮(直到全部點(diǎn)亮)
- {
- for(i=0;i<>
- {
- P0=table2[i];
- P2=table3[i];
- P1=table3[i];
- P3=table3[i];
- delay(100);
- }
- delay(1000);
- }
- void disp13() //狀態(tài)13 從LED全部亮到全不亮(間斷8格的4個(gè)LED開始順時(shí)針熄滅)
- {
- for(i=0;i<>
- {
- P0=table4[i];
- P2=table5[i];
- P1=table5[i];
- P3=table5[i];
- delay(100);
- }
- delay(300);
- }
- void disp14() //狀態(tài)14 從LED不亮到全亮(從P0.0、P1.0、P2.0、P3.7開始逐步點(diǎn)亮)
- {
- for(i=0;i<>
- {
- P0=table2[i];
- P1=table2[i];
- P2=table2[i];
- P3=table3[i];
- delay(100);
- }
- }
- void disp15() //狀態(tài)15 從LED全亮到全不亮(從P0.7、P1.7、P2.7、P3.0開始逐步熄滅)
- {
- for(i=0;i<>
- {
- P0=table5[i];
- P1=table5[i];
- P2=table5[i];
- P3=table4[i];
- delay(100);
- }
- delay(300);
- }
- void disp16() //狀態(tài)16 LED燈交替閃爍(頻率有慢變快)
- {
- for(i=0;i<>
- {
- P0=0xaa; P1=0xaa; P2=0xaa; P3=0xaa;
- delay(100);
- P0=~P0; P1=~P1; P2=~P2; P3=~P3;
- delay(100);
- }
- for(i=0;i<>
- {
- P0=0xaa; P1=0xaa; P2=0xaa; P3=0xaa;
- delay(200);
- P0=~P0; P1=~P1; P2=~P2; P3=~P3;
- delay(200);
- }
- for(i=0;i<>
- {
- P0=0xaa; P1=0xaa; P2=0xaa; P3=0xaa;
- delay(300);
- P0=~P0; P1=~P1; P2=~P2; P3=~P3;
- delay(300);
- }
- P0=0xff; P2=0xff; P1=0xff; P3=0xff;
- delay(300);
- }
- void disp17() //狀態(tài)17 LED從P0.7開始逆時(shí)針逐步點(diǎn)亮,(循環(huán)2次)并且速度會(huì)逐步提高
- {
- for(i=0;i<>
- {
- P0=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P1=table2[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P3=table2[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P2=table2[i];
- delay(100);
- }
- P0=0xff; P1=0xff; P3=0xff; P2=0xff;
- /*******************************/
- for(i=0;i<>
- {
- P0=table3[i];
- delay(50);
- }
- for(i=0;i<>
- {
- P1=table2[i];
- delay(50);
- }
- for(i=0;i<>
- {
- P3=table2[i];
- delay(50);
- }
- for(i=0;i<>
- {
- P2=table2[i];
- delay(50);
- }
- P0=0xff; P1=0xff; P3=0xff; P2=0xff;
- }
- void disp18() //狀態(tài)18 LED從P0.7開始逆時(shí)針逐步點(diǎn)亮(每亮8位后就熄滅)
- {
- for(i=0;i<>
- {
- P0=table3[i];
- delay(100);
- }
- P0=0xff;
- for(i=0;i<>
- {
- P1=table2[i];
- delay(100);
- }
- P1=0xff;
- for(i=0;i<>
- {
- P3=table2[i];
- delay(100);
- }
- P3=0xff;
- for(i=0;i<>
- {
- P2=table2[i];
- delay(100);
- }
- P2=0xff;
- }
- void disp19() //狀態(tài)19 LED從P2.7開始順時(shí)針逐步點(diǎn)亮,(循環(huán)2次)并且速度會(huì)逐步提高
- {
- for(i=0;i<>
- {
- P2=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P3=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P1=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table2[i];
- delay(100);
- }
- P0=0xff; P1=0xff; P3=0xff; P2=0xff;
- /*******************************/
- for(i=0;i<>
- {
- P2=table3[i];
- delay(50);
- }
- for(i=0;i<>
- {
- P3=table3[i];
- delay(50);
- }
- for(i=0;i<>
- {
- P1=table3[i];
- delay(50);
- }
- for(i=0;i<>
- {
- P0=table2[i];
- delay(50);
- }
- P0=0xff; P1=0xff; P3=0xff; P2=0xff;
- }
- void disp20() //狀態(tài)20 LED從P2.7開始順時(shí)針逐步點(diǎn)亮(每亮8位后就熄滅)
- {
- for(i=0;i<>
- {
- P2=table3[i];
- delay(100);
- }
- P2=0xff;
- for(i=0;i<>
- {
- P3=table3[i];
- delay(100);
- }
- P3=0xff;
- for(i=0;i<>
- {
- P1=table3[i];
- delay(100);
- }
- P1=0xff;
- for(i=0;i<>
- {
- P0=table2[i];
- delay(100);
- }
- P0=0xff;
- }
- void disp21() //狀態(tài)21 2個(gè)LED開始上下移動(dòng)半圈
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table1[i];
- delay(100);
- }
- P0=0xff; P2=0xff;
- for(i=0;i<>
- {
- P1=table0[i];
- P3=table1[i];
- delay(100);
- }
-
- for(i=0;i<>
- {
- P1=table1[i];
- P3=table0[i];
- delay(100);
- }
- P1=0xff; P3=0xff;
- for(i=0;i<>
- {
- P0=table0[i];
- P2=table0[i];
- delay(100);
- }
- }
- void disp22() //裝態(tài)22 2個(gè)LED自上而下移動(dòng)(循環(huán)5次,且頻率漸快,到最快時(shí)持續(xù)循環(huán)16次,然后循環(huán)5次頻率再逐漸降低)
- {
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table1[i];
- delay(tt);
- }
- P0=0xff; P2=0xff;
- for(i=0;i<>
- {
- P1=table0[i];
- P3=table1[i];
- delay(tt);
- }
- P1=0xff; P3=0xff;
- tt=tt-10;
- }
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table1[i];
- delay(20);
- }
- P0=0xff; P2=0xff;
- for(i=0;i<>
- {
- P1=table0[i];
- P3=table1[i];
- delay(20);
- }
- P1=0xff; P3=0xff;
- }
- tt=20;
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table1[i];
- delay(tt);
- }
- P0=0xff; P2=0xff;
- for(i=0;i<>
- {
- P1=table0[i];
- P3=table1[i];
- delay(tt);
- }
- P1=0xff; P3=0xff;
- tt=tt+10;
- }
- tt=70;
-
- }
- void disp23() //狀態(tài)23 LED上下交替閃爍
- {
- for(i=0;i<>
- {
- P0=0x00; P2=0x00;
- delay(1000);
- P0=0xff; P2=0xff;
- P1=0x00; P3=0x00;
- delay(1000);
- P1=0xff; P3=0xff;
- }
- }
- void disp24() //狀態(tài)24 LED左右交替閃爍
- {
- P1=0xff; P3=0xff; P0=0xff; P2=0xff;
- for(i=0;i<>
- {
- P0=0x00; P1=0x00;
- delay(1000);
- P0=0xff; P1=0xff;
- P2=0x00; P3=0x00;
- delay(1000);
- P2=0xff; P3=0xff;
- }
- }
- void disp25() //狀態(tài)25 LED交替閃爍
- {
- for(i=0;i<>
- {
- P0=0xaa; P1=0xaa; P2=0xaa; P3=0xaa;
- delay(1000);
- P0=~P0; P1=~P1; P2=~P2; P3=~P3;
- delay(1000);
- }
- }
- void disp26() //狀態(tài)26 2個(gè)LED開始上下移動(dòng)半圈(LED不亮流水)
- {
- P0=0x00;P1=0x00;P2=0x00;P3=0x00;
- for(i=0;i<>
- {
- P0=~table1[i];
- P2=~table1[i];
- delay(200);
- }
- P0=0x00; P2=0x00;
- for(i=0;i<>
- {
- P1=~table0[i];
- P3=~table1[i];
- delay(200);
- }
-
- for(i=0;i<>
- {
- P1=~table1[i];
- P3=~table0[i];
- delay(200);
- }
- P1=0x00; P3=0x00;
- for(i=0;i<>
- {
- P0=~table0[i];
- P2=~table0[i];
- delay(200);
- }
- }
- void disp27() //狀態(tài)27 逐步順時(shí)針點(diǎn)亮P2、P1的LED,熄滅后,再順時(shí)針點(diǎn)亮P0、P3的LED
- {
- P0=0xff; P1=0xff; P2=0xff; P3=0xff;
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P2=table3[i];
- P1=table3[i];
- delay(100);
- }
- P2=0xff; P1=0xff;
- for(i=0;i<>
- {
- P0=table2[i];
- P3=table3[i];
- delay(100);
- }
- P0=0xff; P3=0xff;
- }
- }
-
- void disp28() //狀態(tài)28 P1、P2和P0、P3交替閃爍
- {
- for(i=0;i<>
- {
- P1=0x00; P2=0x00; P0=0xff; P3=0xff;
- delay(1000);
- P1=0xff; P2=0xff; P0=0x00; P3=0x00;
- delay(1000);
- }
- P1=0xff; P2=0xff; P0=0xff; P3=0xff;
- }
- void disp29() //狀態(tài)29 逐步順時(shí)針點(diǎn)亮P2、P1的LED,再順時(shí)熄滅后,再順時(shí)針點(diǎn)亮P0、P3的LED,再順時(shí)熄滅
- {
- P0=0xff; P1=0xff; P2=0xff; P3=0xff;
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P2=table3[i];
- P1=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P2=table5[i];
- P1=table5[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table2[i];
- P3=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table4[i];
- P3=table5[i];
- delay(100);
- }
- }
- delay(200);
- }
- void disp30() //狀態(tài)30 逐步逆時(shí)針點(diǎn)亮P2、P1的LED,熄滅后,再逆時(shí)針點(diǎn)亮P0、P3的LED
- {
- P0=0xff; P1=0xff; P2=0xff; P3=0xff;
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P2=table2[i];
- P1=table2[i];
- delay(100);
- }
- P2=0xff; P1=0xff;
- for(i=0;i<>
- {
- P0=table3[i];
- P3=table2[i];
- delay(100);
- }
- P0=0xff; P3=0xff;
- }
- }
- void disp31() //狀態(tài)31 逐步逆時(shí)針點(diǎn)亮P2、P1的LED,再逆時(shí)熄滅后,再逆時(shí)針點(diǎn)亮P0、P3的LED,再逆時(shí)熄滅
- {
- P0=0xff; P1=0xff; P2=0xff; P3=0xff;
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P2=table2[i];
- P1=table2[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P2=table4[i];
- P1=table4[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table3[i];
- P3=table2[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table5[i];
- P3=table4[i];
- delay(100);
- }
- }
- delay(200);
- }
- void disp32() //狀態(tài)32 LED自上而下逐步點(diǎn)亮,然后從下往上逐步熄滅
- {
- for(i=0;i<>
- {
- P0=table3[i];
- P2=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P1=table2[i];
- P3=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P1=table5[i];
- P3=table4[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table4[i];
- P2=table4[i];
- delay(100);
- }
- }
- void disp33() //狀態(tài)33 LED從左往右開始點(diǎn)亮(直到全亮),然后從左右兩邊開始熄滅(直到全部熄滅)
- {
- for(i=0;i<>
- {
- P0=table2[i];
- P1=table2[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P2=table3[i];
- P3=table2[i];
- delay(100);
- }
- delay(500);
- for(i=0;i<>
- {
- P2=table4[i];
- P3=table5[i];
- P1=table4[i];
- P0=table4[i];
- delay(100);
- }
- delay(300);
- }
- void disp34() //狀態(tài)34 LED從左往右開始點(diǎn)亮(直到全亮),然后從中間往左右邊熄滅
- {
- for(i=0;i<>
- {
- P2=table2[i];
- P3=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P0=table3[i];
- P1=table3[i];
- delay(100);
- }
- delay(500);
- for(i=0;i<>
- {
- P2=table5[i];
- P3=table4[i];
- P1=table5[i];
- P0=table5[i];
- delay(100);
- }
- delay(300);
- }
- void disp35() //狀態(tài)35 從P2.7、P1.7開始同時(shí)順時(shí)針旋轉(zhuǎn),直到LED全亮
- {
- for(i=0;i<>
- {
- P2=table3[i];
- P1=table3[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P3=table3[i];
- P0=table2[i];
- delay(100);
- }
- }
- void disp36() //狀態(tài)36 從P0.7、P3.1開始同時(shí)逆時(shí)針旋轉(zhuǎn),直到LED全亮
- {
- for(i=0;i<>
- {
- P0=table3[i];
- P3=table2[i];
- delay(100);
- }
- for(i=0;i<>
- {
- P1=table2[i];
- P2=table2[i];
- delay(100);
- }
- }
- void disp37() //狀態(tài)37 2個(gè)LED自上而下移動(dòng),并點(diǎn)亮最下2個(gè)LED,然后2個(gè)LED再自下而上回去,同時(shí)4個(gè)LED(上下各2個(gè)LED)再來回移動(dòng)一次
- {
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table1[i];
- delay(100);
- }
- P0=0xff; P2=0xff;
- for(i=0;i<>
- {
- P1=table0[i];
- P3=table1[i];
- delay(100);
- }
-
- for(i=0;i<>
- {
- P1=table7[i];
- P3=table6[i];
- delay(100);
- }
- P1=0x7f; P3=0xfe;
- for(i=0;i<>
- {
- P0=table0[i];
- P2=table0[i];
- delay(100);
- }
-
- for(i=0;i<>
- {
- P0=table1[i];
- P2=table1[i];
- P1=table1[i];
- P3=table0[i];
- delay(200);
- }
-
- for(i=0;i<>
- {
- P0=table0[i];
- P1=table0[i];
- P2=table0[i];
- P3=table1[i];
- delay(200);
- }
- P0=0xff;P1=0xff; P2=0xff;P3=0xff;
- }
- void disp38() //狀態(tài)38 逐步順時(shí)針點(diǎn)亮P2、P1的LED,熄滅后,再順時(shí)針點(diǎn)亮P0、P3的LED
- {
- P0=0xff; P1=0xff; P2=0xff; P3=0xff;
- for(j=0;j<>
- {
- for(i=0;i<>
- {
- P2=table3[i];
- P1=table3[i];
- delay(100);
- }
- P2=0xff; P1=0xff;
- for(i=0;i<>
- {
- P0=table2[i];
- P3=table3[i];
- delay(100);
- }
- P0=0xff; P3=0xff;
- }
- }
- void disp39() //狀態(tài)39 P1、P3LED(下半部分)一直亮,上半部分LED向外擴(kuò)張亮,然后閃爍3次
- {
- P1=0x00; P3=0x00;
- for(i=0;i<>
- {
- P0=table3[i];
- P2=table3[i];
- delay(150);
- }
- for(i=0;i<>
- {
- P0=table3[i];
- P2=table3[i];
- delay(300);
- }
- for(i=0;i<>
- {
- P0=~P0; P2=~P2;
- delay(300);
- }
- delay(1000);
- }
- void disp40() //狀態(tài)40 LED從P3.0、P0.7開始逆時(shí)針同時(shí)熄滅,直到LED全部熄滅
- {
- for(i=0;i<>
- {
- P3=table4[i];
- P0=table5[i];
- delay(100);
- }
- for(i=1;i<>
- {
- P2=table4[i];
- P1=table4[i];
- delay(100);
- }
- delay(300);
- }
- void disp41() //狀態(tài)41 LED從P2.7、P1.7開始順時(shí)針同時(shí)熄滅,直到全部熄滅
- {
- for(i=0;i<>
- {
- P2=table5[i];
- P1=table5[i];
- delay(100);
- }
- for(i=1;i<>
- {
- P0=table4[i];
- P3=table5[i];
- delay(100);
- }
- delay(300);
- }
- void main()
- {
- while(1)
- {
- disp22(); //裝態(tài)22 2個(gè)LED自上而下移動(dòng)(循環(huán)5次,且頻率漸快,到最快時(shí)持續(xù)循環(huán)16次,然后循環(huán)5次頻率再逐漸降低)
- disp0(); //狀態(tài)0 所有LED閃爍3次
- disp1(); //狀態(tài)1 LED順時(shí)針轉(zhuǎn)一圈
- disp2(); //狀態(tài)2 LED逆時(shí)針轉(zhuǎn)一圈
- disp3(); //狀態(tài)3 4個(gè)LED同時(shí)順時(shí)、逆時(shí)針移動(dòng)1/4圈
- disp4(); //狀態(tài)4 2個(gè)LED同時(shí)順時(shí)針移動(dòng)半圈
- disp5(); //狀態(tài)5 2個(gè)LED同時(shí)逆時(shí)針移動(dòng)半圈
- disp6(); //狀態(tài)6 LED自上而下逐漸點(diǎn)亮(一半點(diǎn)亮一半不亮)
- disp7(); //狀態(tài)7 LED自下而上逐漸點(diǎn)亮(直到全部點(diǎn)亮)
- disp0(); //狀態(tài)0 所有LED閃爍3次
- disp8(); //狀態(tài)8 間斷8格的4個(gè)LED亮并逆時(shí)針旋轉(zhuǎn)
- disp9(); //狀態(tài)9 間斷8格的4個(gè)LED亮,然后逆時(shí)針逐漸點(diǎn)亮(直到全部點(diǎn)亮)
- disp10(); //狀態(tài)10 從LED全部亮到全不亮(間斷8格的4個(gè)LED開始逆時(shí)針熄滅)
- disp11(); //狀態(tài)11 間斷8格的4個(gè)LED亮并順時(shí)針旋轉(zhuǎn)
- disp12(); //間斷8格的4個(gè)LED亮,然后順時(shí)針逐漸點(diǎn)亮(直到全部點(diǎn)亮)
- disp13(); //狀態(tài)13 從LED全部亮到全不亮(間斷8格的4個(gè)LED開始順時(shí)針熄滅)
- disp14(); //狀態(tài)14 從LED不亮到全亮(從P0.0、P1.0、P2.0、P3.7開始逐布點(diǎn)亮)
- disp15(); //狀態(tài)15 從LED全亮到全不亮(從P0.7、P1.7、P2.7、P3.0開始逐步熄滅)
- disp16(); //狀態(tài)16 LED燈交替閃爍(頻率有慢變快)
- disp17(); //狀態(tài)17 LED從P0.7開始逆時(shí)針逐步點(diǎn)亮,并且速度會(huì)逐步提高
- disp18(); //狀態(tài)18 LED從P0.7開始逆時(shí)針逐步點(diǎn)亮(每亮8位后就熄滅)
- disp19(); //狀態(tài)19 LED從P2.7開始順時(shí)針逐步點(diǎn)亮,(循環(huán)2次)并且速度會(huì)逐步提高
- disp20(); //狀態(tài)20 LED從P2.7開始順時(shí)針逐步點(diǎn)亮(每亮8位后就熄滅)
- disp21(); //狀態(tài)21 2個(gè)LED開始上下移動(dòng)半圈
- disp22(); //裝態(tài)22 2個(gè)LED自上而下移動(dòng)(循環(huán)5次,且頻率漸快,到最快時(shí)持續(xù)循環(huán)16次,然后循環(huán)5次頻率再逐漸降低
- disp23(); //狀態(tài)23 LED上下交替閃爍
- disp39(); //狀態(tài)39 P1、P3LED(下半部分)一直亮,上半部分LED向外擴(kuò)張亮,然后閃爍3次
- disp24(); //狀態(tài)24 LED左右交替閃爍
- disp25(); //狀態(tài)25 LED交替閃爍
- disp8(); //狀態(tài)8 間斷8格的4個(gè)LED亮并逆時(shí)針旋轉(zhuǎn)
- disp9(); //狀態(tài)9 間斷8格的4個(gè)LED亮,然后逆時(shí)針逐漸點(diǎn)亮(直到全部點(diǎn)亮)
- disp10(); //狀態(tài)10 從LED全部亮到全不亮(間斷8格的4個(gè)LED開始逆時(shí)針熄滅)
- disp26(); //狀態(tài)26 2個(gè)LED開始上下移動(dòng)半圈(LED不亮流水)
- disp27(); //狀態(tài)27 逐步順時(shí)針點(diǎn)亮P2、P1的LED,熄滅后,再順時(shí)針點(diǎn)亮P0、P3的LED
- disp28(); //狀態(tài)28 P1、P2和P0、P3交替閃爍
- disp38(); //狀態(tài)38 逐步順時(shí)針點(diǎn)亮P2、P1的LED,熄滅后,再順時(shí)針點(diǎn)亮P0、P3的LED
- disp29(); //狀態(tài)29 逐步順時(shí)針點(diǎn)亮P2、P1的LED,再順時(shí)熄滅后,再順時(shí)針點(diǎn)亮P0、P3的LED,再順時(shí)熄滅
- disp30(); //狀態(tài)30 逐步逆時(shí)針點(diǎn)亮P2、P1的LED,熄滅后,再逆時(shí)針點(diǎn)亮P0、P3的LED
- disp31(); //狀態(tài)31 逐步逆時(shí)針點(diǎn)亮P2、P1的LED,再逆時(shí)熄滅后,再逆時(shí)針點(diǎn)亮P0、P3的LED,再逆時(shí)熄滅
- disp32(); //狀態(tài)32 LED自上而下逐步點(diǎn)亮,然后從下往上逐步熄滅
- disp33(); //狀態(tài)33 LED從左往右開始點(diǎn)亮(直到全亮),然后從左右兩邊開始熄滅(直到全部熄滅)
- disp37(); //狀態(tài)37 2個(gè)LED自上而下移動(dòng),并點(diǎn)亮最下2個(gè)LED,然后2個(gè)LED再自下而上回去,同時(shí)4個(gè)LED(上下各2個(gè)LED)再來回移動(dòng)一次
- disp36(); //狀態(tài)36 從P0.7、P3.0開始同時(shí)逆時(shí)針旋轉(zhuǎn),直到LED全亮
- disp40(); //狀態(tài)40 LED從P3.0、P0.7開始逆時(shí)針同時(shí)熄滅,直到LED全部熄滅
- disp35(); //狀態(tài)35 從P2.7、P1.7開始同時(shí)順時(shí)針旋轉(zhuǎn),直到LED全亮
- disp41(); //狀態(tài)41 LED從P2.7、P1.7開始順時(shí)針同時(shí)熄滅,直到全部熄滅
- disp34(); //狀態(tài)34 LED從左往右開始點(diǎn)亮(直到全亮),然后從中間往左右邊熄滅
- disp28(); //狀態(tài)28 P1、P2和P0、P3交替閃爍
- }
- }
|