论文部分内容阅读
摘要:真空荧光显示屏点阵显示模块GU160X32-800B,显示点阵为160*32点,可显示字符、汉字和图形。具有使用方便、亮度高且可以调节。文章介绍GU160X32-800B的基本原理,探讨硬件设计和软件编程方法。
关键词:真空荧光显示屏;VFD模块;点阵式显示
中图分类号:TP211文献标识码:A文章编号:1006-8937(2009)10-0077-02
VFD模块选用日本NORITAKE ITRON公司的点阵显示模块GU160X32-800B。显示点阵为160*32点,可显示字符、汉字和图形。电源方便,只需要+5V电源就可以正常工作。
1模块原理
整个显示屏由5120个点按照160*32排列,被划分为64个大小显示区域。每个显示区域可通过显示区域设置命令分配相应的GRAM(图形显示模式)和DDRAM(字符模式)存储区。但是此版本的模块没有字符ROM,因此DDRAM为无效。所有的显示区域在初始化时必须设置为GRAM。
图形显示(GRAM)结构,GRAM由16384位构成,并分成256*64大小的区域,在垂直方向显示为8位。结构如图1所示。
本模块有两个显示层,0层和1层,每个层有256*32个点阵构成,并利用显示开关命令可以组合显示层。0层的256*32个点阵的起始地址是从GRAM的起始位置开始,1层是剩下地址。
2硬件电路图
接口控制使用方便,有口串口控制和两个并口控制,为了提高数据传输速率,我们选择使用并口进行数据传输。并口1的控制接口如表1所示。
3汉字显示编程
为了在VFD上显示汉字,根据GRAM的结构图,对汉字的点阵取码如图2所示。先从上向下取8位,再从左至右取第二列中的8位数据,以此进行取值,将第一行(8位构成)取完后取第二行(8位),直到取完所有点为此。
VFD显示数据的程序如下:
void displayonvfd(uchar lenth,hight, number,uchar font[])
{
uchar idata i,k,j=0;
for(k=0;k {
for(j=0;j {
for(i=0;i {
set_position();
gu800_send(VFDDATA,font[(k*lenth*hight/8)+j*lenth+i]);
}
xpos-=lenth;
ypos+=8;
}
xpos+=lenth;
ypos-=hight;
}
}
xpos、ypos分别是显示点的X坐标和Y坐标值,set_position()函数是设置座标函数,座标值就是xpos、ypos的值。gu800_send(uchar cd,uchar senddata)是发送数据或者是发送命令的函数。实现如下:
void gu800_send(uchar cd,uchar senddata){
//send the data to the VFD module.
gu_cs=0;// enable module
if (cd==1)
gu_cd=1; //send command
else
gu_cd=0;//send data
gu_bus=senddata;
gu_wr=0;
delayms(5);
gu_wr=1;
}
4结 语
通过以上的方法之后,可以静态显示汉字、图形,也可以动态显示。同时亮度可灵活控制。用于显示系统设计方便、灵活、简单,是一款性价比较高的VFD显示模块。
参考文献:
[1] 阮世平.高性能真空荧光显示器(VFD)开发和应用[J].光电子技术, 2005,(4).
[2] 张卜南,陈德荣.VFD GU384x32L-3900模块特性及应用[J].微处理机,2006,27(6).
[3] 成聪,汪道辉.基于CPLD的VFD显示和键盘扫描设计[J].机械工程与自动化,2006,(1).
[4] 谢新刚,金鑫.三星128S64A VFD显示模块在仪器仪表中的应用[J].电子工程师,2007,33(8).
关键词:真空荧光显示屏;VFD模块;点阵式显示
中图分类号:TP211文献标识码:A文章编号:1006-8937(2009)10-0077-02
VFD模块选用日本NORITAKE ITRON公司的点阵显示模块GU160X32-800B。显示点阵为160*32点,可显示字符、汉字和图形。电源方便,只需要+5V电源就可以正常工作。
1模块原理
整个显示屏由5120个点按照160*32排列,被划分为64个大小显示区域。每个显示区域可通过显示区域设置命令分配相应的GRAM(图形显示模式)和DDRAM(字符模式)存储区。但是此版本的模块没有字符ROM,因此DDRAM为无效。所有的显示区域在初始化时必须设置为GRAM。
图形显示(GRAM)结构,GRAM由16384位构成,并分成256*64大小的区域,在垂直方向显示为8位。结构如图1所示。
本模块有两个显示层,0层和1层,每个层有256*32个点阵构成,并利用显示开关命令可以组合显示层。0层的256*32个点阵的起始地址是从GRAM的起始位置开始,1层是剩下地址。
2硬件电路图
接口控制使用方便,有口串口控制和两个并口控制,为了提高数据传输速率,我们选择使用并口进行数据传输。并口1的控制接口如表1所示。
3汉字显示编程
为了在VFD上显示汉字,根据GRAM的结构图,对汉字的点阵取码如图2所示。先从上向下取8位,再从左至右取第二列中的8位数据,以此进行取值,将第一行(8位构成)取完后取第二行(8位),直到取完所有点为此。
VFD显示数据的程序如下:
void displayonvfd(uchar lenth,hight, number,uchar font[])
{
uchar idata i,k,j=0;
for(k=0;k
for(j=0;j
for(i=0;i
set_position();
gu800_send(VFDDATA,font[(k*lenth*hight/8)+j*lenth+i]);
}
xpos-=lenth;
ypos+=8;
}
xpos+=lenth;
ypos-=hight;
}
}
xpos、ypos分别是显示点的X坐标和Y坐标值,set_position()函数是设置座标函数,座标值就是xpos、ypos的值。gu800_send(uchar cd,uchar senddata)是发送数据或者是发送命令的函数。实现如下:
void gu800_send(uchar cd,uchar senddata){
//send the data to the VFD module.
gu_cs=0;// enable module
if (cd==1)
gu_cd=1; //send command
else
gu_cd=0;//send data
gu_bus=senddata;
gu_wr=0;
delayms(5);
gu_wr=1;
}
4结 语
通过以上的方法之后,可以静态显示汉字、图形,也可以动态显示。同时亮度可灵活控制。用于显示系统设计方便、灵活、简单,是一款性价比较高的VFD显示模块。
参考文献:
[1] 阮世平.高性能真空荧光显示器(VFD)开发和应用[J].光电子技术, 2005,(4).
[2] 张卜南,陈德荣.VFD GU384x32L-3900模块特性及应用[J].微处理机,2006,27(6).
[3] 成聪,汪道辉.基于CPLD的VFD显示和键盘扫描设计[J].机械工程与自动化,2006,(1).
[4] 谢新刚,金鑫.三星128S64A VFD显示模块在仪器仪表中的应用[J].电子工程师,2007,33(8).