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

📄 test.c

📁 51单片机直接驱动KS0108 12864液晶的测试程序
💻 C
📖 第 1 页 / 共 2 页
字号:
0x00,0x03,0x02,0x12,0x1F,0x12,0x12,0x00,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00
 };

//******46
unsigned char code v[2][16]={
0x00,0x80,0x40,0x20,0xF8,0x00,0x00,0x00,0x00,0xE0,0x10,0x88,0x88,0x98,0x00,0x00,
0x00,0x03,0x02,0x12,0x1F,0x12,0x12,0x00,0x00,0x0F,0x11,0x10,0x10,0x10,0x0F,0x00
 };



//*****图形沙漏***//
unsigned char code w1[2][16]={
0x00,0x00,0x07,0x0F,0x1F,0x3F,0x7F,0xFF,0xFF,0x7F,0x3F,0x1F,0x0F,0x07,0x00,0x00,
0x00,0x00,0xE0,0x90,0x88,0x84,0x82,0x81,0x81,0x82,0x84,0x88,0x90,0xE0,0x00,0x00
 };

unsigned char code w2[2][16]={
0x00,0x00,0x07,0x0D,0x1D,0x3D,0x7D,0xFD,0xFD,0x7D,0x3D,0x1D,0x0D,0x07,0x00,0x00,
0x00,0x00,0xE0,0xD0,0xC8,0xC4,0xC2,0xC1,0xC1,0xC2,0xC4,0xC8,0xD0,0xE0,0x00,0x00
 };

unsigned char code w3[2][16]={
0x00,0x00,0x07,0x09,0x19,0x39,0x79,0xF9,0xF9,0x79,0x39,0x19,0x09,0x07,0x00,0x00,
0x00,0x00,0xE0,0xF0,0xE8,0xE4,0xE2,0xE1,0xE1,0xE2,0xE4,0xE8,0xF0,0xE0,0x00,0x00
 };

unsigned char code w4[2][16]={
0x00,0x00,0x07,0x09,0x11,0x31,0x71,0xF1,0xF1,0x71,0x31,0x11,0x09,0x07,0x00,0x00,
0x00,0x00,0xE0,0xF0,0xF8,0xF4,0xF2,0xF1,0xF1,0xF2,0xF4,0xF8,0xF0,0xE0,0x00,0x00
 };

unsigned char code w5[2][16]={
0x00,0x00,0x07,0x09,0x11,0x21,0x61,0xE1,0xE1,0x61,0x21,0x11,0x09,0x07,0x00,0x00,
0x00,0x00,0xE0,0xF0,0xF8,0xFC,0xFA,0xF9,0xF9,0xFA,0xFC,0xF8,0xF0,0xE0,0x00,0x00
 };

unsigned char code w6[2][16]={
0x00,0x00,0x07,0x09,0x11,0x21,0x41,0xC1,0xC1,0x41,0x21,0x11,0x09,0x07,0x00,0x00,
0x00,0x00,0xE0,0xF0,0xF8,0xFC,0xFE,0xFD,0xFD,0xFE,0xFC,0xF8,0xF0,0xE0,0x00,0x00
 };

unsigned char code w7[2][16]={
0x00,0x00,0x07,0x09,0x11,0x21,0x41,0x81,0x81,0x41,0x21,0x11,0x09,0x07,0x00,0x00,
0x00,0x00,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF,0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0x00,0x00
 };

unsigned char code w8[2][16]={
0xFC,0x04,0x04,0x08,0x10,0x20,0x40,0x80,0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFC,0xFC,
0x3F,0x20,0x20,0x10,0x08,0x04,0x02,0x01,0x01,0x03,0x07,0x0F,0x1F,0x3F,0x3F,0x3F
 };


///****delay MS****/
void delay(unsigned int n)
{
  while(n--)
  {
    unsigned char i;
for(i=125;i>0;i--);
  }
}

//******查忙****///
void busy()
{
  p_di=0;
  p_rw=1;
  while(1)
  {
    p_e=1;
if(Data<0x80)break;
p_e=0;
  }
  p_e=0;
}

///*****初始化******///
void Init()
{
//开显示;
  p_di=0;
  p_rw=0;
  Data=0x3f;
  p_cs1=0;
  p_cs2=1;
  p_e=1;
  p_e=0;
  p_cs1=1;
  p_cs2=0;
  p_e=1;
  p_e=0;
//0行开始显示
  busy(); 

  p_cs1=0;
  p_cs2=1;
  Data=0xc0;
  p_e=1;
  p_e=0;
  p_cs1=1;
  p_cs2=0;
  p_e=1;
  p_e=0;
}

void setxy(unsigned char x,unsigned char y)
{  
  if(y<64)
  { 
  //***写行地址l**//
    busy();
    p_di=p_rw=p_cs1=0;
    p_cs2=1;
    Data=0xb8|x;
    p_e=1;
    p_e=0;
///***写列地址l**//
    busy();  
    p_di=p_rw=p_cs1=0;
    p_cs2=1;
    Data=0x40|y;
    p_e=1;
    p_e=0;
  }
  else
  { 
  //***写行地址r**//
    busy();
p_di=p_rw=p_cs2=0;
p_cs1=1;
Data = 0xb8|x;
p_e=1;
p_e=0;
///***写列地址r**//
    busy();  
    p_di=p_rw=p_cs2=0;
    p_cs1=1;
    Data=0x40|y;
    p_e=1;
    p_e=0;
  }

}
//****写数据****//
void whitedata(unsigned char x,unsigned char y)
{
  busy();
  setxy(x,y);//set x,y address address  
  if(y<64)
  {
    p_rw=p_cs1=0;
    p_cs2=1;    
  }
  else
  {
    p_rw=p_cs2=0;
p_cs1=0;
  }
  p_di=1;
  Data=0x00;
  p_e=1;
  p_e=0;
}

///******* 显示字******///
void whiteword(unsigned char x,unsigned char y,unsigned char d[2][16])
{
  unsigned char i,j;
  for(i=0;i<2;i++)
     for(j=0;j<16;j++)
 {
   busy();
   setxy(i+x,j+y);
   if(y<64)
   {
     p_rw=p_cs1=0;
     p_di=1;
     p_cs2=1;
   }
   else
   {
     p_rw=p_cs2=0;
 p_di=1;
 p_cs1=1;
   }
   Data=d[i][j];
   p_e=1;
   p_e=0;
 }  
}

///****清屏***//
void clear()
{
  unsigned char i,j;
  for(i=0;i<8;i++)
    for(j=0;j<128;j++)
    whitedata(i,j);
}
///***主函数****///
void main(void)
{ 
  unsigned char z;
  Init();
 while(1)
  {
    clear();
    busy();
    whiteword(0,0,ee);//南
    whiteword(0,16,ff);//京
    whiteword(0,32,aa);//绝
    whiteword(0,48,bb);//妙
    whiteword(0,64,cc);//科
    whiteword(0,80,dd);//技
    whiteword(0,96,gg);//发
    whiteword(0,112,hh);//展
    whiteword(2,0,ii); //有
    whiteword(2,16,jj); //限
    whiteword(2,32,kk); //公
    whiteword(2,48,ll); //司
    whiteword(2,64,k);  //句号
    whiteword(2,80,mm); //专
    whiteword(2,96,nn); //业
    whiteword(2,112,oo);//液
    whiteword(4,0,pp);  //晶
    whiteword(4,16,qq); //屏
    whiteword(4,32,dd); //技
    whiteword(4,48,rr); //术
    whiteword(4,64,k); //句号
    whiteword(4,80,ss); //欢
    whiteword(4,96,tt); //迎
    whiteword(4,112,uu); //使
    whiteword(6,0,vv);   //用
    whiteword(6,16,k);  //句号
for(z=0;z<2;z++)
{
  whiteword(6,64,w1);
  delay(150); 
  whiteword(6,64,w2);
  delay(150);  
  whiteword(6,64,w3);
  delay(150);  
  whiteword(6,64,w4);
  delay(150);  
  whiteword(6,64,w5);
  delay(150);  
  whiteword(6,64,w6);
  delay(150);  
  whiteword(6,64,w7);
  delay(150);  
  whiteword(6,64,w8);
  delay(150);   
}
clear();
///**第二屏**/
    busy();
    whiteword(0,0,ww);//地
    whiteword(0,16,xx);//址
    whiteword(0,32,j); //:
    whiteword(0,48,yy);//中
    whiteword(0,64,zz);//山
    whiteword(0,80,a);//东
    whiteword(0,96,b);//路
    whiteword(2,0,l); //11
    whiteword(2,16,m); //0
    whiteword(2,32,c); //号
    whiteword(2,48,d); //二
    whiteword(2,64,e);  //楼
    whiteword(2,80,n); //23
    whiteword(2,96,c); //号
    whiteword(2,112,k);//句号
    whiteword(4,0,f);  //电
    whiteword(4,16,g); //话
    whiteword(4,32,o); //02
    whiteword(4,48,p); //5-
    whiteword(4,64,q); //84
    whiteword(4,80,r); //53
    whiteword(4,96,s); //28
    whiteword(4,112,t); //68
    whiteword(6,0,h);   //传
    whiteword(6,16,i);  //真
    whiteword(6,32,o); //02
    whiteword(6,48,p); //5-
    whiteword(6,64,q); //84
    whiteword(6,80,u); //41
    whiteword(6,96,n); //23
    whiteword(6,112,v); //46
delay(2000);
  }
}

⌨️ 快捷键说明

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