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

📄 noname1.c

📁 通过PROTUES 在矩正8*8上仿真显示汉字的程序
💻 C
字号:
#include<reg51.h>
#include<absacc.h>


#define   DATBIT1      XBYTE[ 0x0100]
#define   DATBIT2      XBYTE[ 0x0200]
#define   DATBIT3      XBYTE[ 0x0080]
#define   DATBIT4      XBYTE[ 0x0040]
#define   DAT1  XBYTE[ 0x0020]
#define   DAT2  XBYTE[ 0x0010]
#define   DAT3  XBYTE[ 0x0008]
#define   DAT4  XBYTE[ 0x0004]
#define   DAT5  XBYTE[ 0x0002]
#define   DAT6  XBYTE[ 0x0001]
#define   DAT7  XBYTE[ 0x8000]
#define   DAT8  XBYTE[ 0x4000]

#define uchar   unsigned char
#define uint    unsigned int

//uchar code TABLE1[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x21,0x21,0x21,0x21,0x3f,0x21,0x2f};
//uchar code TABLE2[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
//uchar code TABLE3[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x21,0x21,0x21,0x3f,0x21,0x2f};
//uchar code TABLE4[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
//uchar code TABLE5[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x01,0x21,0x21,0x3f,0x21,0x2f};
//uchar code TABLE6[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
//uchar code TABLE7[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x01,0x01,0x21,0x3f,0x21,0x2f};
//uchar code TABLE8[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
//uchar code TABLE9[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
uchar code TABLE1[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x21,0x21,0x21,0x21,0x3f,0x21,0x2f};
uchar code TABLE2[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
uchar code TABLE3[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x21,0x21,0x21,0x3f,0x21,0x2f};
uchar code TABLE4[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
uchar code TABLE5[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x01,0x21,0x21,0x3f,0x21,0x2f};
uchar code TABLE6[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
uchar code TABLE7[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x01,0x01,0x21,0x3f,0x21,0x2f};
uchar code TABLE8[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
uchar code TABLE9[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};

uchar code TABLE11[]={0x04,0x04,0x7c,0x04,0x04,0x04,0x04,0x00,0x00,0x04,0x44,0x24,0x14,0x0c,0x14,0x14};
uchar code TABLE12[]={0x40,0x60,0x50,0x48,0x40,0x40,0x40,0x00,0x00,0x3e,0x42,0x42,0x42,0x40,0x40,0x40};
uchar code TABLE13[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x01,0x01,0x01,0x1f,0x21,0x2f};
uchar code TABLE14[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
uchar code TABLE15[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x01,0x01,0x01,0x1f,0x01,0x2f};
uchar code TABLE16[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
uchar code TABLE17[]={0x22,0x24,0x3F,0x02,0x01,0x7f,0x01,0x01,0x00,0x01,0x01,0x01,0x01,0x1f,0x01,0x0f};
uchar code TABLE18[]={0x44,0x24,0xfc,0x00,0x00,0xfe,0x04,0x00,0x00,0x08,0x14,0x04,0x04,0xfc,0x04,0xf4};
void main()
{
   uchar  i;
   uchar   j;
   uchar   k;
   uchar   dlay;
   bit   flag1;
   bit   flag2;
   uchar digit1;
   uchar digit2;
   for(; ;)
   {
     DATBIT1=0;
     DATBIT2=0;
     DATBIT3=0;
     DATBIT4=0;
     digit1=0x01;
     digit2=0x01;
     flag1=0;
     flag2=0;
     for(k=0;k<160;k++)
     {
       j=k/20;
       for(i=0;i<16;i++)
       {
 	DATBIT1=0;
	DATBIT2=0;
	DATBIT3=0;
	DATBIT4=0;
	if(digit1 ==0x00)  digit1=0x01;
        if(digit2 ==0x00)  digit2=0x01;
	j=k/20;
        switch(j)
  	{
         case 7:
         {
           DAT1=TABLE7[i];
           DAT2=TABLE8[i];
	   DAT3=TABLE5[i];
           DAT4=TABLE6[i];
           DAT5=TABLE3[i];
           DAT6=TABLE4[i];
           DAT7=TABLE1[i];
           DAT8=TABLE2[i];
          } break;
         case 6:
         {
           DAT1=TABLE5[i];
           DAT2=TABLE6[i];
           DAT3=TABLE3[i];
           DAT4=TABLE4[i];
           DAT5=TABLE1[i];
           DAT6=TABLE2[i];
           DAT7=TABLE9[i];
           DAT8=TABLE9[i];
           } break;
           case 5:
           {
           DAT1=TABLE3[i];
           DAT2=TABLE4[i];
	   DAT3=TABLE1[i];
           DAT4=TABLE2[i];
           DAT5=TABLE9[i];
           DAT6=TABLE9[i];
           DAT7=TABLE9[i];
           DAT8=TABLE9[i];
           }  break;
           case 4:
           {
           DAT1=TABLE1[i];
           DAT2=TABLE2[i];
           DAT3=TABLE9[i];
           DAT4=TABLE9[i];
           DAT5=TABLE9[i];
           DAT6=TABLE9[i];
           DAT7=TABLE9[i];
           DAT8=TABLE9[i];

           }break;

         case 3:
         {
     	   DAT1=TABLE7[i];
           DAT2=TABLE8[i];
	   DAT3=TABLE5[i];
           DAT4=TABLE6[i];
           DAT5=TABLE3[i];
           DAT6=TABLE4[i];
           DAT7=TABLE1[i];
           DAT8=TABLE2[i];
		   } break;
           case 2:
		  {
           DAT1=TABLE5[i];
           DAT2=TABLE6[i];
           DAT3=TABLE3[i];
           DAT4=TABLE4[i];
           DAT5=TABLE1[i];
           DAT6=TABLE2[i];
	   } break;
	   case 1:
	  {
	   DAT1=TABLE3[i];
           DAT2=TABLE4[i];
	   DAT3=TABLE1[i];
           DAT4=TABLE2[i];
	   } break;
	   default:
	  {
	   DAT1=TABLE1[i];
           DAT2=TABLE2[i];
           DAT3=TABLE9[i];
           DAT4=TABLE9[i];
           DAT5=TABLE9[i];
           DAT6=TABLE9[i];
           DAT7=TABLE9[i];
           DAT8=TABLE9[i];
	   }
          }
          if(j<=3)
          {
          if(flag1==1)           DATBIT2=digit1;
          else                   DATBIT1=digit1;
	  for(dlay=0;dlay<200;dlay++);
	  if(digit1 ==0x80)      flag1=!flag1;
          digit1<<=1;
          }
          else
          {
           if(flag2==1)           DATBIT4=digit2;
           else                   DATBIT3=digit2;
	  for(dlay=0;dlay<200;dlay++);
	  if(digit2 ==0x80)      flag2=!flag2;
          digit2<<=1;
          }
        }       //end  for loop         
          
          
        if(j>=4)
          {
          for(i=0;i<16;i++)
          {
 	   DATBIT1=0;
	   DATBIT2=0;
	   DATBIT3=0;
	   DATBIT4=0;
	   if(digit1 ==0x00)  digit1=0x01;
             //if(digit2 ==0x00)  digit2=0x01;
             switch(j)
  	     {
              case 7:
              {
               DAT1=TABLE17[i];
               DAT2=TABLE18[i];
	       DAT3=TABLE15[i];
               DAT4=TABLE16[i];
               DAT5=TABLE13[i];
               DAT6=TABLE14[i];
               DAT7=TABLE11[i];
               DAT8=TABLE12[i];
              } break;
             case 6:
             {
             DAT1=TABLE15[i];
             DAT2=TABLE16[i];
             DAT3=TABLE13[i];
             DAT4=TABLE14[i];
             DAT5=TABLE11[i];
             DAT6=TABLE12[i];
             DAT7=TABLE7[i];
             DAT8=TABLE8[i];
             } break;
             case 5:
             {
             DAT1=TABLE13[i];
             DAT2=TABLE14[i];
             DAT3=TABLE11[i];
             DAT4=TABLE12[i];
             DAT5=TABLE7[i];
             DAT6=TABLE8[i];
             DAT7=TABLE5[i];
             DAT8=TABLE6[i];
             }  break;
              default:
             {
             DAT1=TABLE11[i];
             DAT2=TABLE12[i];
             DAT3=TABLE7[i];
             DAT4=TABLE8[i];
             DAT5=TABLE5[i];
             DAT6=TABLE6[i];
             DAT7=TABLE3[i];
             DAT8=TABLE4[i];
             }
            }
            if(flag1==1)           DATBIT2=digit1;
            else                   DATBIT1=digit1;
	    for(dlay=0;dlay<200;dlay++);
	    if(digit1 ==0x80)      flag1=!flag1;
            digit1<<=1; 
          }
         }                 
     }
   }
 }

⌨️ 快捷键说明

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