点阵式液晶显示模块驱动程序.docxVIP

  • 5
  • 0
  • 约2.93千字
  • 约 10页
  • 2019-03-22 发布于安徽
  • 举报
为您提供专业的显示解决方案 点阵式液晶显示模块(LCD)广泛应用于单片机控制系统,比数码管、段式液晶能模块显示更多、更直观的信息,如汉字、曲线、图片等。点阵液晶显示模块集成度很高,一般都内置控制芯片、行驱动芯片和列驱动芯片,点阵数量较大的LCD还配置RAM芯片,带汉字库的LCD还内嵌汉字库芯片,有负压输出的LCD还设有负压驱动电路等。单片机读写LCD实际上就是对LCD的控制芯片进行读写命令和数据。编程驱动LCD时,不需要对LCD的结构和点阵行列驱动原理深入了解,只要理解LCD接口的定义和LCD的控制芯片的读写时序和命令就可以了。下面是分享的一部分的控制系统的编程。   i ncludereg52.h   sbit E=P3^4;//脉冲使能   sbit RW=P3^3;//读写选择   sbit RS=P3^2;//数据命令选择   // 延时ms函数:   void Delayms(unsigned int t)   {   unsigned int i,j;   for(i=t;i0;i--)   for(j=0;j120;j++);   }   // 1602检查状态函数:   void Check1602State(void)   {   P2=0xff;//赋P2口初始值   E=0;//读状态前三控制线的状态   RS=0;   RW=1;   E=1;//拉高,读状态   while((P20x80)==0x80);//判断是否繁忙,等待空闲   E=0;//读状态后三控制线的状态   RS=1;   RW=0;   }   // 1602写命令函数:   void Write1602Command( unsigned char com)   {   Check1602State();//检查状态   P2=com;//赋值   E=0;//写命令前三控制线的状态   RS=0;   RW=0;   E=1;//拉高,写命令   E=0;//写命令后三控制线的状态   RS=1;   RW=1;   }   //1602写数据函数:   void Write1602Data( unsigned char dat)   {   Check1602State();//检查状态   P2=dat;//赋值   E=0;//写数据前三控制线的状态   RS=1;   RW=0;   E=1;//拉高,写数据   E=0;//写数据后三控制线的状态   RS=0;   RW=1;   }   //在指定的位置显示一个数字(0-9)函数(用来显示变量的值):   void LCD1602DisplayOneNumber( unsigned char y,unsigned char x,unsigned char v)   //y-行数值0-3,x-列数值0-19,v-变量的一位数字0-9   {   unsigned char lineaddr;   switch(y)//根据行号选择行地址(对于1602,2002液晶只有两行)   {   case 0:lineaddr=0x80;break;//第一行首地址   case 1:lineaddr=0xc0;break;//第二行首地址   //case 2:lineaddr=0x94;break;//第三行首地址 (2004LCD才有)   //case 3:lineaddr=0xd4;break;//第四行首地址 (2004LCD才有)   default:;   }   Write1602Command(lineaddr+x);//写地址   Write1602Data(0x30+v);//先将数字化成ASCII码,再写入   }   //在指定的位置显示字符串函数:   void LCD1602DisplayString( unsigned char y,unsigned char x, unsigned char *pstr)   //y-行数值0-3,x-列数值0-19,pstr-字符串指针   { unsigned char lineaddr,n=0;   switch(y)//根据行号选择行地址(对于1602,2002液晶只有两行)   {   case 0:lineaddr=0x80;break;//第一行首地址   case 1:lineaddr=0xc0;break;//第二行首地址   //case 2:lineaddr=0x94;break;//第三行首地址 (2004LCD才有)   //case 3:lineaddr=0xd4;break;//第四行首地址 (2004LCD才有)   default:;   }   Write1602Comma

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档