LED心形灯程序源代码(包含仿真图)

合集下载

心形流水灯程序

心形流水灯程序

#include<reg52.h>#define uchar unsigned charuchar flag=200;///////////////////////////////////////////////////////////////////////uchar code Tab1[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0xFF};//暗中左移向下uchar code Tab2[]={0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF};//暗中右移向上uchar code Tab3[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00};//亮中左移向下uchar code Tab4[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01,0x00};//亮中右移向上uchar code Tab11[]={0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x00,0xff};//暗中左移向下uchar code Tab22[]={0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01,0x00,0xff};////////////////////////////////////////////////////////////////////uchar code Tab33[]={0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF};uchar code Tab44[]={0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xFF};uchar code Tab55[]={0x08,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0xff};uchar code Tab5[]={0x00,0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xff};uchar code Tab6[]={0x00,0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xff};uchar code Tab7[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};uchar code Tab8[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};////////////////////////////////////////////////////////////////void shansuo();void xl();///////////////////////////////////////////////////////////////void delay(void){unsigned char m,n;for(m=0;m<flag;m++)for(n=0;n<250;n++);}///////////////////////////////////void hy1(void) //点亮状态逆时针旋转90度(一个一个灭){unsigned char i;for(i=0;i<8;i++){P0=Tab11[i];P1=Tab22[i];P2=Tab11[i];P3=Tab22[i];delay();}for(i=0;i<8;i++){P0=Tab44[i];P1=Tab55[i];P2=Tab44[i];P3=Tab55[i];delay();}///////////////////////////////////////////void hy2(void) //暗中逆时针转360。

51心形灯范例程序。

51心形灯范例程序。
} void action1(uchar speed)
{ for(i=1;i<9;i++) { uchar x1=0xff; P0=x1>>i; P2=x1>>i; Delay(speed); } for(i=1;i<9;i++) { uchar x1=0xff; P1=x1<<i; P3=x1>>i; Delay(speed); } P0=0xff;P1=0xff;P2=0xff;P3=0xff;
} void action2(uchar speed) {
for(i=1;i<9;i++) {
uchar x1=0xff; P1=x1>>i; P3=x1<<i; Delay(speed); } for(i=1;i<9;i++) { uchar x1=0xff; P0=x1<<i; P2=x1<<i; Delay(speed); } P0=0xff;P1=0xff;P2=0xff;P3=0xff; } void action3(uchar speed) { for(i=1;i<9;i++) { uchar x1=0xff; P2=x1>>i; Delay(speed); } for(i=1;i<9;i++)
void acBiblioteka ion10(uchar speed) {
for(i=1;i<9;i++) { uchar x1=0x0fe; P2=_cror_(x1,i); Delay(speed); } P2=0xff; for(i=1;i<9;i++) { uchar x1=0x0fe; P3=_cror_(x1,i); Delay(speed); } P3=0xff; for(i=1;i<9;i++) { uchar x1=0x0fe; P1=_cror_(x1,i); Delay(speed); } P1=0xff; for(i=1;i<8;i++) { uchar x1=0x0fe; P0=_crol_(x1,i); Delay(speed); } P0=0xff;P1=0xff;P2=0xff;P3=0xff; } void action11(uchar speed) { for(i=1;i<9;i++) { uchar x1=0x0fe; P0=_cror_(x1,i); Delay(speed); } P0=0xff; for(i=0;i<8;i++) { uchar x1=0xfe; P1=_crol_(x1,i);

基于单片机的心形花样灯完整程序+仿真图

基于单片机的心形花样灯完整程序+仿真图

MOV P1,A MOV A,R0 MOV DPTR,#TAB14 MOVC A,@A+DPTR MOV P2,A MOV A,R0 MOV DPTR,#TAB15 MOVC A,@A+DPTR MOV P3,A LCALL DELAY INC R0 CJNE R0,#226,MAIN3 MOV R0,#00H LJMP MAIN DELAY: ;误差 0us MOV R7,#07H DL1: MOV R6,#0A8H DL0: MOV R5,#18H DJNZ R5,$ DJNZ R6,DL0 DJNZ R7,DL1 RET
FH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,07FH,03FH,01FH,00FH,007H,003H,001H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,0 00H,000H,000H,000H,000H,000H,080H,0C0H,0E0H,0F0H,0F8H,0FCH,0FEH,0FFH DB 0FFH,0FEH,0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,080H,000H,000H,000H,000H,000H,000H,000H,000H,000 H DB 000H,000H,000H,000H,000H,000H,000H,000H,080H,0C0H,0E0H,0F0H,0F8H,0FCH,0FEH,0FFH,0FFH TAB3:DB 07FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH DB 07FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH DB 07FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH DB 07FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH DB 07FH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH DB 0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH DB 0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH DB 0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH DB 07EH,0FCH,0F9H,0F3H,0E7H,0CFH,09FH,03FH DB 07EH,0FCH,0F9H,0F3H,0E7H,0CFH,09FH,03FH DB 03EH,07CH,0F8H,0F1H,0E3H,0C7H,08FH,01FH DB 03EH,07CH,0F8H,0F1H,0E3H,0C7H,08FH,01FH DB 08FH,0C7H,0E3H,0F1H,0F8H,07CH,03EH DB 08FH,0C7H,0E3H,0F1H,0F8H,07CH,03EH DB 03FH,09FH,0CFH,0E7H,0F3H,0F9H,0FCH,07EH DB 03FH,09FH,0CFH,0E7H,0F3H,0F9H,0FCH,07EH DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,07FH,03 FH,09FH,0CFH,067H,033H,099H,0CCH,066H,033H,099H,0CCH,066H DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,07FH,03 FH,01FH,00FH,007H,003H,001H,000H,000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,080H,0C0H, 0E0H,0F0H,0F8H,0FCH,0FEH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH

心形灯程序

心形灯程序
delay(t);
}
}
void zgm(uint t, uchar a)
{ uchar i,j;
for(j=0;j<a;j++)
{
P0=P1=P2=P3=0x00;
P0=0x80;delay(t);
for(i=0;i<5;i++)
} P3=0XFF ;
for(i=0;i<6;i++)
{ P1= table5[i+2];
delay(t-5);
} P1=0XFF;
for(i=0;i<5;i++)
{ P0= table4[i+2];
} P2=0XFF;
for(i=0;i<5;i++)
{ P3=table5[i+3];
delay(t-10);
} P3=0XFF;
for(i=0;i<6;i++)
{ P1= table5[i+2];
delay(t-10);
{ P1= table5[i+2];
delay(t-30);
} P1=0XFF;
P0=0X18;delay(t-35);
P0=0X14;delay(t-35);
P0=0X0c;delay(t-35);
P1=P2=P3=0xff; //P07~4
uchar table5[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; //流水亮7~0
/***********************************************************/

自制“心形”单片机呼吸灯

自制“心形”单片机呼吸灯
自制“心形”单片机呼吸灯
所谓的“呼吸灯”,就是通过程序控制 led 灯的闪烁过程,像呼吸一样 有节奏。有亮度渐变的过程。 先来张效果 这这是未加修饰的样子,不过进行了简单的装饰后,就 变身超级有爱的东西了 制作过程: 1//****************************** 2//51 单片机模拟呼吸灯 3//2012.9.23 4//menglei 5//p0.0 接一个 LED 灯,状态 0 为亮 6//****************************** 7 8 9#include 10#defineN2//亮暗的速率 11#defineT800//PWM 的周期 12#defineT11400 13#defineT2900 14//sbitled0=P0; 15//====================== 16voidpwm(intx) 17{
43{ 44flash1(); 45} 46} 程序不多,但是电路的制作的确很费时间和脑子,因为要考虑每条线的 走线,还不能让线太过于繁琐 这是中间的一部分,像那个显像管电视的样子哈哈哈 正面: 调试时的走线:(不堪入目啊) 最后的制作: tips:感谢大家的阅读,本文由我司收集整编。仅} 20//====================== 21 22voidflash1(void){ 23intt=0; 24charf=0; 25intcount=5;//5 次,每个函数执行的次数 26while(1){ 27P0=0x00; 28pwm(t);//Toff,亮的时间 29//led0=1; 30P0=0xff; 31pwm(T-t+100);//Ton,暗的时间 32if(!f)t+=N+1;//亮速率较快,模拟呼吸 33elset-=N;//暗速率较慢 34if(tT){f=1;t=T;}//超过最大值时,返回最大值,标志为暗 35if(t 小于 0){f=0;t=0;}//超过最小值时,返回最小值,标志为亮 36//count--; 37} 38} 39voidmain() 40{ 41 42while(1)

心形灯程序

心形灯程序

void model1(){ for(;;){led0 = 0x00;led1 = 0x00;led2 = 0x00;P0 = 0x01;delay100ms();if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10msif(S1==0)break;while(!S1);}}}void model2(){led0 = 0x00;led1 = 0x00;led2 = 0x00;P0 = 0x01;for(;;){led0 = Two_flashes[1];delay100ms();delay100ms();led0 = Two_flashes[2];delay100ms();delay100ms();led0 = quanliang[0];if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10msif(S1==0)break;while(!S1);}led1 = Two_flashes[1];delay100ms();delay100ms();led1 = Two_flashes[2];delay100ms();delay100ms();led1 = quanliang[0];if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10ms if(S1==0)break;while(!S1);}led2 = Two_flashes[1];delay100ms();delay100ms();led2 = Two_flashes[2];delay100ms();delay100ms();led2 = quanliang[0];if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10ms if(S1==0)break;while(!S1);}P0 = Two_flashes[3];delay100ms();delay100ms();P0 = Two_flashes[4];delay100ms();delay100ms();P0 = 0x01;if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10msif(S1==0)break;while(!S1);}}}void model3(){led0 = 0x00;led1 = 0x00;led2 = 0x00;P0 = 0x01;for(;;){led0 = Three_flashing[1];delay100ms();delay100ms();if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10msif(S1==0)break;while(!S1);}led0 = Three_flashing[2];led1 = Three_flashing[3];delay100ms();delay100ms();led0 = quanliang[0];if(S1==0) //检测按键K1是否按下{if(S1==0)break;while(!S1);}led1 = Three_flashing[4];delay100ms();delay100ms();led1 = quanliang[0];if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10ms if(S1==0)break;while(!S1);}led2 = Three_flashing[5];delay100ms();delay100ms();led2 = quanliang[0];if(S1==0) //检测按键K1是否按下{if(S1==0)break;while(!S1);}P0 = Three_flashing[6];delay100ms();delay100ms();P0 = 0x01;if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10msif(S1==0)break;while(!S1);}}}void main(){u16 i = 30;for(;i;i--){model1();model2();model3();if(S1==0) //检测按键K1是否按下{delay(1000); //消除抖动一般大约10msif(S1==0)continue;while(!S1);}}}。

LED心形灯程序源代码(包含仿真图)

LED心形灯程序源代码(包含仿真图)
for(i=0;i<9;i++)
{
P3=~temp;
delayms(70);
temp=temp<<1;
}
temp=0x01;
for(i=0;i<9;i++)
{
P1=~temp;
delayms(70);
temp=temp<<1;
}
P0=0X00;P1=0X00;P2=0X00; P3=0X00;//l->r
P1=temp1;
delayms(100);
temp1=temp1<<1;
}
P0=0Xff; //全灭
P1=0Xff;
P2=0xff;
P3=0Xff;
delayms(100);
}
for(j=3;j>0;j--)
{
temp1=0xfe;
for(i=0;i<8;i++)
{
P0=temp1;
P3=temp1;
delayms(70);
}
temp=0x01;temp1=0x80;
for(i=0;i<9;i++)
{
P1=~temp;
P0=~temp1;
temp=temp<<1;temp1=temp1>>1;
delayms(70);
}
}
k--;
}
}
void way3()
{
unsigned int i,sum,sum1,k,temp1;
temp1=0x80;
sum=0;sum1=0;
for(i=0;i<8;i++)

心形流水灯叠加代码一个到8个叠加。

心形流水灯叠加代码一个到8个叠加。

心形流水灯叠加代码一个到8个叠加。

#include#define uint unsigned int#define uchar unsigned char#includeuchar c1[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//高位往低位移动加uchar c2[7]={0x7e,0xbe,0xde,0xee,0xf6,0xfa,0xfc};uchar c3[6]={0x7c,0xbc,0xdc,0xec,0xf4,0xf8};uchar c4[5]={0x78,0xb8,0xd8,0xe8,0xf0};uchar c5[4]={0x70,0xb0,0xd0,0xe0};uchar c6[3]={0x60,0xa0,0xc0};uchar c7[2]={0x40,0x80};uchar b3[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};// 低位向高位移动0--7 // uchar b4[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};/// 高位向低位移动7--0 // uchar a1[7]={0x7e,0x7d,0x7b,0x77,0x6f,0x5f,0x3f}; //一个点到两个点uchar a2[6]={0x3e,0x3d,0x3b,0x37,0x2f,0x1f}; // 两个到三个uchar a3[5]={0x1e,0x1d,0x1b,0x17,0x0f}; // 三个到四个uchar a4[4]={0x0e,0x0d,0x0b,0x07};//4个到5个uchar a5[3]={0x06,0x05,0x03};//5个到6个uchar a6[2]={0x02,0x01};//6到7//////////////////////////////////////////void delay(int t){ int i;while(t--){ for( i=114; i>0;i--);}}//////////////////////////// void m() ///跑3段{ int i,s;s=30;for(i=0;i<8;i++){ P3=b3[i];delay(s);}P3=0xff;for(i=0;i<8;i++){P2=b3[i];delay(s);}P2=0xff;for(i=0;i<8;i++){P0=b4[i];delay(s);}P0=0xff; delay(s);}/////////////////////////// void m1() //跑两段{int i,s;s=50;for(i=0;i<8;i++){ P3=b3[i];delay(s);}P3=0xff;for(i=0;i<8;i++){P2=b3[i];delay(s);}P2=0xff; delay(s);}void m2() //跑一段{int i,s;s=50;for(i=0;i<8;i++){ P3=b3[i];delay(s);}P3=0xff;delay(s);}////////////////////////////////////////////////////延时函数void main (){ int i,s; s=50;// P1=P0=P2=P3=0XFF;for(i=0;i<8;i++){ P3=b3[i];delay(s);}P3=0xff;for(i=0;i<8;i++)P2=b3[i];delay(s);}P2=0xff;for(i=0;i<8;i++){P0=b4[i];delay(s);}P0=0xff;for(i=0;i<8;i++){P1=b3[i];delay(s);}//while(1);/////////一个点完成m();for(i=0;i<7;i++){P1=a1[i];delay(s);}////第一段第二个点完成for(i=0;i<8;i++){ P3=b3[i];delay(s);}P3=0xff;for(i=0;i<8;i++)P2=b3[i];delay(s);}P2=0xff;for(i=0;i<8;i++)P0=b4[i];delay(s);}P0=0xff;for(i=0;i<6;i++){P1=a2[i];delay(s);} //第一段第三点完成///////////////////////////////// m();for(i=0;i<5;i++){P1=a3[i];delay(s);} ////////第一段第4点亮m();for(i=0;i<4;i++){P1=a4[i];delay(s);}//////////////第一段第五个灯亮m();for(i=0;i<3;i++){P1=a5[i];delay(s);//////////////第一段第6个亮m();for(i=0;i<2;i++){P1=a6[i];delay(s);} /////第一段第7个亮m();P1=0x00;delay(s);/////第一段第8个亮//////////////////////////////第一段全部亮转下一段for(i=0;i<8;i++){P0=c1[i];delay(s);} ///////////////第2段第一点亮m1();for(i=0;i<7;i++){P0=c2[i];delay(s);}m1();for(i=0;i<6;i++){P0=c3[i];delay(s);}m1();for(i=0;i<5;i++){P0=c4[i];delay(s);}m1();for(i=0;i<4;i++){P0=c5[i];delay(s);}m1();for(i=0;i<3;i++){P0=c6[i];delay(s);}m1();for(i=0;i<2;i++){P0=c7[i];delay(s);}m1();P0=0x00; delay(s);////////////////////////////////第二段全亮/////////////////////////////第2段全亮m2(); for(i=0;i<8;i++){P2=b3[i];delay(s);}m2();for(i=0;i<7;i++){P2=a1[i];delay(s);}m2();for(i=0;i<6;i++){P2=a2[i];delay(s);}m2();for(i=0;i<5;i++){P2=a3[i];delay(s);}m2();for(i=0;i<4;i++){P2=a4[i];delay(s);}m2();for(i=0;i<3;i++){P2=a5[i];delay(s);}m2();for(i=0;i<2;i++){P2=a6[i];delay(s);}m2();P2=0x00; delay(s);//////////////////////第3段全亮for(i=0;i<8;i++){P3=b3[i];delay(s); }for(i=0;i<7;i++) {P3=a1[i];delay(s); } for(i=0;i<6;i++) { P3=a2[i];delay(s); } for(i=0;i<5;i++) { P3=a3[i];delay(s); } for(i=0;i<4;i++) { P3=a4[i];delay(s); } for(i=0;i<3;i++) { P3=a5[i];delay(s); } for(i=0;i<2;i++) { P3=a6[i];delay(s); } P3=0x00; delay(s); }。

单片机心型led变化的程序

单片机心型led变化的程序

为了编写一个单片机控制心型LED变化的程序,我们需要考虑一些关键因素,如LED 的布局、连接方式,以及我们想要实现的具体效果。

以下是一个基于Arduino平台的示例程序,它假设你有一个心型的LED阵列,可以通过某种方式(例如通过移位寄存器或使用多个数字引脚)连接到Arduino板上。

这个程序将实现一个基本的效果:心型LED将逐渐亮起,然后再逐渐熄灭。

c// 假设心型LED阵列有100个LED,连接到Arduino的2到99号数字引脚上#define NUM_LEDS 100// 定义LED的亮度级别#define MAX_BRIGHTNESS 255// 创建一个数组来存储LED的亮度级别byte ledBrightness[NUM_LEDS] = {0};void setup() {// 初始化每个LED引脚为输出模式for (int i = 2; i <= NUM_LEDS; i++) {pinMode(i, OUTPUT);}}void loop() {// 逐渐增加LED的亮度for (int brightness = 0; brightness <= MAX_BRIGHTNESS; brightness++) { setBrightness(brightness);delay(10); // 延迟10毫秒,使亮度变化可见}// 逐渐减小LED的亮度至熄灭for (int brightness = MAX_BRIGHTNESS; brightness >= 0; brightness--) { setBrightness(brightness);delay(10); // 延迟10毫秒,使亮度变化可见}}void setBrightness(int brightness) {// 设置每个LED的亮度级别for (int i = 0; i < NUM_LEDS; i++) {analogWrite(i + 2, ledBrightness[i] = brightness);}}这只是一个简单的示例程序,实际的程序可能会根据你的硬件配置和你想要实现的效果而有所不同。

爱心灯代码

爱心灯代码

#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned charvoid delays(uint xms){uint i,j;for(i=xms;i>0;i--)for(j=110;j>0;j--);}void main(){uint i,j,n; uchar a,b,c,d;for(i=0;i<1;i++) // 所有灯闪1下{P0=P1=P2=P3=0x00;delays(1000);P0=P1=P2=P3=0xff;delays(1000);}P3=P2=0xff; //两边一起向下流水for(j=0;j<=8;j++){P1=0xff<<j;P0=0xff<<j;delays(40);}for(j=0;j<=8;j++){P3=0xff<<j; P2=0xff>>j;delays(40);}P0=P1=P2=P3=0x00;delays(500);for(j=0;j<8;j++){P3=0xff<<(7-j);P2=0xff>>(7-j);delays(40);}for(j=0;j<8;j++){P0=0xff<<(7-j);P1=0xff<<(7-j);delays(40);}P3=P2=0xff; //两边杂乱闪烁for(j=0;j<=8;j++){P1=0xff<<j; P0=0xff<<j; delays(40);}for(j=0;j<=8;j++){P3=0xff>>j;P2=0xff<<j; delays(40);}P0=P1=P2=P3=0x00;delays(500);for(j=0;j<8;j++){P1=0xff>>(7-j);P0=0xff>>(7-j);delays(40); }for(j=0;j<8;j++){P2=0xff>>(7-j);P3=0xff<<(7-j);delays(40); }P0=P1=P2=P3=0xff; //一边向下流水for(j=0;j<=8;j++){ P1=0xff<<j;delays(30);}for(j=0;j<=8;j++){P3=0xff<<j;delays(30);}for(j=0;j<=8;j++){P2=0xff<<j;delays(30);}for(j=0;j<=8;j++){P0=0xff>>j;delays(30);}P0=P1=P2=P3=0x00;delays(500) ;for(j=0;j<8;j++){P0=0xff>>(7-j);delays(30); }for(j=0;j<8;j++){P2=0xff<<(7-j);delays(30); }for(j=0;j<8;j++){P3=0xff<<(7-j);delays(30); }for(j=0;j<8;j++){P1=0xff<<(7-j);delays(30); }P0=P1=P2=P3=0xff;for(j=0;j<=8;j++){P0=0xff<<j; delays(30);}for(j=0;j<=8;j++){P2=0xff>>j; delays(30);}for(j=0;j<=8;j++){P3=0xff>>j;delays(30);}for(j=0;j<=8;j++){P1=0xff>>j;delays(30);}P0=P1=P2=P3=0x00;delays(500) ;for(j=0;j<8;j++){P1=0xff>>(7-j);delays(30); }for(j=0;j<8;j++){P3=0xff>>(7-j);delays(30); }for(j=0;j<8;j++){P2=0xff>>(7-j);delays(30); }for(j=0;j<8;j++){P0=0xff<<(7-j);delays(30); } //2P0=P2=P3=0xff ;for(i=0;i<=8;i++){ P1=0xff<<i;delays(50);} delays(800);for(i=0;i<8;i++){ P1=0xff>>(7-i);delays(50);} P0=P1=P2=0xff;for(i=0;i<=8;i++){ P3=0xff<<i;delays(50);} delays(800);for(i=0;i<8;i++){ P3=0xff>>(7-i);delays(50);}P0=P1=P3=0xff;for(i=0;i<=8;i++){ P2=0xff<<i;delays(50);} delays(800);for(i=0;i<8;i++){ P2=0xff>>(7-i);delays(50); } P1=P2=P3=0xff;for(i=0;i<=8;i++){ P0=0xff>>i;delays(50);} delays(800);for(i=0;i<8;i++){ P0=0xff<<(7-i);delays(50);}P2=P3=0xff;for(i=0;i<=8;i++){P0=0xff<<i;P1=0xff<<i;delays(50);}delays(800);for(i=0;i<8;i++)P0=0xff>>(7-i);P1=0xff>>(7-i);delays(50);}P0=P1=0xff;for(i=0;i<=8;i++){P3=0xff<<i;P2=0xff>>i;delays(50);}delays(800);for(i=0;i<8;i++){P3=0xff>>(7-i);P2=0xff<<(7-i);delays(50);}for(i=0;i<3;i++){P1=P3=P2=0xcc;P0=0x33;delays(500);P1=P3=P2=0x33;P0=0xcc;delays(500); }P1=P3=P2=0xcc; P0=0x33; //首先逆时针for(i=0;i<120;i++){delays(100);P0=_cror_(P0,1);P1=_crol_(P1,1);P3=_crol_(P3,1);P2=_crol_(P2,1); }delays(1500) ;for(i=0;i<120;i++){delays(100);P0=_crol_(P0,1);P1=_cror_(P1,1);P3=_cror_(P3,1);P2=_cror_(P2,1);} delays(1000);P1=P3=P2=0x0f; P0=0xf0; //首先逆时针for(i=0;i<80;i++){delays(120);P0=_cror_(P0,1);P1=_crol_(P1,1);P3=_crol_(P3,1);P2=_crol_(P2,1); }delays(1500) ;for(i=0;i<80;i++){delays(120);P0=_crol_(P0,1);P1=_cror_(P1,1);P3=_cror_(P3,1);P2=_cror_(P2,1);}P1=P3=P0=0x77;P2=0xee;for(i=0;i<50;i++) //四口来回转{delays(100);P0=_crol_(P0,1);P1=_crol_(P1,1);P3=_crol_(P3,1);P2=_cror_(P2,1); }P0=P3=0xff;P1=P2=0xfe;for(i=0;i<8;i++){ delays(30);P1=_crol_(P1,1);P2=_crol_(P2,1);}P1=P2=0xff;P3=0xfe;P0=0x7f;for(i=0;i<8;i++){ delays(30);P3=_crol_(P3,1);P0=_cror_(P0,1);}P0=0xfe;P3=0x7f;a=0x7f; b=0xfe;for(j=1;j<8;j++){ c=0xff<<j;d=0xff>>j;P1=P2=0xfe;for(i=0;i<=7;i++){ delays(30);P1=_crol_(P1,1);P2=_crol_(P2,1);}P1=P2=0xff;for(i=0;i<7;i++){P0=a&c;P3=b&d;delays(30);a=_cror_(a,1);b=_crol_(b,1); }} P0=P3=0x00;b=0xfe;for(j=1;j<8;j++){ d=0xff>>j;for(i=0;i<7;i++){P1=b&d;P2=b&d;delays(30);b=_crol_(b,1);}}n=2; while(n){P1=P2=P3=0x7f;P0=0xfe;for(i=0;i<7;i++){ delays(100);P1=_cror_(P1,1);P2=_cror_(P2,1);P3=_cror_(P3,1);P0=_crol_(P0,1);} delays(100);c=0xfe;d=0x7f;a=0x7f;b=0xfe;for(j=0;j<9;j++){for(i=0;i<=8;i++){P1=P2=P3=c&a;P0=b&d;delays(100);a=_cror_(a,1);b=_crol_(b,1);} c=_cror_(c,1);d=_crol_(d,1); a=c;b=d;}n--;}P3=P2=0xff; //两边一起向下亮for(j=0;j<=8;j++){P1=0xff<<j;P0=0xff<<j;delays(40);}for(j=0;j<=8;j++){P3=0xff<<j; P2=0xff>>j;delays(40); }while(1) //一心调频率接近的跳动{P0=P1=P2=P3=0x00;delays(800);P0=P1=P2=P3=0xff;delays(800);}}。

爱心灯程序

爱心灯程序
{
P0=P1=P2=P3=0xff;
for(i=0;i<8;i++)
{
P0=P2=P1=table1[i];
P3=table[i];delay(t);
}
}
}
void hwzjm(uint t,uchar a) //横往中间灭
{
uchar i,j;
for (j=0;j<a;j++)
{
P0=P1=P2=P3=0x00;
#include<reg52.h>
#include <intrins.h>
#defineuint unsigned int
#defineuchar unsigned char
uchar code table[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00}; //逐个点亮0~7
}
P3=0x00;delay(t);
}
}
void qs(uint t,uchar a)//全部闪烁
{
uchar j;
for(j=0;j<a;j++)
{
P0=P1=P2=P3=0xff;
delay(t);
P0=P1=P2=P3=0x00;
delay(t);
}
}
void zgxh(uint t) //逆时针逐个点亮
uchar code table1[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00}; //逐个点亮7~0
uchar code table2[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff}; //逐个灭0~7

c语言心形闪动代码

c语言心形闪动代码

c语言心形闪动代码1. 代码实现:#include <stdio.h>#include <conio.h>#include <windows.h>int main(){int i = 1;while (1) {system("cls"); // 清屏for (i = 1; i < 8; i++) {printf("\t\t");int j;for (j = 0; j < (8 - i); j++) // 空格printf(" ");for (j = 0; j < 2 * i - 1; j++) // *printf("*");printf("\n");}for (i = 7; i > 0; i--) {printf("\t\t");int j;for (j = 0; j < (8 - i); j++)printf(" ");for (j = 0; j < 2 * i - 1; j++)printf("*");printf("\n");}Sleep(400); // 控制速度}return 0;}2.说明:(1)#include <stdio.h>#include <conio.h>(2)int main()主函数,程序入口,函数执行后返回值为0(3)system("cls"); // 清屏利用系统函数system()函数实现清屏功能,cls表示将控制台清屏,清除原有内容。

(4)int i = 1;i定义为整形变量,用于循环输出实现心形闪烁功能(5)while (1) {while循环,表示循环无线输出,实现心形的闪烁效果(6)for (i = 1; i < 8; i++)for循环,用于输出实现心形,i初始值为1,最大值为8,步长为1(7)printf("\t\t");利用printf()函数实现在控制台输出空格,实现心形的整齐(8)for (j = 0; j < 2 * i - 1; j++)输出至少两个”*”,j最大值是 2i -1;(9)Sleep(400); // 控制速度Sleep()函数,用于控制闪烁次数,控制心形的闪动速度(10)return 0;程序运行完毕,结束程序,并返回0。

51心形灯范例程序。

51心形灯范例程序。

{ uchar x1=0xff; P3=x1>>i; Delay(speed);
} for(i=1;i<9;i++) {
uchar x1=0xff; P1=x1>>i; Delay(speed); } for(i=1;i<9;i++) { uchar x1=0xff; P0=x1<<i; Delay(speed); } P0=0xff;P1=0xff;P2=0xff;P3=0xff; } void action4(uchar speed) { for(i=1;i<9;i++) { uchar x1=0xff; P0=x1>>i; Delay(speed); } for(i=1;i<9;i++) { uchar x1=0xff; P1=x1<<i; Delay(speed); } for(i=1;i<9;i++) { uchar x1=0xff; P3=x1<<i; Delay(speed); }
} for(i=1;i<9;i++) {
uchar x1=0xff; P1=x1<<i; P2=x1<<i; Delay(speed); } P0=0xff;P1=0xff;P2=0xff;P3=0xff; } void action14(uchar speed) { for(i=1;i<9;i++) { uchar x1=0xff; P2=x1<<i; P1=x1<<i; Delay(speed); } for(i=1;i<9;i++) { uchar x1=0xff; P0=x1>>i; P3=x1<<i; Delay(speed); } P0=0xff;P1=0xff;P2=0xff;P3=0xff; } void action15(uchar speed) { for(i=1;i<9;i++) { uchar x1=0xff; P0=x1<<i; P3=x1>>i; Delay(speed); } for(i=1;i<9;i++) { uchar x1=0xff; P2=x1>>i; P1=x1>>i; Delay(speed); }

基于51单片机心形流水灯C语言源程序

基于51单片机心形流水灯C语言源程序

#include<reg51.h>unsigned int x,y;void delayms(unsigned int z) //延时{unsigned int i,j;for(i=z;i>0;i--)for(j=150;j>0;j--);}void On_all() //开启所有灯{P0=0x00; P1=0x00; P2=0x00; P3=0x00; }void Off_all()//关闭所有灯{P0=0xff; P1=0xff; P2=0xff; P3=0xff;}void ls()//正向流水灯{P0=0x00; delayms(400);P2=0x00; delayms(400);P3=0x00; delayms(400);P1=0x00; delayms(400);P0=0x01; delayms(50);P0=0x02; delayms(50);P0=0x04; delayms(50);P0=0x08; delayms(50);P0=0x10; delayms(50);P0=0x20; delayms(50);P0=0x40; delayms(50);P0=0x80; delayms(50);P0=0x00;P2=0x01; delayms(50); P2=0x02; delayms(50); P2=0x04; delayms(50); P2=0x08; delayms(50); P2=0x10; delayms(50); P2=0x20; delayms(50); P2=0x40; delayms(50); P2=0x80; delayms(50); P2=0x00;P3=0x80; delayms(50); P3=0x40; delayms(50); P3=0x20; delayms(50); P3=0x10; delayms(50); P3=0x08; delayms(50);P3=0x02; delayms(50); P3=0x01; delayms(50); P3=0x00;P1=0x80; delayms(50); P1=0x40; delayms(50); P1=0x20; delayms(50); P1=0x10; delayms(50); P1=0x08; delayms(50); P1=0x04; delayms(50); P1=0x02; delayms(50); P1=0x01; delayms(50); P1=0x00;Off_all();P0=0xfe; delayms(50);P0=0xfb; delayms(50); P0=0xf7; delayms(50); P0=0xef; delayms(50); P0=0xdf; delayms(50); P0=0xbf; delayms(50); P0=0x7f; delayms(50); P0=0xff;P2=0xfe; delayms(50); P2=0xfd; delayms(50); P2=0xfb; delayms(50); P2=0xf7; delayms(50); P2=0xef; delayms(50); P2=0xdf; delayms(50); P2=0xbf; delayms(50);P2=0xff;P3=0x7f; delayms(50);P3=0xbf; delayms(50);P3=0xdf; delayms(50);P3=0xef; delayms(50);P3=0xf7; delayms(50);P3=0xfb; delayms(50);P3=0xfd; delayms(50);P3=0xfe; delayms(50);P3=0xff;P1=0x7f; delayms(50);P1=0xbf; delayms(50);P1=0xdf; delayms(50);P1=0xef; delayms(50);P1=0xfb; delayms(50); P1=0xfd; delayms(50); P1=0xfe; delayms(50); P1=0xff;P0=0xfe; delayms(50); P0=0xfc; delayms(50); P0=0xf8; delayms(50); P0=0xf0; delayms(50); P0=0xe0; delayms(50); P0=0xc0; delayms(50); P0=0x80; delayms(50); P0=0x00; delayms(50); P2=0xfe; delayms(50); P2=0xfc; delayms(50);P2=0xf0; delayms(50); P2=0xe0; delayms(50); P2=0xc0; delayms(50); P2=0x80; delayms(50); P2=0x00; delayms(50); P3=0x7f; delayms(50); P3=0x3f; delayms(50); P3=0x1f; delayms(50); P3=0x0f; delayms(50); P3=0x07; delayms(50); P3=0x03; delayms(50); P3=0x01; delayms(50); P3=0x00; delayms(50); P1=0x7f; delayms(50);P1=0x1f; delayms(50);P1=0x0f; delayms(50);P1=0x07; delayms(50);P1=0x03; delayms(50);P1=0x01; delayms(50);P1=0x00; delayms(50); }void fan_ls()//反向流水灯{Off_all(); delayms(300);On_all(); delayms(300);Off_all(); delayms(300);P1=0x00;delayms(400);P3=0x00;delayms(400);P0=0x00;delayms(400); P1=0x01;delayms(50); P1=0x02;delayms(50); P1=0x04;delayms(50); P1=0x08;delayms(50); P1=0x10;delayms(50); P1=0x20;delayms(50); P1=0x40;delayms(50); P1=0x80;delayms(50); P1=0x00;P3=0x01;delayms(50); P3=0x02;delayms(50); P3=0x04;delayms(50); P3=0x08;delayms(50);P3=0x20;delayms(50); P3=0x40;delayms(50); P3=0x80;delayms(50); P3=0x00;P2=0x80;delayms(50); P2=0x40;delayms(50); P2=0x20;delayms(50); P2=0x10;delayms(50); P2=0x08;delayms(50); P2=0x04;delayms(50); P2=0x02;delayms(50); P2=0x01;delayms(50); P2=0x00;P0=0x80;delayms(50);P0=0x20;delayms(50); P0=0x10;delayms(50); P0=0x08;delayms(50); P0=0x04;delayms(50); P0=0x02;delayms(50); P0=0x01;delayms(50); P0=0x00;Off_all();P1=0xfe; delayms(50); P1=0xfd; delayms(50); P1=0xfb; delayms(50); P1=0xf7; delayms(50); P1=0xef; delayms(50); P1=0xdf; delayms(50);P1=0x7f; delayms(50); P1=0xff;P3=0xfe; delayms(50); P3=0xfd; delayms(50); P3=0xfb; delayms(50); P3=0xf7; delayms(50); P3=0xef; delayms(50); P3=0xdf; delayms(50); P3=0xbf; delayms(50); P3=0x7f; delayms(50); P3=0xff;P2=0x7f; delayms(50); P2=0xbf; delayms(50); P2=0xdf; delayms(50);P2=0xf7; delayms(50); P2=0xfb; delayms(50); P2=0xfd; delayms(50); P2=0xfe; delayms(50); P2=0xff;P0=0x7f; delayms(50); P0=0xbf; delayms(50); P0=0xdf; delayms(50); P0=0xef; delayms(50); P0=0xf7; delayms(50); P0=0xfb; delayms(50); P0=0xfd; delayms(50); P0=0xfe; delayms(50); P0=0xff;P1=0xfc; delayms(50); P1=0xf8; delayms(50); P1=0xf0; delayms(50); P1=0xe0; delayms(50); P1=0xc0; delayms(50); P1=0x80; delayms(50); P1=0x00; delayms(50); P3=0xfe; delayms(50); P3=0xfc; delayms(50); P3=0xf8; delayms(50); P3=0xf0; delayms(50); P3=0xe0; delayms(50); P3=0xc0; delayms(50); P3=0x80; delayms(50);P2=0x7f; delayms(50); P2=0x3f; delayms(50); P2=0x1f; delayms(50); P2=0x0f; delayms(50); P2=0x07; delayms(50); P2=0x03; delayms(50); P2=0x01; delayms(50); P2=0x00; delayms(50); P0=0x7f; delayms(50); P0=0x3f; delayms(50); P0=0x1f; delayms(50); P0=0x0f; delayms(50); P0=0x07; delayms(50); P0=0x03; delayms(50);P0=0x00; delayms(50);Off_all();On_all();Off_all();On_all();Off_all();}void ban_shan()//半边交替闪{Off_all();P1=0x00;P3=0x00;delayms(50);P0=0xff;P2=0xff; delayms(50);P1=0xff;P3=0xff;delayms(50);P0=0x00;P2=0x00; delayms(50);P1=0x00;P3=0x00;delayms(50);P0=0xff;P2=0xff; delayms(50);P1=0xff;P3=0xff;delayms(50);P0=0x00;P2=0x00; delayms(50);P1=0x00;P3=0x00;delayms(50);P0=0xff;P2=0xff; delayms(50);P1=0xff;P3=0xff;delayms(50);P0=0x00;P2=0x00; delayms(50);P1=0x00;P3=0x00;delayms(50);P0=0xff;P2=0xff; delayms(50);P1=0xff;P3=0xff;delayms(50);P0=0x00;P2=0x00; delayms(50);P1=0x00;P3=0x00;delayms(50);P0=0xff;P2=0xff; delayms(50);P1=0xff;P3=0xff;delayms(50);P0=0x00;P2=0x00; delayms(50);}void shangxia_shan()//上下交替闪{On_all();Off_all();P0=0x00;P1=0x00;delayms(50);P2=0xff;P3=0xff; delayms(50);P0=0xff;P1=0xff;delayms(50);P2=0x00;P3=0x00; delayms(50);P0=0x00;P1=0x00;delayms(50);P2=0xff;P3=0xff; delayms(50);P0=0xff;P1=0xff;delayms(50);P2=0x00;P3=0x00; delayms(50);P0=0x00;P1=0x00;delayms(50);P2=0xff;P3=0xff; delayms(50);P0=0xff;P1=0xff;delayms(50);P2=0x00;P3=0x00; delayms(50);P0=0x00;P1=0x00;delayms(50);P2=0xff;P3=0xff; delayms(50);P0=0xff;P1=0xff;delayms(50);P2=0x00;P3=0x00; delayms(50);P0=0x00;P1=0x00;delayms(50);P2=0xff;P3=0xff; delayms(50);P0=0xff;P1=0xff;delayms(50);P2=0x00;P3=0x00; delayms(50);}void huayang_shan()//花样闪烁{On_all();delayms(400);P0=0xff;P2=0x00;P3=0x00;P1=0x00;delayms(20 0);P0=0x00;P2=0xff;P3=0x00;P1=0x00;delayms(20 0);0);P0=0x00;P2=0x00;P3=0x00;P1=0xff;delayms(20 0);P0=0x00;P2=0x00;P3=0xff;P1=0x00;delayms(20 0);P0=0x00;P2=0xff;P3=0x00;P1=0x00;delayms(20 0);P0=0xff;P2=0x00;P3=0x00;P1=0x00;delayms(20 0);On_all();delayms(400);P0=0x00;P2=0x00;P3=0x00;P1=0xff;delayms(20 0);P0=0x00;P2=0x00;P3=0xff;P1=0x00;delayms(20 0);P0=0x00;P2=0xff;P3=0x00;P1=0x00;delayms(20 0);0);P0=0x00;P2=0xff;P3=0x00;P1=0x00;delayms(20 0);P0=0x00;P2=0x00;P3=0xff;P1=0x00;delayms(20 0);P0=0x00;P2=0x00;P3=0x00;P1=0xff;delayms(20 0);On_all();delayms(400);Off_all();delayms(400);P0=0x00;delayms(200);P3=0x00;delayms(200);P1=0x00;delayms(200);P2=0x00;delayms(200);On_all();delayms(400);Off_all();delayms(400);P2=0x00;delayms(200);P0=0x00;delayms(200);P3=0x00;delayms(200);On_all();delayms(400);Off_all();delayms(50);On_all();delayms(50);Off_all();delayms(50);On_all();delayms(50);Off_all();delayms(50);}void main(){On_all(); delayms(300);Off_all(); delayms(300);Off_all(); delayms(300);On_all(); delayms(300);Off_all(); delayms(300);ls(); //正向流水fan_ls(); //反向流水ban_shan(); //半边交替闪shangxia_shan(); //上下交替闪烁huayang_shan();// 花样闪烁}。

心形程序

心形程序

//123e789#include <REGX52.H>#define uint unsigned int#define uchar unsigned charuchar 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个亮到8个都点亮(从低位往高位)uchar code table3[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};//LED从1个亮到8个都点亮(从高位往低位)uchar code table4[]={0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};//LED从8个全亮到一个都不亮(从低位往高位)uchar code table5[]={0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};//LED从8个全亮到一个都不亮(从高位往低位)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)uchari,j; //定义循环变量uinttt=70; //定义时间指数void delay(uint time) //延时函数{uintx,y;for(x=time;x>0;x--)for(y=110;y>0;y--);}void disp0() //状态0 所有LED闪烁3次{for(i=0;i<3;i++){P0=0x00; P2=0x00; P3=0x00; P1=0x00;delay(300);P0=0xff; P2=0xff; P3=0xff; P1=0xff;delay(300);}}void disp1() //状态1 LED顺时针转一圈{for(i=0;i<8;i++){P2=table1[i];delay(100);}P2=0xff;for(i=0;i<8;i++){P3=table1[i];delay(100);}P3=0xff;for(i=0;i<8;i++){P1=table1[i];delay(100);}P1=0xff;for(i=0;i<8;i++){P0=table0[i];delay(100);}P0=0xff;}void disp2() //状态2 LED逆时针转一圈{for(i=0;i<8;i++){P0=table1[i];delay(100);}P0=0xff;for(i=0;i<8;i++){P1=table0[i];delay(100);}P1=0xff;for(i=0;i<8;i++){P3=table0[i];delay(100);}P3=0xff;for(i=0;i<8;i++){P2=table0[i];delay(100);}P2=0xff;}void disp3() //状态3 4个LED同时顺时、逆时针移动1/4圈{for(i=0;i<8;i++){P0=table1[i];P1=table1[i];P2=table1[i];P3=table0[i];delay(100);}for(i=0;i<8;i++){P0=table0[i];P1=table0[i];P2=table0[i];P3=table1[i];delay(100);}P3=0xff; P0=0xff;}void disp4() //状态4 2个LED同时顺时针移动半圈{for(i=0;i<8;i++){P2=table1[i];P1=table1[i];delay(100);}P2=0xff; P1=0xff;for(i=0;i<8;i++){P3=table1[i];P0=table0[i];delay(100);}P3=0xff; P0=0xff;}void disp5() //状态5 2个LED同时逆时针移动半圈{for(i=0;i<8;i++){P0=table1[i];P3=table0[i];delay(100);}P0=0xff; P3=0xff;for(i=0;i<8;i++){P1=table0[i];P2=table0[i];delay(100);}P1=0xff; P2=0xff;}void disp6() //状态6 LED自上而下逐渐点亮(一半点亮一半不亮) {for(i=0;i<8;i++){P0=table3[i];P2=table3[i];delay(100);}P0=0xff; P2=0xff;for(i=0;i<8;i++){P1=table2[i];P3=table3[i];delay(100);}P1=0xff; P3=0xff;}void disp7() //状态7 LED自下而上逐渐点亮(直到全部点亮) {for(i=0;i<8;i++){P1=table3[i];P3=table2[i];delay(100);for(i=0;i<8;i++){P0=table2[i];P2=table2[i];delay(100);}}void disp8() //状态8 间断8格的4个LED亮并逆时针旋转{for(j=0;j<2;j++){for(i=0;i<8;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<8;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() //状态9 间断8格的4个LED亮,然后逆时针逐渐点亮(直到全部点亮){for(i=0;i<8;i++){P0=table3[i];P2=table2[i];P1=table2[i];P3=table2[i];delay(100);delay(500);}void disp10() //状态10 从LED全部亮到全不亮(间断8格的4个LED开始逆时针熄灭){for(i=0;i<9;i++){P0=table5[i];P2=table4[i];P1=table4[i];P3=table4[i];delay(100);}delay(300);}void disp11() //状态11 间断8格的4个LED亮并顺时针旋转{for(j=0;j<2;j++){for(i=0;i<8;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<8;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个LED亮,然后顺时针逐渐点亮(直到全部点亮){for(i=0;i<8;i++){P0=table2[i];P2=table3[i];P1=table3[i];P3=table3[i];delay(100);}delay(1000);}void disp13() //状态13 从LED全部亮到全不亮(间断8格的4个LED开始顺时针熄灭){for(i=0;i<9;i++){P0=table4[i];P2=table5[i];P1=table5[i];P3=table5[i];delay(100);}delay(300);}void disp14() //状态14 从LED不亮到全亮(从P0.0、P1.0、P2.0、P3.7开始逐步点亮){for(i=0;i<8;i++){P0=table2[i];P1=table2[i];P2=table2[i];P3=table3[i];delay(100);}}void disp15() //状态15 从LED全亮到全不亮(从P0.7、P1.7、P2.7、P3.0开始逐步熄灭){for(i=0;i<9;i++){P0=table5[i];P1=table5[i];P2=table5[i];P3=table4[i];delay(100);}delay(300);}void disp16() //状态16 LED灯交替闪烁(频率有慢变快){for(i=0;i<5;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<5;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<5;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() //状态17 LED从P0.7开始逆时针逐步点亮,(循环2次)并且速度会逐步提高{for(i=0;i<8;i++){P0=table3[i];delay(100);for(i=0;i<8;i++){P1=table2[i];delay(100);}for(i=0;i<8;i++){P3=table2[i];delay(100);}for(i=0;i<8;i++){P2=table2[i];delay(100);}P0=0xff; P1=0xff; P3=0xff; P2=0xff;/*******************************/for(i=0;i<8;i++){P0=table3[i];delay(50);}for(i=0;i<8;i++){P1=table2[i];delay(50);}for(i=0;i<8;i++){P3=table2[i];delay(50);}for(i=0;i<8;i++){P2=table2[i];delay(50);}P0=0xff; P1=0xff; P3=0xff; P2=0xff;}void disp18() //状态18 LED从P0.7开始逆时针逐步点亮(每亮8位后就熄灭) {for(i=0;i<8;i++)P0=table3[i];delay(100);}P0=0xff;for(i=0;i<8;i++){P1=table2[i];delay(100);}P1=0xff;for(i=0;i<8;i++){P3=table2[i];delay(100);}P3=0xff;for(i=0;i<8;i++){P2=table2[i];delay(100);}P2=0xff;}void disp19() //状态19 LED从P2.7开始顺时针逐步点亮,(循环2次)并且速度会逐步提高{for(i=0;i<8;i++){P2=table3[i];delay(100);}for(i=0;i<8;i++){P3=table3[i];delay(100);}for(i=0;i<8;i++){P1=table3[i];delay(100);}for(i=0;i<8;i++)P0=table2[i];delay(100);}P0=0xff; P1=0xff; P3=0xff; P2=0xff;/*******************************/for(i=0;i<8;i++){P2=table3[i];delay(50);}for(i=0;i<8;i++){P3=table3[i];delay(50);}for(i=0;i<8;i++){P1=table3[i];delay(50);}for(i=0;i<8;i++){P0=table2[i];delay(50);}P0=0xff; P1=0xff; P3=0xff; P2=0xff;}void disp20() //状态20 LED从P2.7开始顺时针逐步点亮(每亮8位后就熄灭) {for(i=0;i<8;i++){P2=table3[i];delay(100);}P2=0xff;for(i=0;i<8;i++){P3=table3[i];delay(100);}P3=0xff;for(i=0;i<8;i++)P1=table3[i];delay(100);}P1=0xff;for(i=0;i<8;i++){P0=table2[i];delay(100);}P0=0xff;}void disp21() //状态21 2个LED开始上下移动半圈{for(i=0;i<8;i++){P0=table1[i];P2=table1[i];delay(100);}P0=0xff; P2=0xff;for(i=0;i<8;i++){P1=table0[i];P3=table1[i];delay(100);}for(i=0;i<8;i++){P1=table1[i];P3=table0[i];delay(100);}P1=0xff; P3=0xff;for(i=0;i<8;i++){P0=table0[i];P2=table0[i];delay(100);}}void disp22() //装态22 2个LED自上而下移动(循环5次,且频率渐快,到最快时持续循环16次,然后循环5次频率再逐渐降低){for(j=0;j<5;j++){for(i=0;i<8;i++){P0=table1[i];P2=table1[i];delay(tt);}P0=0xff; P2=0xff;for(i=0;i<8;i++){P1=table0[i];P3=table1[i];delay(tt);}P1=0xff; P3=0xff;tt=tt-10;}for(j=0;j<16;j++){for(i=0;i<8;i++){P0=table1[i];P2=table1[i];delay(20);}P0=0xff; P2=0xff;for(i=0;i<8;i++){P1=table0[i];P3=table1[i];delay(20);}P1=0xff; P3=0xff;}tt=20;for(j=0;j<5;j++){for(i=0;i<8;i++){P0=table1[i];P2=table1[i];delay(tt);}P0=0xff; P2=0xff;for(i=0;i<8;i++){P1=table0[i];P3=table1[i];delay(tt);}P1=0xff; P3=0xff;tt=tt+10;}tt=70;}void disp23() //状态23 LED上下交替闪烁{for(i=0;i<2;i++){P0=0x00; P2=0x00;delay(1000);P0=0xff; P2=0xff;P1=0x00; P3=0x00;delay(1000);P1=0xff; P3=0xff;}}void disp24() //状态24 LED左右交替闪烁{P1=0xff; P3=0xff; P0=0xff; P2=0xff;for(i=0;i<2;i++){P0=0x00; P1=0x00;delay(1000);P0=0xff; P1=0xff;P2=0x00; P3=0x00;delay(1000);P2=0xff; P3=0xff;}void disp25() //状态25 LED交替闪烁{for(i=0;i<5;i++){P0=0xaa; P1=0xaa; P2=0xaa; P3=0xaa;delay(1000);P0=~P0; P1=~P1; P2=~P2; P3=~P3;delay(1000);}}void disp26() //状态26 2个LED开始上下移动半圈(LED不亮流水) {P0=0x00;P1=0x00;P2=0x00;P3=0x00;for(i=0;i<8;i++){P0=~table1[i];P2=~table1[i];delay(200);}P0=0x00; P2=0x00;for(i=0;i<8;i++){P1=~table0[i];P3=~table1[i];delay(200);}for(i=0;i<8;i++){P1=~table1[i];P3=~table0[i];delay(200);}P1=0x00; P3=0x00;for(i=0;i<8;i++){P0=~table0[i];P2=~table0[i];delay(200);}}void disp27() //状态27 逐步顺时针点亮P2、P1的LED,熄灭后,再顺时针点亮P0、P3的LED{P0=0xff; P1=0xff; P2=0xff; P3=0xff;for(j=0;j<2;j++){for(i=0;i<8;i++){P2=table3[i];P1=table3[i];delay(100);}P2=0xff; P1=0xff;for(i=0;i<8;i++){P0=table2[i];P3=table3[i];delay(100);}P0=0xff; P3=0xff;}}void disp28() //状态28 P1、P2和P0、P3交替闪烁{for(i=0;i<2;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() //状态29 逐步顺时针点亮P2、P1的LED,再顺时熄灭后,再顺时针点亮P0、P3的LED,再顺时熄灭{P0=0xff; P1=0xff; P2=0xff; P3=0xff;for(j=0;j<2;j++){for(i=0;i<8;i++){P2=table3[i];P1=table3[i];delay(100);}for(i=0;i<9;i++){P2=table5[i];P1=table5[i];delay(100);}for(i=0;i<8;i++){P0=table2[i];P3=table3[i];delay(100);}for(i=0;i<9;i++){P0=table4[i];P3=table5[i];delay(100);}}delay(200);}void disp30() //状态30 逐步逆时针点亮P2、P1的LED,熄灭后,再逆时针点亮P0、P3的LED{P0=0xff; P1=0xff; P2=0xff; P3=0xff;for(j=0;j<2;j++){for(i=0;i<8;i++){P2=table2[i];P1=table2[i];delay(100);}P2=0xff; P1=0xff;for(i=0;i<8;i++){P0=table3[i];P3=table2[i];delay(100);}P0=0xff; P3=0xff;}}void disp31() //状态31 逐步逆时针点亮P2、P1的LED,再逆时熄灭后,再逆时针点亮P0、P3的LED,再逆时熄灭{P0=0xff; P1=0xff; P2=0xff; P3=0xff;for(j=0;j<2;j++){for(i=0;i<8;i++){P2=table2[i];P1=table2[i];delay(100);}for(i=0;i<9;i++){P2=table4[i];P1=table4[i];delay(100);}for(i=0;i<8;i++){P0=table3[i];P3=table2[i];delay(100);}for(i=0;i<9;i++){P0=table5[i];P3=table4[i];delay(100);}}delay(200);}void disp32() //状态32 LED自上而下逐步点亮,然后从下往上逐步熄灭{for(i=0;i<8;i++){P2=table3[i];delay(100);}for(i=0;i<8;i++){P1=table2[i];P3=table3[i];delay(100);}for(i=0;i<9;i++){P1=table5[i];P3=table4[i];delay(100);}for(i=0;i<9;i++){P0=table4[i];P2=table4[i];delay(100);}}void disp33() //状态33 LED从左往右开始点亮(直到全亮),然后从左右两边开始熄灭(直到全部熄灭){for(i=0;i<8;i++){P0=table2[i];P1=table2[i];delay(100);}for(i=0;i<8;i++){P2=table3[i];P3=table2[i];delay(100);}delay(500);for(i=0;i<9;i++){P2=table4[i];P3=table5[i];P0=table4[i];delay(100);}delay(300);}void disp34() //状态34 LED从左往右开始点亮(直到全亮),然后从中间往左右边熄灭{for(i=0;i<8;i++){P2=table2[i];P3=table3[i];delay(100);}for(i=0;i<8;i++){P0=table3[i];P1=table3[i];delay(100);}delay(500);for(i=0;i<9;i++){P2=table5[i];P3=table4[i];P1=table5[i];P0=table5[i];delay(100);}delay(300);}void disp35() //状态35 从P2.7、P1.7开始同时顺时针旋转,直到LED全亮{for(i=0;i<8;i++){P2=table3[i];P1=table3[i];delay(100);}for(i=0;i<8;i++){P3=table3[i];P0=table2[i];delay(100);}}void disp36() //状态36 从P0.7、P3.1开始同时逆时针旋转,直到LED全亮{for(i=0;i<8;i++){P0=table3[i];P3=table2[i];delay(100);}for(i=0;i<8;i++){P1=table2[i];P2=table2[i];delay(100);}}void disp37() //状态37 2个LED自上而下移动,并点亮最下2个LED,然后2个LED再自下而上回去,同时4个LED(上下各2个LED)再来回移动一次{for(i=0;i<8;i++){P0=table1[i];P2=table1[i];delay(100);}P0=0xff; P2=0xff;for(i=0;i<8;i++){P1=table0[i];P3=table1[i];delay(100);}for(i=0;i<8;i++){P1=table7[i];P3=table6[i];delay(100);}P1=0x7f; P3=0xfe;for(i=0;i<8;i++){P0=table0[i];P2=table0[i];delay(100);}for(i=0;i<8;i++){P0=table1[i];P2=table1[i];P1=table1[i];P3=table0[i];delay(200);}for(i=0;i<8;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() //状态38 逐步顺时针点亮P2、P1的LED,熄灭后,再顺时针点亮P0、P3的LED{P0=0xff; P1=0xff; P2=0xff; P3=0xff;for(j=0;j<2;j++){for(i=0;i<8;i++){P2=table3[i];P1=table3[i];delay(100);}P2=0xff; P1=0xff;for(i=0;i<8;i++){P0=table2[i];P3=table3[i];delay(100);}P0=0xff; P3=0xff;}}void disp39() //状态39 P1、P3LED(下半部分)一直亮,上半部分LED向外扩张亮,然后闪烁3次{P1=0x00; P3=0x00;for(i=0;i<8;i++){P0=table3[i];P2=table3[i];delay(150);}for(i=0;i<8;i++){P0=table3[i];P2=table3[i];delay(300);}for(i=0;i<4;i++){P0=~P0; P2=~P2;delay(300);}delay(1000);}void disp40() //状态40 LED从P3.0、P0.7开始逆时针同时熄灭,直到LED全部熄灭{for(i=0;i<9;i++){P3=table4[i];P0=table5[i];delay(100);}for(i=1;i<9;i++){P2=table4[i];P1=table4[i];delay(100);}delay(300);}void disp41() //状态41 LED从P2.7、P1.7开始顺时针同时熄灭,直到全部熄灭{for(i=0;i<9;i++){P2=table5[i];P1=table5[i];delay(100);}for(i=1;i<9;i++){P0=table4[i];P3=table5[i];delay(100);}delay(300);}void main(){while(1){disp22(); //装态22 2个LED自上而下移动(循环5次,且频率渐快,到最快时持续循环16次,然后循环5次频率再逐渐降低)disp0(); //状态0 所有LED闪烁3次disp1(); //状态1 LED顺时针转一圈disp2(); //状态2 LED逆时针转一圈disp3(); //状态3 4个LED同时顺时、逆时针移动1/4圈disp4(); //状态4 2个LED同时顺时针移动半圈disp5(); //状态5 2个LED同时逆时针移动半圈disp6(); //状态6 LED自上而下逐渐点亮(一半点亮一半不亮)disp7(); //状态7 LED自下而上逐渐点亮(直到全部点亮)disp0(); //状态0 所有LED闪烁3次disp8(); //状态8 间断8格的4个LED亮并逆时针旋转disp9(); //状态9 间断8格的4个LED亮,然后逆时针逐渐点亮(直到全部点亮)disp10(); //状态10 从LED全部亮到全不亮(间断8格的4个LED开始逆时针熄灭)disp11(); //状态11 间断8格的4个LED亮并顺时针旋转disp12(); //间断8格的4个LED亮,然后顺时针逐渐点亮(直到全部点亮)disp13(); //状态13 从LED全部亮到全不亮(间断8格的4个LED开始顺时针熄灭)disp14(); //状态14 从LED不亮到全亮(从P0.0、P1.0、P2.0、P3.7开始逐布点亮)disp15(); //状态15 从LED全亮到全不亮(从P0.7、P1.7、P2.7、P3.0开始逐步熄灭)disp16(); //状态16 LED灯交替闪烁(频率有慢变快)disp17(); //状态17 LED从P0.7开始逆时针逐步点亮,并且速度会逐步提高disp18(); //状态18 LED从P0.7开始逆时针逐步点亮(每亮8位后就熄灭)disp19(); //状态19 LED从P2.7开始顺时针逐步点亮,(循环2次)并且速度会逐步提高disp20(); //状态20 LED从P2.7开始顺时针逐步点亮(每亮8位后就熄灭)disp21(); //状态21 2个LED开始上下移动半圈disp22(); //装态22 2个LED自上而下移动(循环5次,且频率渐快,到最快时持续循环16次,然后循环5次频率再逐渐降低disp23(); //状态23 LED上下交替闪烁disp39(); //状态39 P1、P3LED(下半部分)一直亮,上半部分LED向外扩张亮,然后闪烁3次disp24(); //状态24 LED左右交替闪烁disp25(); //状态25 LED交替闪烁disp8(); //状态8 间断8格的4个LED亮并逆时针旋转disp9(); //状态9 间断8格的4个LED亮,然后逆时针逐渐点亮(直到全部点亮)disp10(); //状态10 从LED全部亮到全不亮(间断8格的4个LED开始逆时针熄灭)disp26(); //状态26 2个LED开始上下移动半圈(LED不亮流水)disp27(); //状态27 逐步顺时针点亮P2、P1的LED,熄灭后,再顺时针点亮P0、P3的LEDdisp28(); //状态28 P1、P2和P0、P3交替闪烁disp38(); //状态38 逐步顺时针点亮P2、P1的LED,熄灭后,再顺时针点亮P0、P3的LEDdisp29(); //状态29 逐步顺时针点亮P2、P1的LED,再顺时熄灭后,再顺时针点亮P0、P3的LED,再顺时熄灭disp30(); //状态30 逐步逆时针点亮P2、P1的LED,熄灭后,再逆时针点亮P0、P3的LEDdisp31(); //状态31 逐步逆时针点亮P2、P1的LED,再逆时熄灭后,再逆时针点亮P0、P3的LED,再逆时熄灭disp32(); //状态32 LED自上而下逐步点亮,然后从下往上逐步熄灭disp33(); //状态33 LED从左往右开始点亮(直到全亮),然后从左右两边开始熄灭(直到全部熄灭)disp37(); //状态37 2个LED自上而下移动,并点亮最下2个LED,然后2个LED再自下而上回去,同时4个LED(上下各2个LED)再来回移动一次disp36(); //状态36 从P0.7、P3.0开始同时逆时针旋转,直到LED全亮disp40(); //状态40 LED从P3.0、P0.7开始逆时针同时熄灭,直到LED全部熄灭disp35(); //状态35 从P2.7、P1.7开始同时顺时针旋转,直到LED全亮disp41(); //状态41 LED从P2.7、P1.7开始顺时针同时熄灭,直到全部熄灭disp34(); //状态34 LED从左往右开始点亮(直到全亮),然后从中间往左右边熄灭disp28(); //状态28 P1、P2和P0、P3交替闪烁}}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
delayms(100);
}
P2=0Xff; P3=0xff;
delayms(100);
temp=0x01;
temp1=0x80;
sum=0;sum1=0;
for(i=0;i<8;i++)
{
sum=sum+temp;P1=sum;temp=temp<<1;
sum1=sum1+temp1;P0=sum1;temp1=temp1>>1;
P1=0Xff;
P2=0xff;
P3=0xff;
temp=0x01;
for(i=0;i<9;i++)
{
P0=~temp;
delayms(70);
temp=temp<<1;
}
temp=0x01;
for(i=0;i<9;i++)
{
P2=~temp;
delayms(70);
temp=temp<<1;
}
temp=0x01;
delayms(70);
}
temp=0x01;temp1=0x80;
for(i=0;i<9;i++)
{
P1=~temp;
P0=~temp1;
temp=temp<<1;temp1=temp1>>1;
delayms(70);
}
}
k--;
}
}
void way3()
{
unsigned int i,sum,sum1,k,temp1;
for(i=0;i<9;i++)
{
P3=~temp;
delayms(70);
temp=temp<<1;
}
temp=0x01;
for(i=0;i<9;i++)
{
P1=~temp;
delayms(70);
temp=temp<<1;
}
P0=0X00;P1=0X00;P2=0X00; P3=0X00;//l->r
delayms(100);
temp1=temp1<<1;
}
P0=0Xff; //全灭
P1=0Xff;
P2=0xff;
P3=0Xff;
delayms(100);
temp1=0xfe;
for(i=0;i<8;i++)
{
P2=temp1;
P1=temp1;
delayms(100);
temp1=temp1<<1;
P1=0xff;
P3=0x55;delayms(200);
P3=0xff;
P3=0xaa;delayms(200);
P3=0xff;
P2=0x55;delayms(200);
P2=0xff;
P2=0xaa;delayms(200);
P2=0xff;
P0=0x00;delayms(200);
P0=0xff;
k=m+4;j=m+4;
while(k)
{
P0=0xaa;delayms(200);
P0=0xБайду номын сангаасf;
P0=0x55;delayms(200);
P0=0xff;
P2=0xaa;delayms(200);
P2=0xff;
P2=0x55;delayms(200);
P2=0xff;
P3=0xaa;delayms(200);
unsigned int temp=0x01;
k=m;
P0=0Xff; //两边同时向下闪
P1=0Xff;
P2=0xff;
P3=0xff;
while(k)
{
temp1=0xfe;
temp=0x7f;
sum=0;
for(i=0;i<8;i++)
{
P0=temp1;
P1=temp;
delayms(100);
{
unsigned int temp=0x55;
unsigned int k,j;
k=m+3;j=m+3;
while(k)
{
P0=~temp;
P1=~temp;
P2=~temp;
P3=~temp;
delayms(200);
P0=temp;
P1=temp;
P2=temp;
P3=temp;
delayms(200);
temp=temp>>1;
}
temp=0x80;
for(i=0;i<9;i++)
{
P2=~temp;
delayms(70);
temp=temp>>1;
}
temp=0x80;
for(i=0;i<9;i++)
{
P0=~temp;
delayms(70);
temp=temp>>1;
}
P0=0X00;P1=0X00;P2=0X00; P3=0X00;
P1=temp1;
delayms(100);
temp1=temp1<<1;
}
P0=0Xff; //全灭
P1=0Xff;
P2=0xff;
P3=0Xff;
delayms(100);
}
for(j=3;j>0;j--)
{
temp1=0xfe;
for(i=0;i<8;i++)
{
P0=temp1;
P3=temp1;
P3=0xff;
P3=0x55;delayms(200);
P3=0xff;
P1=0xaa;delayms(200);
P1=0xff;
P1=0x55;delayms(200);
P1=0xff;
k--;
}
while(j)
{
P1=0x55;delayms(200);
P1=0xff;
P1=0xaa;delayms(200);
#include<reg52.h>
unsigned int m=1;
void delayms(int n)//延时
{
inti;
for(;n>0;n--)
for(i=330;i>0;i--)
;
}
void way1()//花样1:32个LED灯同时从灭到亮
{int k;
k=m+5;
while(k)
{
int i=5,j=5;
for(i=0;i<8;i++)
{
P0=temp1;
P3=temp1;
delayms(100);
temp1=temp1<<1;
}
P0=0Xff; //全灭
P1=0Xff;
P2=0xff;
P3=0Xff;
delayms(100);
temp1=0xfe;
for(i=0;i<8;i++)
{
P2=temp1;
delayms(500);
P0=0Xff;
P1=0Xff;
P2=0xff;
P3=0xff;
temp=0x80;
for(i=0;i<9;i++)
{
P1=~temp;
delayms(70);
temp=temp>>1;
}
temp=0x80;
for(i=0;i<9;i++)
{
P3=~temp;
delayms(70);
k--;
}
while(j)
{
P0=temp;
P1=temp;
P2=temp;
P3=temp;
delayms(200);
P0=~temp;
P1=~temp;
P2=~temp;
P3=~temp;
delayms(200);
j--;
}
}
void way5()
{
unsigned int k,j;//8个灯一起亮并旋转
for(i=0;i<9;i++)
{
P2=~temp;
P3=~temp1;
temp=temp<<1;temp1=temp1>>1;
delayms(70);
}
temp=0x01;temp1=0x80;
for(i=0;i<9;i++)
{
P3=~temp;
P2=~temp1;
temp=temp<<1;temp1=temp1>>1;
P1=0Xff;
P2=0xff;
P3=0xff;
delayms(100);
temp1=0x7f;
for(i=0;i<8;i++)
{
P3=temp1;P0=temp1;
delayms(100);
temp1=temp1>>1;
}
P0=0Xff; //全灭
P1=0Xff;
P2=0xff;
P3=0xff;
delayms(100);
temp1=temp1<<1;
temp=temp>>1;
相关文档
最新文档