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

📄 lcd.c

📁 51单片机各类源程序集锦
💻 C
字号:
#include "reg66x.h"
#include "absacc.h"

#define uchar unsigned char

uchar j=0;
uchar flash;
bit addbit=1; 

uchar code zhou[]={
/*--  文字:  周  --*/
/*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x10,0x18,0x0F,0x01,0x05,0x1D,0x15,0x15,0x1D,0x1D,0x01,0x3F,0x38,0x00,0x00,
0x00,0x00,0x00,0xE0,0xE0,0x60,0x60,0xF0,0xF0,0x60,0x60,0x60,0xF0,0x20,0x00,0x00,

/*--  文字:  立  --*/
/*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x18,0x18,0x18,0x08,0x0F,0x08,0x08,0x08,0x1F,0x19,0x18,0x18,0x38,0x18,0x08,
0x00,0x00,0x40,0x40,0x40,0xC0,0x40,0x70,0x70,0xC0,0xC0,0x40,0x40,0x40,0x00,0x00,

/*--  文字:  功  --*/
/*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x04,0x04,0x06,0x06,0x33,0x12,0x1A,0x0E,0x16,0x13,0x11,0x18,0x1C,0x07,0x01,0x00,
0x00,0x40,0x40,0x40,0xC0,0x40,0x40,0x40,0x40,0x40,0xF0,0x70,0x80,0x80,0x80,0x00,
};

uchar code li[]=
{
/*--  文字:  单  --*/
/*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x0C,0x0C,0x04,0x07,0x06,0x06,0x1F,0x3F,0x06,0x06,0x06,0x0D,0x0C,0x0C,0x00,
0x00,0x00,0x00,0x40,0xC0,0xD0,0xB0,0xC0,0xC0,0xB0,0xD0,0xC0,0xE0,0x00,0x00,0x00,

/*--  文字:  片  --*/
/*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x18,0x08,0x0C,0x07,0x01,0x01,0x01,0x3F,0x3F,0x01,0x01,0x03,0x03,0x03,0x01,
0x00,0x00,0x00,0x00,0xF0,0xC0,0x40,0x40,0x70,0x60,0x40,0x40,0x40,0x00,0x00,0x00,

/*--  文字:  机  --*/
/*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x04,0x06,0x03,0x3F,0x03,0x12,0x1C,0x0F,0x00,0x00,0x0F,0x18,0x18,0x18,0x08,
0x00,0x00,0x40,0x40,0xF0,0x40,0x40,0x00,0xE0,0x20,0x20,0xE0,0x20,0x00,0x00,0x00,
};

void delay(uchar k)  //延时
{
	uchar i,j;
  	for(i=0;i<k;i++)
    for(j=0;j<250;j++);
}

void c_send(uchar i,uchar a)  //写指令指令,i=0写左半屏,非0则写右半屏。
{
	if(!i)
		XBYTE[0x4000]=a;    //指令
	else
		XBYTE[0x4004]=a;    //指令
  	delay(5);
}

void d_send(uchar i,uchar a)  //输入数据
{
   if(!i)
		XBYTE[0x4001]=a;    //指令
	else
		XBYTE[0x4005]=a;    //指令
  	delay(5);
}

main()
{
  uchar i;
  delay(200);
  delay(200);
  delay(200);
  //黑屏
  //  XBYTE[0XFC00]=1;   //片选选择左半屏
  c_send(0x01,0x3e);
  c_send(0x01,0xc0);
  c_send(0x01,0X3F);
  c_send(0x01,0x40);
  c_send(0x01,0xb8);

  for(j=0;j<8;j++)
  {
  	c_send(0x01,0xb8+j);
	for(i=0;i<64;i++)
	d_send(0x01,0xff);
	}

  c_send(0x00,0x3e);
  c_send(0x00,0xc0);
  c_send(0x00,0X3F);
  c_send(0x00,0x40);
  c_send(0x00,0xb8);

  for(j=0;j<8;j++)
  {
  	c_send(0x00,0xb8+j);
	for(i=0;i<64;i++)
	d_send(0x00,0xff);
	}
  delay(200);
  delay(200);
  delay(200);
  delay(200);	

  c_send(0x01,0x50);
  c_send(0x01,0xb8);
  flash=0x50;
  for(i=0;i<96;i++)
  {
    if(i%16==0)
    {
      if(addbit)
      {
        flash=0x50+(i/2);
        c_send(0x01,0xc0);
        c_send(0x01,flash); 
      }
      else
      {
        c_send(0x01,0xc0);
        c_send(0x01,flash); 
      }
      c_send(0x01,0xb9+(uchar)addbit);
      addbit=~addbit;
    }           
    d_send(0x01,zhou[i]);
  }

  c_send(0x00,0xc0);
  c_send(0x00,0x40);
  c_send(0x00,0xb9);
  
  
  flash=0x40;
  for(i=0;i<96;i++)
  {
    if(i%16==0)
    {
      if(addbit)
      {
       // flash[1]=0xc0+(i/2);
        flash=0x40+(i/2);
        c_send(0x00,0xc0);
        c_send(0x00,flash); 
      }
      else
      {
        c_send(0x00,0xc0);
        c_send(0x00,flash); 
      }
      c_send(0x00,0xb9+(uchar)addbit);
      addbit=~addbit;
    }         
    d_send(0x00,li[i]);
  }
  while(1); 
   
}

⌨️ 快捷键说明

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