登录
首页 单片机论坛
回帖 发帖
正文

主题:单片机驱动新型带中文字库320240点阵液晶显示屏

点击:6939 回复:10

大家好,第一次在本论坛发帖,本帖主要介绍一款内建中文字库的液晶模块,此模块是由深圳市卓立恩科技公司研发的新型液晶,主控芯片是RA8806,此芯片功能十分强大,不仅自带中文字库,还自带电阻式触摸驱动功能,非常适合广大单片机爱好者学习编程,废话不多说,现在来介绍这款液晶显示屏的点亮.
  芯片资料见附件(只有英文的),首先我们应该知道怎么样去看液晶驱动IC的资料,重点在哪里?我的经验是1.读写时序,这个要小心,一般液晶控制芯片的时序分为8080,6800,根据规格书写出读写子程序,我们在写液晶程序时有时候没有显示,程序检查半天发现是读写子程序错误.2.数据和命令指令写入规则.3.显示存储器的写入规则.4.指令内容和作用,要点亮屏一般只要用到几个关键的指令就好了.
  下面是引脚定义[/p]
    sbit cs1=P2^3; 片选信号,低电平选中有效
    sbit rs=P2^0;  命令和数据选择信号,低写入的为数据,高写如的是指令
    sbit wr=P2^1;  写信号
    sbit rd=P2^2;  读信号
    sbit busy=P2^4; 忙信号
    sbit rst=P2^5;  复位信号
    #define BUS P1 数据口P1作为数据输入口
    首先看读写子程序,8806的指令写入规则是先将指令寄存器REG#写入,例如:我们现在要对WCLR寄存器操作,那么我们就得首先将00H(REG#)写入,然后将数据写入
    void LCD_CmdWrite(unsigned char cmdaddr)//8080
{        cs1=0;
       rd=1;
       rs=1;
       BUS=cmdaddr;
       wr=0;
       wr=1;
       cs1=1; /8080时序
}
将REG#值写入程序
void LCD_DataWrite(unsigned char wrdata)
{      while(busy==0);
       cs1=0;
       rd=1;
       rs=0;
       BUS=wrdata;
       wr=0;
       wr=1;
       cs1=1;
}
数据写入子程序
假设我们对WCLR设置00H的初值,则:
   LCD_CmdWrite(WLCR);        //[00H] , Default --> 0x00
   LCD_DataWrite(0x00);    
即可.
void lcd_inital()
{
   LCD_CmdWrite(WLCR);        //[00H] , Default --> 0x00
   LCD_DataWrite(0x00);    
   LCD_CmdWrite(MISC);        //[01H] , Default --> 0x00
   LCD_DataWrite(0x08);
   LCD_CmdWrite(ADSR);        //[03H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(INTR);        //[0FH] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(WCCR);        //[10H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(CHWI);        //[11H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(MAMR);        //[12H] , Default --> 0x11
   LCD_DataWrite(0x11);
   LCD_CmdWrite(AWRR);        //[20H] , Default --> 0x27
   LCD_DataWrite(39);
   LCD_CmdWrite(DWWR);        //[21H] , Default --> 0x27
   LCD_DataWrite(39);
   LCD_CmdWrite(AWBR);        //[30H] , Default --> 0xEF    
   LCD_DataWrite(239);
   LCD_CmdWrite(DWHR);        //[31H] , Default --> 0xEF
   LCD_DataWrite(239);
   LCD_CmdWrite(AWLR);        //[40H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(AWTR);        //[50H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(CURX);        //[60H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(BGSG);        //[61H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(EDSG);        //[62H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(CURY);        //[70H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(BGCM);        //[71H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(EDCM);        //[72H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(BTMR);        //[80H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(ITCR);        //[90H] , Default --> 0x00    需要调整
   LCD_DataWrite(0x80);
   LCD_CmdWrite(PNTR);        //[E0H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(FNCR);        //[F0H] , Default --> 0x00
   LCD_DataWrite(0x00);
   LCD_CmdWrite(FVHT);        //[F1H] , Default --> 0x00
   LCD_DataWrite(0x00);
}
  初始化程序,大家可以参考芯片的规格书理解
显示汉字子程序:
void display_word(unsigned char code *cha, int count )
{
   unsigned int iiii=0;
   LCD_CmdWrite(0x00);  
   LCD_DataWrite(0x0c); /文字模式开
   LCD_CmdWrite(0x60);
   LCD_DataWrite(0x00); /设置x光标的位置
   LCD_CmdWrite(0x70);  
   LCD_DataWrite(0x00);  /设置y光标的位置
   LCD_CmdWrite(0xb0); /写数据模式
     for(iiii=0;iiii      {
         LCD_DataWrite(*cha);  
             ++cha;
               delay_nms(1);
           }  
}
附件是显示中文程序,ra8806规格书太大传不上去,需要的留下邮箱吧
我的邮箱:xuleif1984@yahoo.com.cn
QQ:44946295表情
附件:
[本地下载]
09-11-19 13:07
自己先顶一下
09-11-19 13:09
液晶显示多得去了,你这个有何特点,可显示几行,每行几个汉字或字母,尺寸,性价比如何,这是首先要介绍的。否则那么多信息谁来深入了解这个呀
09-11-19 21:56
楼上的朋友说得有道理,下面是对这款液晶的介绍,性价比的话,我认为还是不错的,谢谢楼上的朋友!!
320x240D 中文字库点阵绘图液晶显示模块是由控制器RA8806与驱动SDN8080G组成的微功耗CMOS电路,主要功能:
1:支持文字与图形混合显示
2:支持4/8Bits的6800/8080 MPU接口
3:支持水平与垂直区域卷动
4:支持简体/繁体字库,完全符合ASCII码
5:支持文字180度旋转,文字1倍到4倍放大功能
6:512位创字内存(CGRAM)
7:自带电阻式触摸驱动功能
8:支持文字行与行之间的距离设置
9: 支持低电压(3.3V)驱动
09-11-19 23:27
我认为这款液晶屏的主要优势是1.内建中文字库,用户显示汉字非常简单而且灵活,图形文字混排也很简单
2.内部有电阻式触摸驱动功能 3.支持低电压驱动,适合ARM,MSP430低功耗单片机驱动 但是有些功能我觉得不太实用,比如行列键盘功能
09-11-20 00:01
有图片吗 。、
09-11-22 23:59
有图片啊,之前不知道怎么上传,现在补上
附件
附件
附件
09-11-26 17:17
附件
附件
09-11-26 17:19
附件
附件
09-11-26 17:21
给自己再定
09-12-01 14:22

上一页下一页

工控新闻

更多新闻资讯