新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 51单片机驱动1602液晶显示器c程序

51单片机驱动1602液晶显示器c程序

作者:时间:2012-11-24来源:网络收藏
/*
程序效果:单片机控制液晶1602显示字母数字,用户自行更改io
程序版权:http://www.51hei.com
*/
#includereg52.h> //头文件
#define uchar unsigned char //宏定义
#define uint unsigned int
uchar code table[]="51HEI XING XING " ; //显示的字母
uchar code table1[]="51HEI MCUXUE YUAU" ;
sbit lcdrs=P1^0; //寄存器选择引脚
sbit lcdwr=P1^1; //读写引脚
sbit lcde=P1^2; //片选引脚
void delay(uchar x) //延时子函数
{
  uchar i,j;
  for(i=x;i>0;i--)
    for(j=110;j>0;j--);
}
void write_com(uchar com) //写指令子函数
{           //根据协议编写
  P2=com;
   lcdrs=0;
  lcdwr=0;
  delay(5);
  lcde=0;
  delay(5);
  lcde=1;
}
void write_dat(uchar dat) //写数据子函数
{
  P2=dat;
  lcdrs=1;
  lcdwr=0;
  delay(5);
  lcde=0;
  delay(5);
  lcde=1;
}
void init() //初始化子函数
{
  write_com(0x01); //清屏
  write_com(0x3f); //功能设置
  write_com(0x0d); //显示控制
  write_com(0x06); //输入方式设置
}
void main()
{
  uchar i; //定义局部变量
  init();
  write_com(0x80+0x02+0x10); //指针的位置
  for(i=0;i15;i++) //显示
  {
    write_dat(table[i]);
    delay(50); //延时,用于调节速度不匹配
  }
  write_com(0x80+0x40+0x10);
  for(i=0;i16;i++)
  {
    write_dat(table1[i]);
    delay(50);
  }
  for(i=0;i16;i++)
  {
    write_com(0x18);
    delay(50);
  }
  while(1);
}

51单片机相关文章:51单片机教程


c语言相关文章:c语言教程


单片机相关文章:单片机教程


单片机相关文章:单片机视频教程


单片机相关文章:单片机工作原理


led显示器相关文章:led显示器原理


调光开关相关文章:调光开关原理


评论


相关推荐

技术专区

关闭