⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 52.c

📁 LED静态屏测试程序。通过隔行、隔列、斜线显示
💻 C
📖 第 1 页 / 共 2 页
字号:
  	{
  		setrgb(6-q);
  		ge(5);
  		setrgb(6-q);
  		if(q!=num/2-1)
  		ge(5);
  	 }
   }
   else
   {
   	for(q=0;q<=num/2-1;q++)
   	{
   	  setrgb(6-q);
   	  ge(5);
   	  setrgb(6-q);
   	  ge(5);	
   	 }
   	 setrgb(6-num/2);
   	}	
  }

void setqiangr(unsigned char num)
{
 if(num%2==0)
 {
 	for(q=num/2;q>=1;q--)
 	{
 	 setrgb(q);
 	 setrgb(q);
 	 ge(4);
 	 setrgb(q);
 	 setrgb(q);
 	 if(q!=1)
 	 ge(4);	
 	 }
  }
  else
 {
   setrgb(num/2+1);
   setrgb(num/2+1);
   if(num/2+1!=1)
   ge(4);
  for(q=num/2;q>=1;q--)
   { 
   	 setrgb(q);
   	 setrgb(q);
 	 ge(4);
 	 setrgb(q);
 	 setrgb(q);
 	 if(q!=1)
 	 ge(4);
    }
  }	
 }
 void sethougr(unsigned char num)
 {
  if(num%2==0)
  {
  	for(q=0;q<=num/2-1;q++)
  	{
  		setrgb(6-q);
  		setrgb(6-q);
  		ge(4);
  		setrgb(6-q);
  		setrgb(6-q);
  		if(q!=num/2-1)
  		ge(4);
  	 }
   }
   else
   {
   	for(q=0;q<=num/2-1;q++)
   	{
   	  setrgb(6-q);
   	  setrgb(6-q);
   	  ge(4);
   	  setrgb(6-q);
   	  setrgb(6-q);
   	  ge(4);	
   	 }
   	 setrgb(6-num/2);
   	 setrgb(6-num/2);
   	}	
  }
void setqiangb(unsigned char num)
{
 if(num%2==0)
 {
 	for(q=num/2;q>=1;q--)
 	{
 	 setrgb(q);
 	 ge(1);
 	 setrgb(q);
 	 ge(3);
 	 setrgb(q);
 	 ge(1);
 	 setrgb(q);
 	 if(q!=1)
 	 ge(3);	
 	 }
  }
  else
 {
   setrgb(num/2+1);
   ge(1);
   setrgb(num/2+1);
   if(num/2+1!=1)
   ge(3);
  for(q=num/2;q>=1;q--)
   { 
   	 setrgb(q);
   	 ge(1);
     setrgb(q);
 	 ge(3);
 	 setrgb(q);
 	 ge(1);
 	 setrgb(q);
 	 if(q!=1)
 	 ge(3);
    }
  }	
 }
 void sethougb(unsigned char num)
 {
  if(num%2==0)
  {
  	for(q=0;q<=num/2-1;q++)
  	{
  		setrgb(6-q);
  		ge(1);
  		setrgb(6-q);
  		ge(3);
  		setrgb(6-q);
  		ge(1);
  		setrgb(6-q);
  		if(q!=num/2-1)
  		ge(3);
  	 }
   }
   else
   {
   	for(q=0;q<=num/2-1;q++)
   	{
   	  setrgb(6-q);
   	  ge(1);
   	  setrgb(6-q);
   	  ge(3);
   	  setrgb(6-q);
   	  ge(1);
   	  setrgb(6-q);
   	  ge(3);	
   	 }
   	 setrgb(6-num/2);
   	 ge(1);
   	 setrgb(6-num/2);
   	}	
  }
void setqiangrb(unsigned char num)
{
 if(num%2==0)
 {
 	for(q=num/2;q>=1;q--)
 	{
 	 setrgb(q);
 	 setrgb(q);
 	 setrgb(q);
 	 ge(3);
 	 setrgb(q);
 	 setrgb(q);
 	 setrgb(q);
 	 if(q!=1)
 	 ge(3);	
 	 }
  }
  else
 {
   setrgb(num/2+1);
   setrgb(num/2+1);
   setrgb(num/2+1);
   if(num/2+1!=1)
   ge(3);
  for(q=num/2;q>=1;q--)
   { 
   	 setrgb(q);
   	 setrgb(q);
     setrgb(q);
 	 ge(3);
 	 setrgb(q);
 	 setrgb(q);
 	 setrgb(q);
 	 if(q!=1)
 	 ge(3);
    }
  }	
 }
 void sethougrb(unsigned char num)
 {
  if(num%2==0)
  {
  	for(q=0;q<=num/2-1;q++)
  	{
  		setrgb(6-q);
  		setrgb(6-q);
  		setrgb(6-q);
  		ge(3);
  		setrgb(6-q);
  		setrgb(6-q);
  		setrgb(6-q);
  		if(q!=num/2-1)
  		ge(3);
  	 }
   }
   else
   {
   	for(q=0;q<=num/2-1;q++)
   	{
   	  setrgb(6-q);
   	  setrgb(6-q);
   	  setrgb(6-q);
   	  ge(3);
   	  setrgb(6-q);
   	  setrgb(6-q);
   	  setrgb(6-q);
   	  ge(3);	
   	 }
   	 setrgb(6-num/2);
   	 setrgb(6-num/2);
   	 setrgb(6-num/2);
   	}	
  }
/* *******斜线显示绿*********** */	
 void xiedang(unsigned char hang)
 {
 	latch=0;
 	 if(hang>=1 && hang<=12)
 	 {
 	 	if(hang%2==0)
 	 	{
 	 	 setqian(hang);
 	 	 ge(149-6*hang);	
 	 	 }
 	 	 else
 	 	 {
 	 	  ge(3);
 	 	  setqian(hang);
 	 	  ge(146-6*hang);
 	 	  }
 	  }	
 	 else if(hang>=13 && hang<=24)
 	 {
 	   if(hang%2==0)
 	   {
 	     ge(6*hang-72);
 	     setqian(12);
 	     ge(149-6*hang);
        }
        else
        {
         ge(6*hang-69);
 	     setqian(12);
 	     ge(146-6*hang);
        }	
 	  }
 	 else if(hang>=25 && hang<=35)
 	 {
 	   if(hang%2==0)
 	   {
 	   	ge(6*hang-72);
 	   	sethou(36-hang);
 	   	ge(5);
 	   	}	
 	   	else
 	   	{
 	   	 ge(6*hang-69);
 	   	 sethou(36-hang);
 	   	 ge(2);
 	   	 }
 	  }
 	latch=1;
  }
 void xieg()
 { 	
 	for(j=0;j<=100;j++)
 	{
       	for(t=1;t<=35;t++)
       	{
       	 if(jing==1 && xie==0 && red==1 && green==0 && blue==1)
       	 {	
       	  for (m=0;m<=yanshi2;m++)
       	  xiedang(t);
       	  }
       	 }  
     }
  }
  /*  *****斜线显示红******     */
 void xiedanr(unsigned char hang)
 {
 	latch=0;
 	 if(hang>=1 && hang<=12)
 	 {
 	 	if(hang%2==0)
 	 	{
 	 	 ge(1);
 	 	 setqian(hang);
 	 	 ge(148-6*hang);	
 	 	 }
 	 	 else
 	 	 {
 	 	  ge(4);
 	 	  setqian(hang);
 	 	  ge(145-6*hang);
 	 	  }
 	  }	
 	 else if(hang>=13 && hang<=24)
 	 {
 	   if(hang%2==0)
 	   {
 	     ge(6*hang-71);
 	     setqian(12);
 	     ge(148-6*hang);
        }
        else
        {
         ge(6*hang-68);
 	     setqian(12);
 	     ge(145-6*hang);
        }	
 	  }
 	 else if(hang>=25 && hang<=35)
 	 {
 	   if(hang%2==0)
 	   {
 	   	ge(6*hang-71);
 	   	sethou(36-hang);
 	   	ge(4);
 	   	}	
 	   	else
 	   	{
 	   	 ge(6*hang-68);
 	   	 sethou(36-hang);
 	   	 ge(1);
 	   	 }
 	  }
 	latch=1;
  }
 void xier()
 { 	
 	for(j=0;j<=100;j++)
 	{
   		
       	for(t=1;t<=35;t++)
       	{
       	if(jing==1 && xie==0 && red==0 && green==1 && blue==1)
        {
       	  for (m=0;m<=yanshi2;m++)
       	  xiedanr(t);
       	 }
   	    }
     }
  }
 /*  *****斜线显示蓝******     */
 void xiedanb(unsigned char hang)
 {
 	latch=0;
 	 if(hang>=1 && hang<=12)
 	 {
 	 	if(hang%2==0)
 	 	{
 	 	 ge(2);
 	 	 setqian(hang);
 	 	 ge(147-6*hang);	
 	 	 }
 	 	 else
 	 	 {
 	 	  ge(5);
 	 	  setqian(hang);
 	 	  ge(144-6*hang);
 	 	  }
 	  }	
 	 else if(hang>=13 && hang<=24)
 	 {
 	   if(hang%2==0)
 	   {
 	     ge(6*hang-70);
 	     setqian(12);
 	     ge(147-6*hang);
        }
        else
        {
         ge(6*hang-67);
 	     setqian(12);
 	     ge(144-6*hang);
        }	
 	  }
 	 else if(hang>=25 && hang<=35)
 	 {
 	   if(hang%2==0)
 	   {
 	   	ge(6*hang-70);
 	   	sethou(36-hang);
 	   	ge(3);
 	   	}	
 	   	else
 	   	{
 	   	 ge(6*hang-67);
 	   	 sethou(36-hang);
 	   	 }
 	  }
 	latch=1;
  }
 void xieb()
 { 	
 	for(j=0;j<=100;j++)
 	{
   		
       	for(t=1;t<=35;t++)
       	{
       	if(jing==1 && xie==0 && red==1 && green==1 && blue==0)
        {
       	  for (m=0;m<=yanshi2;m++)
       	  xiedanb(t);
       	 }
   	    }
     }
  }
   /*  *****斜线显示绿红******     */
 void xiedangr(unsigned char hang)
 {
 	latch=0;
 	 if(hang>=1 && hang<=12)
 	 {
 	 	if(hang%2==0)
 	 	{
 	 	 setqiangr(hang);
 	 	 ge(148-6*hang);	
 	 	 }
 	 	 else
 	 	 {
 	 	  ge(3);
 	 	  setqiangr(hang);
 	 	  ge(145-6*hang);
 	 	  }
 	  }	
 	 else if(hang>=13 && hang<=24)
 	 {
 	   if(hang%2==0)
 	   {
 	     ge(6*hang-72);
 	     setqiangr(12);
 	     ge(148-6*hang);
        }
        else
        {
         ge(6*hang-69);
 	     setqiangr(12);
 	     ge(145-6*hang);
        }	
 	  }
 	 else if(hang>=25 && hang<=35)
 	 {
 	   if(hang%2==0)
 	   {
 	   	ge(6*hang-72);
 	   	sethougr(36-hang);
 	   	ge(4);
 	   	}	
 	   	else
 	   	{
 	   	 ge(6*hang-69);
 	   	 sethougr(36-hang);
 	   	 ge(1);
 	   	 }
 	  }
 	latch=1;
  }

 void xiegr()
 { 	
 	for(j=0;j<=100;j++)
 	{
   		
       	for(t=1;t<=35;t++)
       	{
       	if(jing==1 && xie==0 && red==0 && green==0 && blue==1)
        {
       	  for (m=0;m<=yanshi2;m++)
       	  xiedangr(t);
       	 }
   	    }
     }
  }
   /*  *****斜线显示红蓝******     */
 void xiedanrb(unsigned char hang)
 {
 	latch=0;
 	 if(hang>=1 && hang<=12)
 	 {
 	 	if(hang%2==0)
 	 	{
 	 	 ge(1);
 	 	 setqiangr(hang);
 	 	 ge(147-6*hang);	
 	 	 }
 	 	 else
 	 	 {
 	 	  ge(4);
 	 	  setqiangr(hang);
 	 	  ge(144-6*hang);
 	 	  }
 	  }	
 	 else if(hang>=13 && hang<=24)
 	 {
 	   if(hang%2==0)
 	   {
 	     ge(6*hang-71);
 	     setqiangr(12);
 	     ge(147-6*hang);
        }
        else
        {
         ge(6*hang-68);
 	     setqiangr(12);
 	     ge(144-6*hang);
        }	
 	  }
 	 else if(hang>=25 && hang<=35)
 	 {
 	   if(hang%2==0)
 	   {
 	   	ge(6*hang-71);
 	   	sethougr(36-hang);
 	   	ge(3);
 	   	}	
 	   	else
 	   	{
 	   	 ge(6*hang-68);
 	   	 sethougr(36-hang);
 	   	 }
 	  }
 	latch=1;
  }

 void xierb()
 { 	
 	for(j=0;j<=100;j++)
 	{
   		
       	for(t=1;t<=35;t++)
       	{
       	if(jing==1 && xie==0 && red==0 && green==1 && blue==0)
        {
       	  for (m=0;m<=yanshi2;m++)
       	  xiedanrb(t);
       	 }
   	    }
     }
  }
   /*  *****斜线显示绿蓝******     */
 void xiedangb(unsigned char hang)
 {
 	latch=0;
 	 if(hang>=1 && hang<=12)
 	 {
 	 	if(hang%2==0)
 	 	{
 	 	 setqiangb(hang);
 	 	 ge(147-6*hang);	
 	 	 }
 	 	 else
 	 	 {
 	 	  ge(3);
 	 	  setqiangb(hang);
 	 	  ge(144-6*hang);
 	 	  }
 	  }	
 	 else if(hang>=13 && hang<=24)
 	 {
 	   if(hang%2==0)
 	   {
 	     ge(6*hang-72);
 	     setqiangb(12);
 	     ge(147-6*hang);
        }
        else
        {
         ge(6*hang-69);
 	     setqiangb(12);
 	     ge(144-6*hang);
        }	
 	  }
 	 else if(hang>=25 && hang<=35)
 	 {
 	   if(hang%2==0)
 	   {
 	   	ge(6*hang-72);
 	   	sethougb(36-hang);
 	   	ge(3);
 	   	}	
 	   	else
 	   	{
 	   	 ge(6*hang-69);
 	   	 sethougb(36-hang);
 	   	 }
 	  }
 	latch=1;
  }
 void xiegb()
 { 	
 	for(j=0;j<=100;j++)
 	{
   		
       	for(t=1;t<=35;t++)
       	{
       	if(jing==1 && xie==0 && red==1 && green==0 && blue==0)
        {
       	  for (m=0;m<=yanshi2;m++)
       	  xiedangb(t);
       	 }
   	    }
     }
  }
   /*  *****斜线显示绿红蓝******     */
 void xiedangrb(unsigned char hang)
 {
 	latch=0;
 	 if(hang>=1 && hang<=12)
 	 {
 	 	if(hang%2==0)
 	 	{
 	 	 setqiangrb(hang);
 	 	 ge(147-6*hang);	
 	 	 }
 	 	 else
 	 	 {
 	 	  ge(3);
 	 	  setqiangrb(hang);
 	 	  ge(144-6*hang);
 	 	  }
 	  }	
 	 else if(hang>=13 && hang<=24)
 	 {
 	   if(hang%2==0)
 	   {
 	     ge(6*hang-72);
 	     setqiangrb(12);
 	     ge(147-6*hang);
        }
        else
        {
         ge(6*hang-69);
 	     setqiangrb(12);
 	     ge(144-6*hang);
        }	
 	  }
 	 else if(hang>=25 && hang<=35)
 	 {
 	   if(hang%2==0)
 	   {
 	   	ge(6*hang-72);
 	   	sethougrb(36-hang);
 	   	ge(3);
 	   	}	
 	   	else
 	   	{
 	   	 ge(6*hang-69);
 	   	 sethougrb(36-hang);
 	   	 }
 	  }
 	latch=1;
  }
 void xiegrb()
 { 	
 	for(j=0;j<=100;j++)
 	{	
       	for(t=1;t<=35;t++)
       	{
       	 if(jing==1 && xie==0 && red==0 && green==0 && blue==0)
         {
       	  for (m=0;m<=yanshi2;m++)
       	  xiedangrb(t);
       	 }
   	    }
     }
  }
//////////////////////////
void main()
{
    unsigned int a,b,c,d;
	a=CBYTE[0x1ff0];
	b=CBYTE[0x1ff1];
	c=CBYTE[0x1ff2];
	d=CBYTE[0x1ff3];
	yanshi1=a*b;
	yanshi2=c*d;
//   yanshi1=CWORD[0x1ff1];
//   yanshi2=CWORD[0x1ff2];

//	yanshi1=350;
//	yanshi2=300;

	while(1)
  {
  	if(jing==0 && red==0 && green==0 && blue==0)
  	{
  	 setping();
  	 }
  	 if(jing==0 && red==0 && green==1 && blue==1)
  	{
  	 pingr();
  	 }
  	 if(jing==0 && red==1 && green==0 && blue==1)
  	{
  	 pingg();
  	 }
  	 if(jing==0 && red==1 && green==1 && blue==0)
  	{
  	 pingb();
  	 }
  	 if(jing==0 && red==0 && green==0 && blue==1)
  	{
  	 pinggr();
  	 }
  	 if(jing==0 && red==1 && green==0 && blue==0)
  	{
  	 pinggb();
  	 }
  	 if(jing==0 && red==0 && green==1 && blue==0)
  	{
  	 pingrb();
  	 }
  	 if(jing==0 && red==1 && green==1 && blue==1)
  	{
  	 clrping();
  	 }
  	 if(jing==1 && red==1 && green==1 && blue==1)
  	{
  	 clrping();
  	 }
    if(jing==1 && xie==0 && red==1 && green==0 && blue==1)
   {
    xieg();
    }
    if(jing==1 && xie==0 && red==0 && green==1 && blue==1)
   {
    xier();
    }
    if(jing==1 && xie==0 && red==1 && green==1 && blue==0)
   {
    xieb();
    }
    if(jing==1 && xie==0 && red==0 && green==0 && blue==1)
   {
    xiegr();
    }
    if(jing==1 && xie==0 && red==1 && green==0 && blue==0)
   {
    xiegb();
    }
    if(jing==1 && xie==0 && red==0 && green==1 && blue==0)
   {
    xierb();
    }
    if(jing==1 && xie==0 && red==0 && green==0 && blue==0)
   {
    xiegrb();
    }
    if(jing==1 && xie==1 && red==0 && green==1 && blue==1)
   {
    rowlier1();
    }
     if(jing==1 && xie==1 && red==1 && green==0 && blue==1)
   {
    rowlieg1();
    }
     if(jing==1 && xie==1 && red==1 && green==1 && blue==0)
   {
    rowlieb1();
    }
     if(jing==1 && xie==1 && red==0 && green==0 && blue==1)
   {
    rowliegr1();
    }
     if(jing==1 && xie==1 && red==1 && green==0 && blue==0)
   {
    rowliegb1();
    }
     if(jing==1 && xie==1 && red==0 && green==1 && blue==0)
   {
    rowlierb1();
    }
     if(jing==1 && xie==1 && red==0 && green==0 && blue==0)
   {
    rowliegrb1();
    }
   }
//while(1);
 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -