|
上次發(fā)的 研究了很多天 算是寫程序?qū)α税桑!請高手看?
制作出來的實(shí)物圖如下:
2.jpg (246.41 KB, 下載次數(shù): 41)
下載附件
2019-12-29 10:45 上傳
1.jpg (146.47 KB, 下載次數(shù): 49)
下載附件
2019-12-29 10:45 上傳
單片機(jī)源程序如下:
- #include<reg51.h>
- #include<intrins.h>
- #define uchar unsigned char
- #define uint unsigned int
- uchar i; //////i=100///////
- uchar a;
- unsigned char table1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff};///
- unsigned char table2[]={0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};////高位到低位逐個(gè)熄滅////
- unsigned char table3[]={0x80,0xc0,0xe0,0xf0};/////高4位依次點(diǎn)亮每個(gè)燈P1口//////
- unsigned char table4[]={0x01,0x03,0x07,0x0f};//////低4位依次點(diǎn)亮每個(gè)燈P1口///
- unsigned char table5[]={0x81,0xc3,0xe7,0xff};//////高和低位往中間亮P1口,逐個(gè)點(diǎn)亮/////
- unsigned char table6[]={0xff,0xfe,0xfc,0xf8,0xe0,0xc0,0x80,0x00};/////低位到高位逐個(gè)熄滅/////
- unsigned char table7[]={0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};/////依次高位到低位每個(gè)點(diǎn)燈亮/////
- unsigned char table8[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};/////依次低位到高位每個(gè)點(diǎn)燈亮/////
- unsigned char table9[]={0xff,0x7e,0x3c,0x18,0x00};//////高和低位往中間亮P1口,逐個(gè)熄滅/////
- sbit RR=P3^5;
- sbit GG=P3^6;/////P0,P1,P2,輸出低電平時(shí)////////
- sbit BB=P3^7;
- void delay(uint z)
- {
- uint x,y;
- for(x=z;x>0;x--)
- for(y=80;y>0;y--);//////Y=110///////
- }
- void main()
- {
- while(1)
- {
- /////////////////P2,P1,P0,高位往低位逐個(gè)循環(huán)點(diǎn)亮3次////////
- for(a=0;a<=2;a++) ///////循環(huán)次數(shù)(a<=2),3次///////
- {
- RR=0;
- GG=1; ///////紅色/////
- BB=1;
- P2=0x01;
-
- for(i=0;i<8;i++)
- {
-
- P2=_cror_(P2,1);
- P1=0x00;
- P0=0x00;
- delay(100);
- }
- RR=1;
- GG=0; //////綠色///////
- BB=1;
- P1=0x01;
- for(i=0;i<8;i++)
- {
-
- P2=0x00;
- P1=_cror_(P1,1);
- P0=0x00;
- delay(100);
- }
- RR=1;
- GG=1; /////////藍(lán)色/////
- BB=0;
- P0=0x01;
- for(i=0;i<8;i++)
- {
-
- P2=0x00;
- P1=0x00;
- P0=_cror_(P0,1);
- delay(100);
- }
- }
- /////////////////P0,P1,P2低位到高位逐個(gè)點(diǎn)亮/////////
- RR=0;
- GG=1; //////紅色//////
- BB=1;
- P0=0x80;
- for(i=0;i<8;i++)
- {
-
- P0=_crol_(P0,1);
- P1=0x00;
- P2=0x00;
- delay(100);
- }
- RR=1;
- GG=0; //////綠色///////
- BB=1;
- P1=0x80;
- for(i=0;i<8;i++)
- {
-
- P0=0x00;
- P1=_crol_(P1,1);
- P2=0x00;
- delay(100);
- }
- RR=1;
- GG=1; //////藍(lán)色//////
- BB=0;
- P2=0x80;
- for(i=0;i<8;i++)
- {
-
- P0=0x00;
- P1=0x00;
- P2=_crol_(P2,1);
- delay(100);
- }
- ////////////////P2,P1,P0,高位到低位逐個(gè)滅,變顏色///////
- RR=0;
- GG=0; ////////黃色/////////
- BB=1;
- P2=0xfe;
- for(i=0;i<8;i++)
- {
-
- P2=_cror_(P2,1);
- P1=0xff;
- P0=0xff;
- delay(200);
- }
- RR=0;
- GG=1; ////////紫色/////////
- BB=0;
- P1=0xfe;
- for(i=0;i<8;i++)
- {
-
- P2=0xff;
- P1=_cror_(P1,1);
- P0=0xff;
- delay(200);
- }
-
-
- RR=1;
- GG=0; /////天藍(lán)色//////
- BB=0;
- P0=0xfe;
- for(i=0;i<8;i++)
- {
-
- P2=0xff;
- P1=0xff;
- P0=_cror_(P0,1);
- delay(200);
- }
- /////////P2,P1,P0,高位到低位依次每個(gè)點(diǎn)亮,循環(huán)2次/////////////
- for(a=0;a<=1;a++)//////循環(huán)次數(shù)程序(a<=1)循環(huán)2次//////
- {
- RR=0;
- GG=1; ////////紫色///////
- BB=0;
- for(i=0;i<8;i++)
- {
- P2=table7[i];
- P1=0x00;
- P0=0x00;
- delay(50);
- }
- for(i=0;i<8;i++)
- {
- P2=0xff;
- P1=table7[i];
- P0=0x00;
- delay(50);
- }
- for(i=0;i<8;i++)
- {
- P2=0xff;
- P1=0xff;
- P0=table7[i];
- delay(50);
- }
-
- /////////P0,P1,P2,低位到高位依次每個(gè)點(diǎn)亮,循環(huán)/////////////
- RR=0;
- GG=0; ////////白色//////////
- BB=0;
- for(i=0;i<8;i++)
- {
- P0=table8[i];
- P1=0x00;
- P2=0x00;
- delay(50);
- }
- for(i=0;i<8;i++)
- {
- P0=0xff;
- P1=table8[i];
- P2=0x00;
- delay(50);
- }
- for(i=0;i<8;i++)
- {
- P0=0xff;
- P1=0xff;
- P2=table8[i];
- delay(50);
- }
- }
- ////////////////兩側(cè)往下流,先左后右流//////////
- RR=0;
- GG=0; /////白色
- BB=0;
- for(i=0;i<8;i++)
- {
- P0=table8[i];
- P1=0x00;
- P2=0x00;
- delay(200);
- }
- for(i=0;i<4;i++)
- {
- P0=0xff;
- P1=table4[i];
- delay(200);
- }
- for(i=0;i<4;i++)
- {
- P1=0x0f;
- delay(200);
- }
- RR=0;
- GG=1; //////紫色
- BB=0;
- for(i=0;i<8;i++)
- {
- P2=table7[i];
- P1=0x00;
- P0=0x00;
- delay(200);
- }
- for(i=0;i<4;i++)
- {
- P2=0xff;
- P1=table3[i];
- delay(200);
- }
- for(i=0;i<4;i++)
- {
- P1=0xf0;
- delay(200);
- }
- /////////////////兩側(cè)循環(huán)閃爍4次///////////
- for(a=0;a<=3;a++)/////循環(huán)4次////
- {
- RR=1;
- GG=0; //////天藍(lán)色
- BB=0;
- for(i=0;i<8;i++)
- {
- P2=0xff;
- P1=0xf0;
- P0=0x00;
- delay(100);
- }
- RR=0;
- GG=0; //////黃色
- BB=1;
- for(i=0;i<8;i++)
- {
- P0=0xff;
- P1=0x0f;
- P2=0x00;
- delay(100);
- }
- }
- ////////////////兩側(cè)往下逐個(gè)點(diǎn)亮////////
- RR=0;
- GG=1; //////紫色
- BB=0;
- for(a=0;a<=1;a++) //////////循環(huán)次數(shù)(a<=1)4次///////
- {
- for(i=0;i<8;i++)
- {
- P0=table8[i];
- P2=table7[i];
- P1=0x00;
- delay(200);
- }
- for(i=0;i<4;i++)
- {
- P0=0xff;
- P2=0xff;
- P1=table5[i];
- delay(200);
- }
- }
- /////////////////兩側(cè)往下逐個(gè)熄滅/////////
- RR=0;
- GG=0; //////黃色/////
- BB=1;
- for(a=0;a<=1;a++) //////////循環(huán)次數(shù)(a<=1)2次///////
- {
- for(i=0;i<8;i++)
- {
- P2=table2[i];
- P0=table6[i];
- P1=0xff;
- delay(100);
- }
- for(i=0;i<5;i++)
- {
- P2=0x00;
- P1=table9[i];
- P0=0x00;
- delay(100);
- }
- }
-
- ///////////////P0,P1,P2,全亮逐個(gè)熄滅/////////
- RR=1;
- GG=0; //////綠色/////
- BB=1;
- for(i=0;i<8;i++)
- {
- P0=table6[i];
- P1=0xff;
- P2=0xff;
- delay(100);
- }
- for(i=0;i<8;i++)
- {
- P0=0x00;
- P1=table6[i];
- P2=0xff;
- delay(100);
- }
- for(i=0;i<8;i++)
- {
- P0=0x00;
- P1=0x00;
- P2=table6[i];
- delay(100);
- }
- ///////////////P2,P1,P0,全亮逐個(gè)熄滅/////////
- RR=1;
- GG=1; //////藍(lán)色/////
- BB=0;
- for(i=0;i<8;i++)
- {
- P2=table2[i];
- P1=0xff;
- P0=0xff;
- delay(100);
- }
- for(i=0;i<8;i++)
- {
- P2=0x00;
- P1=table2[i];
- P0=0xff;
- delay(100);
- }
- for(i=0;i<8;i++)
- {
- P2=0x00;
- P1=0x00;
- P0=table2[i];
- delay(100);
- }
-
- }
- }
復(fù)制代碼 |
|