modify2.bak

来自「液晶屏的单片机demo程序」· BAK 代码 · 共 502 行 · 第 1/2 页

BAK
502
字号
{
   unsigned char i,j,n;

   for(i=0;i<8;i++)
   {
        lcda=0xb8+i;
        lcda=0x40;
        for(j=0,n=k;j<64;j++,n++)
        {
                if(n<29)
		     lcdc=tubiao[i][n];
                else
		     lcdc=tubiao[i][n-128];
        }
   }
}
void lcd_write_2(unsigned char k)
{
    unsigned char i,j;
    for(i=0;i<8;i++)
    {
        lcdb=0xb8+i;
        lcdb=0x40;
        if(k<64)           //移位数小于64时,第一片显示64个数,第二片从64+k开始显示
	{
	       for(j=64+k;j<128;j++)
               {
                    lcdd=kaiping[i][j];
               }
               for(j=0;j<k;j++)
               {
	            lcdd=kaiping[i][j];
               }
        }
        else                         //移位数大于64时,从第k-64位起显示
        {
               for(j=k-64;j<k;j++)
	       {
	            lcdd=kaiping[i][j];
	       }
        }
    }
}
void display()
{
    unsigned char i,j,k,l,m,n,o;
    lcd_clear();
    while(1)
    {
    for(i=0;i<5;i++)
    {
        lcda=0xb8+i;
        for(j=0;j<31;j++)
        {
                lcda=0x40+j;
		lcdc=tubiao[i][j];
        }
     }
     for(i=0;i<2;i++)
     {
        lcda=0xb8+i;
        for(j=0;j<24;j++)
        {
            lcda=0x40+40+j;
            lcdc=chang[i][j];
        }
        lcda=0xba+i;
        for(k=0;k<32;k++)
        {
            lcda=0x40+32+k;
            lcdc=dian[i][k];
        }
        lcda=0xbc+i;
        for(l=0;l<24;l++)
        {
            lcda=0x40+40+l;
            lcdc=bei[i][l];
        }
        lcdb=0xb8+i;
        for(m=0;m<56;m++)
        {
            lcdb=0x40+m;
            lcdd=chang[i][24+m];
        }
        lcdb=0xba+i;
        for(n=0;n<64;n++)
        {
            lcdb=0x40+n;
            lcdd=dian[i][32+n];
        }
        lcdb=0xbc+i;
        for(o=0;o<56;o++)
        {
            lcdb=0x40+o;
            lcdd=bei[i][24+o];
        }
     }
     delay(300000000);
    lcd_clear();
    for(i=0;i<3;i++)
    {
        lcda=0xb8+i;
        for(j=0;j<48;j++)
        {
            lcda=0x40+j;
            lcdc=hu[i][j];
        }
        if(i>0)
        {
            for(j=0;j<16;j++)
            {
                lcda=0x40+j+48;
                lcdc=ji[i-1][j];
            }
            lcdb=0xb8+i;
            for(j=16;j<80;j++)
            {
                lcdb=0x40+j-16;
                lcdd=ji[i-1][j];
            }
        }
    }
    delay(30000000);
    }
}

 */

void Dydisplay()     //动态显示

{
	unsigned char i,j,k,l,m,n,o,p,q,s,d;
        while(1)
        {
        for(i=0;i<6;i++)
        {
            lcda=0xb8+i;
            lcdb=0xb8+i;
            for(j=0;j<64;j++)
            {
                 lcda=0x40+j;
		 lcdc=tubiao[i][j];
                 lcdb=0x40+j;
                 lcdd=tubiao[i][j+64];
            }
       }
       delay(30000);
  
        lcd_write(0x00,0);
        for(k=0;k<2;k++)
        {
            lcda=0xb9+k;
            for(l=0;l<64;l++)
            {
                 lcda=0x40+l;
		 lcdc=jishu[k][l];
            }
            lcdb=0xb9+k;
            for(m=0;m<16;m++)
            {
                lcdb=0x40+m;
                lcdd=jishu[k][m+64];
            }
       }
        for(n=0;n<3;n++)
        {
            lcdb=0xbb+n;
            for(o=0;o<48;o++)
            {
                 lcdb=0x40+o;
                 lcdd=hulian[n][o];
            }
       }
       delay(30000);
       lcd_write(0x00,0);
        for(p=0;p<2;p++)
        {
            lcda=0xb9+p;
            for(q=0;q<48;q++)
            {
                 lcda=0x40+q;
		 lcdc=dianhua[p][q];
            }
       }
        for(s=0;s<2;s++)
        {
            lcda=0xbb+s;
            lcdb=0xbb+s;
            for(d=0;d<64;d++)
            {
               if(d<40)
               {
                 lcda=0x40+d+24;
		 lcdc=haoma[s][d];
               }
                 lcdb=0x40+d;
                 lcdd=haoma[s][d+40];
            }
       }
       delay(10090000);
       delay(10090000);
       delay(10090000);
       delay(10050000);
       delay(10050000);
       delay(10050000);
       lcd_write(0x00,0);
       }
	/*while(1)
	{
		if(k>=128)
		    k=k-128;               //移位数大于等于128时,重新计数
		lcd_write_1(k);
                /*lcd_write_2(k);
		k++;
	}  */

}
/*
void display()    //滚动显示
{
    unsigned char i,j,k;
    lcd_clear();
    for(k=0;;k++)
    {
    for(i=0;i<64;i++)
    {
        lcda=0xb8+i;
        for(j=0;j<64;j++)
        {
            lcda=0x40+j;
            lcdc=tubiao[(i+k)%9][j]; delay(50);
        }
        lcdb=0xb8+i;
        for(j=0;j<64;j++)
        {
            lcdb=0x40+j;
            lcdd=tubiao[(i+k)%9][j+64]; delay(50);
        }
    }
    lcd_clear();
    }
}
   */
void main()
{

         lcd_init();
         Dydisplay();
}

⌨️ 快捷键说明

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