来源:网络转载更新时间:2019-12-02 09:24:17点击次数:4239次
本文针对工业称重仪表,设计一种人机交互界面.该仪表界面采用真空荧光显示屏(VFD)专用控制/驱动芯片CS16312,集成了VFD显示控制、按键控制、LED显示控制等功能,有效地节省了单片机的接口资源,简化了电路的设计.实验测试表明:该界面具有显示稳定可靠、抗干扰能力强、人机界面友好、操作简单方便等性能.具有良好的应用推广价值.
人机交互面板是工业称重仪表的一个重要部件,用户所有的控制指令都是通过它传到微控制器进行处理.同时工业称重仪表在工作的过程中有许多重要的信息要通过显示面板上的显示器显示出来.
仪器仪表的显示屏以往常采用LED数码管.LED因其元器件多,面积大,功耗高,接口电路复杂,集成度低,显示信息简单等缺点,逐渐被液晶显示屏LCD和真空荧光显示屏VFD所代替[1].
真空荧光显示屏(Vacuumfluorescentdisplay,VFD)是一种特殊变体的三级真空管,其电子从负极(灯丝)发射出来,通过栅网加速后撞击正极表面附着的磷光体从而发光.VFD的主要性能是:自动发光、高清晰度和高亮度显示、低压操作、低功耗、可靠且使用寿命长、有从红色到蓝色多种色彩(使用滤色器可获得更多色彩)、宽视角、反应速度快等[2].
考虑到成本、显示亮度及工业称重仪表的工作环境等因素,最终采用7位段码VFD和16位537点阵VFD作为该称重显示仪表的显示屏.其中7段码VFD用来实时显示称重的数值,由一片CS16312芯片驱动;537点阵VFD可以显示的信息比较丰富,用来显示称重仪表的系统设置等相关的辅助信息,由3片CS16311芯片驱动.本文以CS16312为例对人机交互系统的软硬件设计及其在工业称重仪表中的应用做详细的论述.
本电路采用微控制器AT89C52和VFD驱动电
路16312构架.通过VFD显示、按键和LED标识构成工业仪表的人机界面.
1.1 电源电路
电源采用工业市电经变压器降压和整流后产生灯丝电压(F1,F2)、CS16312的下拉电压VEE(-24V)和电压VDD(+5V).
为了让阴极加热到设定的温度值,以获得良好的热电子发射,需要对灯丝通电加热,灯丝电压(Ef)的施加方法有交流驱动和直流驱动两种工作方式.其中直流驱动由于灯丝加热电压在灯丝上有一个电位分布,存在左高右低的梯度.亮度也就同样会产生右高左低的现象.为了获得均匀的亮度,必须对荧光显示屏的栅极和灯丝间的实际距离进行设计补偿.由于设计补偿的范围是有限的,故直流驱动,一般只限于灯丝较短的荧光显示屏.交流驱动有单侧接地和中心抽头接地两种方法.灯丝单端接地的方式所需的截止偏压,比灯丝变压器中心抽头接地方式更大.故本电路采用带有中心抽头的交流驱动工作方式[3].
在阳极、栅极上相对灯丝电位加上正电压,笔段就会被点亮.若要完全消除显示,必须使阳极或栅极的任何一方相对灯丝为零电位或更负的电位.消除显示的电压称为截止电压,为了完全消除漏光,必须施加截止偏压.CS16312采用负压输出,阳栅脚在逻辑0时输出负压,在逻辑1时输出电平为0V.为驱动VFD,须下拉灯丝绕组中心抽头电位.稳压管D1的稳压值由VFD截止电压决定.
灯丝电压值的设定,对保证显示品质及寿命有重要的影响.如果灯丝电压过高,电流或亮度并不随之增加,反而因阴极温度上升,而加速钨丝芯线上氧化物的蒸发,同时也会污染荧光粉表面,使发光效率及亮度提早下降,而缩短寿命.相反,如果灯丝电压过低,因阴极温度下降,便无法获得充分而稳定的热电子发射,致使显示品质劣化或灯丝电压变动而使亮度不稳定.参照VFD规格说明书,通过多次的测试,设定F1和F2两端的灯丝电压值为3.3V[4].
1.2 VFD与LED控制电路
AT89C52通过三线与CS16312通信.P1.0用于数据输入,与DIN相连.P1.1用于数据输出,与DOUT相连.P1.2产生串行时钟信号CLK.P1.3与CS16312的STB连,产生数据/命令识别信号.因DOUT口为N沟道开漏输出,故需接上拉电阻R1,以形成数据电平信号.CS16312内建OSC,R2决定其振荡频率,其典型值为56K.CS16312的7根GRID线分别接到VFD的栅极(grid)G1~G7,13根SEG线与VFD的阳极(anode)P1~P13相连.动态扫描显示由CS16312内建硬件电路自动完成.GRID线循环输出栅极扫描信号,SEG线输出取之内部显示RAM区与之对应的显示信号①.
CS16312有4个LED输出口,本系统用LED1作为电源开关的指示灯,LED2,LED3,LED4作为称重状态指示灯.当向某一端口写0时,与之对应的LED灯将被点灯;写1时,相应的灯将熄灭.
1.3 称重仪表按键电路
CS16312的KEY线与SK线组成键盘.二极管用于隔离阳极驱动电压.内嵌硬件键扫描电路在KS线输出键扫描信号,KEY线接收键值(在显示周期的末端锁存至内部RAM).本系统中的键盘电
路共有20个接键,每个键的数据通过一个命令读出,读取顺序从最低位开始
2.1 软件流程
CS16312控制仪表的控制流程,其对应着VFD显示、LED控制和按键扫描的程序流程.CS16311具有显示方式设置、数据读写方式设定、数据地址设定和显示控制等4条指令.MCU对CS16312的访问是通过这4条指令来执行的.MCU每次对驱动电路的访问时间是在STB信号的下降沿开始,STB的上升沿结束.在CLK信号的上升沿读入数据,一次访问只能传送一个命令字节或者一个命令字节加上多个数据字节,数据容量最多为22个字节.这些数据通过管脚DIN被存储在显示缓冲电路中,显示缓冲电路中输出的数据经过放大电路放大后从段/位驱动电路输出驱动VFD显示屏,或者直接在LED输出口输出驱动LED状态灯;通过管脚DOUT获取芯片中存储的按键和SW信号②.
2.2 编程实现[5]
以下函数实现了VFD称重显示器的显示、LED标识控制和按键扫描:部分代码及其说明如下:
1)函数VFDWriteOneByte(ucharbvalue)实现写一个字节的数据到CS16312.
Void VFDWriteOneByte (uchar bvalue)
{
uchar i ;
for (i = 0 ;i < 8 ;i + + )
{
CL K= 0 ;
/ 3 CL K控制传输,一个CL K周期为一个位的读写信号3 /
DIN = bvalue &(1 < < i) ;
CL K= 1 ;
}
}
2) 函数ShowMessageOnVFD( uchar 3 st r ,uchar
count) 将要显示的数字字符显示在VFD 上.
void ShowMessageOnVFD(uchar 3 st r ,uchar count)
{
STB = 1 ;STB = 0 ;
/ 3 设置显示模式为7 3 13 3 /
VfdWriteOneByte (VFD1_DISP_SET) ;
STB = 1 ;delay(10) ;STB = 0 ;
/ 3 设置数据读写方式为写数据到显示存储器中3 /
VfdWriteOneByte (WR_TO_MEM) ;
STB = 1 ;delay(10) ;STB = 0 ;
/ 3 设置显示存储器地址为自增量模式3 /
VfdWriteOneByte (ADDR_SET) ;
/ 3 写入要显示的字符信息3 /
STB = 1 ;delay (10) ;STB = 0 ;
/ 3 显示控制命令,显示通3 /
VfdWriteOneByte (DISP_ON) ;
STB = 1 ;
return ;
}
3) 函数L EDLight ( uchar num) 点亮相应的L ED
灯.
void L EDLight (uint num)
{
STB = 1 ;STB = 0 ;
/ 3 设置数据读写方式为写数据到L ED 端3 /
VfdWriteOneByteD2 (WR_TO_L ED) ;
/ 3 将L ED 的状态信息写入L ED 端3 /
VfdWriteOneByteD2 ( . . . ) ;
STB = 1 ;
return ;
}
4) 函数Get KeyValue (void) 获得键值.
uchar Get KeyValue (void)
{
STB = 1 ;STB = 0 ;
/ 3 设置数据读写方式为读键值3 /
VfdWriteOneByte (RD_KEY) ;
For (i = 0 ;i < MAXKEY;i + + )
{
CL K= 0 ;
If ( DOUT = = 1) return i ; / 3 返回按键的序号3 /
CL K= 1 ;
}
Return - 1 ; / 3 如果没有键值返回- 1 3 /
}
首先,测试VFD显示是否正常.测试方式:让数
字VFD分别显示1~7数字.测试结果:显示清晰明亮,背光与向光环境均能清晰显示.
其次,测试LED灯控制是否正常.测试方式:让LED灯逐一点亮并逐一熄灭,即走马灯程序.测试结果:LED灯亮度正常,关断自如.
最后,测试按键扫描是否正常.测试方式:将按键键值通过VFD显示出来.测试结果:按键键值能正确显示.按键防抖性强.
为了进一步验证这个VFD显示模块的优越性,已在实际工业称重仪表的开发中得到应用.
4 结束语
基于CS16312的VFD显示模块是一种性能价格比较高的真空荧光显示模块,该称重模块与单片机的接口简单.由于它可能显示各种字符,又能实现按键控制、LED显示控制等功能,人机接口友好,因此,在仪器仪表领城中得到广泛应用[6].
参考文献:
[1] 林福宗.VCD与DVD技术基础[M].北京:清华大学出版社,1995.
[2] 阮世平.真空荧光显示器应用的现状及发展[J].光电子技术,1995(6):103-108.
[3] 颜仍友,汪仁煌.VFD显示驱动和控制芯片TP6312在电磁炉显示电路中的应用[J].国外电子元器件,2005(2):14-17.
[4] 梁建辉,杨金岩.VFD控制器/驱动器μPD16312的原理与应用[J].国外电子元器件,2003(1):58-62.
[5] 徐爱钧,彭爱华.单片机高级语C51应用程序设计[M].北京:北京工业出版社,1999.
[6] 赵广萍,孙文萍,孙建军.电子称重技术现状及发展趋势[J].仪表技术与传感器,2007(7):76-77.
本文源于网络转载,如有侵权,请联系删除
×