📄 52.c
字号:
#include <reg51.h>
#include <absacc.h>
sbit r1=P2^0;
sbit g1=P2^1;
sbit b1=P2^2;
sbit r2=P2^3;
sbit g2=P2^4;
sbit b2=P2^5;
sbit latch=P2^6;
sbit clk=P2^7;
sbit red=P1^0;
sbit green=P1^1;
sbit blue=P1^2;
sbit xie=P1^3;
sbit jing=P1^4;
int i,m,j,p,q,t,n;
unsigned int yanshi1,yanshi2;
//#define yanshi1 350
//#define yanshi2 300
//yanshi1=0x1ff1;
//yanshi2=0x1ff2;
/*******************/
void set()
{
clk=0;
r1=1;
g1=1;
b1=1;
r2=1;
g2=1;
b2=1;
clk=1;
}
void clr()
{
clk=0;
r1=0;
g1=0;
b1=0;
r2=0;
g2=0;
b2=0;
clk=1;
}
void setrgb(unsigned char rgb)
{
clk=0;
switch(rgb)
{
case 1:
{
r1=1;
g1=0;
b1=0;
r2=0;
g2=0;
b2=0;
}
break;
case 2:
{
r1=0;
g1=1;
b1=0;
r2=0;
g2=0;
b2=0;
}
break;
case 3:
{
r1=0;
g1=0;
b1=1;
r2=0;
g2=0;
b2=0;
}
break;
case 4:
{
r1=0;
g1=0;
b1=0;
r2=1;
g2=0;
b2=0;
}
break;
case 5:
{
r1=0;
g1=0;
b1=0;
r2=0;
g2=1;
b2=0;
}
break;
case 6:
{
r1=0;
g1=0;
b1=0;
r2=0;
g2=0;
b2=1;
}
break;
}
clk=1;
}
void ge(unsigned char Num)
{
for(n=0;n<=Num-1;n++)
clr();
}
/* *****清屏****** */
void clrping()
{ latch=0;
for(i=0;i<=71;i++)
clr();
latch=1;
}
/* *****全屏****** */
void setping()
{ latch=0;
for(i=0;i<=71;i++)
set();
latch=1;
}
/* *****全红****** */
void pingr()
{
latch=0;
for(i=0;i<=47;i++)
{
clr();
set();
clr();
}
latch=1;
}
/* *****全绿****** */
void pingg()
{
latch=0;
for(i=0;i<=47;i++)
{
set();
ge(2);
}
latch=1;
}
/* *****全蓝****** */
void pingb()
{
latch=0;
for(i=0;i<=47;i++)
{
clr();
clr();
set();
}
latch=1;
}
/* *****全绿红****** */
void pinggr()
{
latch=0;
for(i=0;i<=47;i++)
{
set();
set();
clr();
}
latch=1;
}
/* *****全绿蓝****** */
void pinggb()
{
latch=0;
for(i=0;i<=47;i++)
{
set();
clr();
set();
}
latch=1;
}
/* *****全红蓝****** */
void pingrb()
{
latch=0;
for(i=0;i<=47;i++)
{
clr();
set();
set();
}
latch=1;
}
/* *****显示奇数行****** */
void rowg11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(3);
set();
ge(2);
set();
ge(5);
}
latch=1;
}
void rowr11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(3);
clr();
set();
ge(2);
set();
clr();
ge(3);
}
latch=1;
}
void rowb11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
set();
ge(2);
set();
ge(3);
}
latch=1;
}
void rowgr11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(3);
set();
set();
clr();
set();
set();
clr();
ge(3);
}
latch=1;
}
void rowgb11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(3);
set();
clr();
set();
set();
clr();
set();
ge(3);
}
latch=1;
}
void rowrb11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(3);
clr();
set();
set();
clr();
set();
set();
ge(3);
}
latch=1;
}
void rowgrb11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(3);
set();
set();
set();
set();
set();
set();
ge(3);
}
latch=1;
}
/* *****显示偶数行****** */
void rowg12()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
ge(5);
ge(3);
set();
ge(2);
}
latch=1;
}
void rowr12()
{
latch=0;
for(i=0;i<=11;i++)
{
clr();
set();
ge(5);
ge(3);
set();
clr();
}
latch=1;
}
void rowb12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(2);
set();
ge(5);
ge(3);
set();
}
latch=1;
}
void rowgr12()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
set();
ge(5);
ge(2);
set();
set();
clr();
}
latch=1;
}
void rowgb12()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
clr();
set();
ge(5);
clr();
set();
clr();
set();
}
latch=1;
}
void rowrb12()
{
latch=0;
for(i=0;i<=11;i++)
{
clr();
set();
set();
ge(5);
ge(2);
set();
set();
}
latch=1;
}
void rowgrb12()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
set();
set();
ge(5);
clr();
set();
set();
set();
}
latch=1;
}
/* *****显示奇数列****** */
void lieg11()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
ge(2);
set();
ge(5);
ge(3);
}
latch=1;
}
void lier11()
{
latch=0;
for(i=0;i<=11;i++)
{
clr();
set();
ge(2);
set();
ge(5);
ge(2);
}
latch=1;
}
void lieb11()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(2);
set();
ge(2);
set();
ge(5);
clr();
}
latch=1;
}
void liegr11()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
set();
clr();
set();
set();
ge(5);
ge(2);
}
latch=1;
}
void liegb11()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
clr();
set();
set();
clr();
set();
ge(5);
clr();
}
latch=1;
}
void lierb11()
{
latch=0;
for(i=0;i<=11;i++)
{
clr();
set();
set();
clr();
set();
set();
ge(5);
clr();
}
latch=1;
}
void liegrb11()
{
latch=0;
for(i=0;i<=11;i++)
{
set();
set();
set();
set();
set();
set();
ge(5);
clr();
}
latch=1;
}
/* *****显示偶数列****** */
void lieg12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
clr();
set();
ge(2);
set();
ge(2);
}
latch=1;
}
void lier12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
ge(2);
set();
ge(2);
set();
clr();
}
latch=1;
}
void lieb12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
ge(3);
set();
ge(2);
set();
}
latch=1;
}
void liegr12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
clr();
set();
set();
clr();
set();
set();
clr();
}
latch=1;
}
void liegb12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
clr();
set();
clr();
set();
set();
clr();
set();
}
latch=1;
}
void lierb12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
ge(2);
set();
set();
clr();
set();
set();
}
latch=1;
}
void liegrb12()
{
latch=0;
for(i=0;i<=11;i++)
{
ge(5);
clr();
set();
set();
set();
set();
set();
set();
}
latch=1;
}
/* *****隔行列显示红1****** */
void rowlier1()
{
for(j=0;j<=100;j++)
// while(1)
{
if(jing==1 && xie==1 && red==0 && green==1 && blue==1)
{
for (m=0;m<=yanshi1;m++)
rowr11();
for (p=0;p<=yanshi1;p++)
rowr12();
for (m=0;m<=yanshi1;m++)
lier11();
for (p=0;p<=yanshi1;p++)
lier12();
}
}
}
/* *****隔行列显示绿1****** */
void rowlieg1()
{
for(j=0;j<=100;j++)
// while(1)
{
if(jing==1 && xie==1 && red==1 && green==0 && blue==1)
{
for (m=0;m<=yanshi1;m++)
rowg11();
for (p=0;p<=yanshi1;p++)
rowg12();
for (m=0;m<=yanshi1;m++)
lieg11();
for (p=0;p<=yanshi1;p++)
lieg12();
}
}
}
/* *****隔行列显示蓝1****** */
void rowlieb1()
{
for(j=0;j<=100;j++)
// while(1)
{
if(jing==1 && xie==1 && red==1 && green==1 && blue==0)
{
for (m=0;m<=yanshi1;m++)
rowb11();
for (p=0;p<=yanshi1;p++)
rowb12();
for (m=0;m<=yanshi1;m++)
lieb11();
for (p=0;p<=yanshi1;p++)
lieb12();
}
}
}
/* *****隔行列显示绿红1****** */
void rowliegr1()
{
for(j=0;j<=100;j++)
// while(1)
{
if(jing==1 && xie==1 && red==0 && green==0 && blue==1)
{
for (m=0;m<=yanshi1;m++)
rowgr11();
for (p=0;p<=yanshi1;p++)
rowgr12();
for (m=0;m<=yanshi1;m++)
liegr11();
for (p=0;p<=yanshi1;p++)
liegr12();
}
}
}
/* *****隔行列显示绿蓝1****** */
void rowliegb1()
{
for(j=0;j<=100;j++)
// while(1)
{
if(jing==1 && xie==1 && red==1 && green==0 && blue==0)
{
for (m=0;m<=yanshi1;m++)
rowgb11();
for (p=0;p<=yanshi1;p++)
rowgb12();
for (m=0;m<=yanshi1;m++)
liegb11();
for (p=0;p<=yanshi1;p++)
liegb12();
}
}
}
/* *****隔行列显示红蓝1****** */
void rowlierb1()
{
for(j=0;j<=100;j++)
// while(1)
{
if(jing==1 && xie==1 && red==0 && green==1 && blue==0)
{
for (m=0;m<=yanshi1;m++)
rowrb11();
for (p=0;p<=yanshi1;p++)
rowrb12();
for (m=0;m<=yanshi1;m++)
lierb11();
for (p=0;p<=yanshi1;p++)
lierb12();
}
}
}
/* *****隔行列显示绿红蓝1****** */
void rowliegrb1()
{
for(j=0;j<=100;j++)
// while(1)
{
if(jing==1 && xie==1 && red==0 && green==0 && blue==0)
{
for (m=0;m<=yanshi1;m++)
rowgrb11();
for (p=0;p<=yanshi1;p++)
rowgrb12();
for (m=0;m<=yanshi1;m++)
liegrb11();
for (p=0;p<=yanshi1;p++)
liegrb12();
}
}
}
/* *****显示斜线****** */
/////////
void setqian(unsigned char num)
{
if(num%2==0)
{
for(q=num/2;q>=1;q--)
{
setrgb(q);
ge(5);
setrgb(q);
if(q!=1)
ge(5);
}
}
else
{
setrgb(num/2+1);
if(num/2+1!=1)
ge(5);
for(q=num/2;q>=1;q--)
{
setrgb(q);
ge(5);
setrgb(q);
if(q!=1)
ge(5);
}
}
}
void sethou(unsigned char num)
{
if(num%2==0)
{
for(q=0;q<=num/2-1;q++)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -