怎么在液晶点阵上显示中文字符

如何在液晶点阵上显示中文字符
     比如有 uchar table[]="汉字";我们直接向12864液晶写入时,它能够识别并且正确地显示出来。然后我想对于不带字符的液晶,自己建立一个字库,也能像上面一样能够识别并且显示。但是我不知道如何能辨别汉字字符,哪位大神能指导一下?
------解决方案--------------------
不是有取模软件可以吗
------解决方案--------------------
对不带字库的显示屏,如果在单片机里建立一个完整的字库不太显示,存储空间会不够的.
一般都是把需要用的字用取模软件提取出 uchar char_wo[]={....};
当然你必须知道怎样在显示屏上显示任意一个点出来
------解决方案--------------------
void disp_str(unsigned char const *p,FNT_GB16 const *font_GB,uint32_t length) 

while(*p>0) 

if(*p < 128)

disp_char(*p++); /* ASCII */
    }
else 
{
disp_hz(p++, font_GB,length); /* ÖÐÎÄ */
p++;
    } 
  } 

------解决方案--------------------
这个要小心,要先把写入的汉字字符串保存为数组,然后for循环将每个汉字单独写入。不知道是不是这个问题,前两天我也遇到一个,没来准备直接把汉字像字符一样写入的,结果发现不行,,
------解决方案--------------------
是这样的:

1 对于有字库的环境,你的字符数组在编译时得到的实际上是所谓 ASCII 码。显示时,硬件后台实际需要下列步骤:
a.  将字符编码转换为对应字符点阵的字库中的地址;
b.  读取点阵,逐列传给液晶控制器。

2 对于没有字库的硬件环境,如果需要显示的字符集很小,可以采用写成硬编码的“软字库”。

一种是将需要的词组分别写出表示其点阵的数组,也是 char 型,但内容不是字符本身,而是代表点阵的十六进制码。这种方法,在显示时,向液晶控制器送地址后,直接发送词组的点阵数据。

第二种是写一个小字库,里面是一些单字的点阵数据。另外做一个表,里面有 ASCII 码对应的单字在库中的地址偏移。这种情况下,你依然可以使用你原来的 uchar table[]="汉字";。显示时,先通过查表逐个字符转换地址,读取点阵,再发送到控制器。既可以查到一个传一个,也可以读到缓存中一次发出。对于表中不存在的字符,我的做法是显示 Null 字符,即点阵全为 0 的空白“字符”。
------解决方案--------------------
   可以使用Da Vinci LCD软件工具,专门设计点阵LCD的画面的。下载:(http://www.shzldz.com/down/class/?2.html)。