单片机
返回首页

LCD12864液晶基本程序

2012-09-15 来源:51hei

#include
#include
#define uchar unsingned char
#define uint unsigned int
sbit rs=P2^4;
sbit rw=P2^5;
sbit e=P2^6;
sbit psb=P2^7;
uchar table[]="20100419";
write_12864com(uchar com);
write_12864dat(uchar dat);
void initinal(void);
void display1(void);
void display2(void);
void display3(void);


void delay50us(uint t)//延时函数
{ uint j;
  for(;t>0;t--)
  for(j=6245;j>0;j--);


}
void main()
{
  initnal();
  while(1)
  {
   display1();
   display2();
   while(1);
  }
}

write_12864com(uchar com)  //写程序函数
{
   rw=0;
   rs=0; //表明写程序
   delay_50us(1);
   P0=com;
   delay_50us(10);
   E=0;
   delay_50us(2);


}
write_12864dat(uchar dat)  //写数据函数
{
   rw=0;
   rs=1;//表明写数据
   delay_50us(1);
   P0=dat;
   delay_50us(10);
   E=0;
   delay_50us(2);

}

void initinal(void) //初始化函数
{   delay_50us(1);//等待100毫秒
    write_2864com(0x30);
delay_50us(4);
write_2864com(0x30);
delay_50us(4);
   write_2864com(0x0f);
delay_50us(4);
  write_2864com(0x01);//清平显示
delay_50us(240);
  write_2864com(0x06);
delay_50us(10);




}
void display1(void)//显示码
{ uchar a, i;
  write_12864com(0x80); //写地址
  delay_50us(1);
  for(i=0;i<16:i++)
   {
    write_12864dat(a); //写数据
     delay_50us(1);
   a++;
   }


}
void display2(void)//显示汉字
{ uchar a,b,i;
  write_12864com(0xBA); //写地址
  write_12864com(0xC0);
  delay_50us(1);
  for(i=0;i<16:i++)
   {
    write_12864dat(a);
     write_12864dat(b); //写数据
     delay_50us(1);
   b++;
  
   }


}

void display3(void)//更简单的显示函数
{ uchar i;
  write_12864com(0x80); //写地址
  for(i=0;i<16:i++)
   {
    write_12864dat(table[i]);
    
     delay_50us(1);
   i++;
  
   }


}
进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 光控音效发生器电路

  • 基于IC555的可变PWM振荡器电路

  • 如何使用LED驱动器LM3915制作振动计

  • 一个简单的立体声平衡指示器电路

  • 电谐波图形均衡器示意图

  • 一种构建12V和230V双直流电源的简单方法

    相关电子头条文章