|
自制4*4*4光立方c程序:
//采用四个74hc573数据锁存,uln2803驱动LED,P2口接四个锁存器的控制端和片选端,P1口低四位控制每一层的选通,P3口高四位传入数据,单片机与数据输入端的连接采用总线连接方式
#include <reg52.h>
#define uchar unsigned char
#define k 20
uchar i,j,n;
code uchar yin[]={0xfe,0xfd,0xfb,0xf7,0xfe,0xfd,0xfb,0xf7,0xfe,0xfd,0xfb,0xf7,0xfe,0xfd,0xfb,0xf7};
code uchar dat[]={0x00,0x10,0x20,0x30,0x40,0x50,0x60,0x70,0x80,0x90,0xa0,0xb0,0xc0,0xd0,0xe0,0xf0};
uchar tu1[]={15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0};
uchar tu3[]={0,0,0,15};
void delay()
{
uchar s=100;
while(s--);
}
void main()
{
P3=0xff;
while(1)
{
for(n=0;n<5;n++) //
{
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[15];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
P2=0x2d;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
P2=0x4b;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
P2=0x87;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[15];
delay();
P3=0x00;
}
}
}
for(n=0;n<5;n++) //
{
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[15];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[0];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[15];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
}
}
for(n=0;n<5;n++) //
{
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[tu1[i]];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[1];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
P2=0x2d;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
P2=0x4b;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
P2=0x87;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[tu3[i]];
delay();
P3=0x00;
}
}
for(j=0;j<k;j++) //
{
P2=0x1e;
for(i=0;i<4;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
P2=0x2d;
for(i=4;i<8;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
P2=0x4b;
for(i=8;i<12;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
P2=0x87;
for(i=12;i<16;i++)
{
P1=yin[i];
P3=dat[8];
delay();
P3=0x00;
}
}
}
}
}
|
评分
-
查看全部评分
|