随着电子技术的发展,液晶显示器(LCD)在这些系统中将得到应用,随着图形液晶显示屏的推出,基于单片机设计的智能仪器和仪表的显示方式有了很大的改观,可以借助于显示屏显示汉字,给操作者以极大的方便和必要信息提示;同时可以设计菜单,改善智能仪器的人机界面,简化操作步骤。
1MGL(S)-204128简介及其与单片机的接口
1.1MGL(S)-204128E和驱动电路的简介
MGL(S)-240128E是香港精电公司生产的点阵图形式液晶模块,其点阵数量为240×128,点阵尺寸是0.27mm;液晶屏在外部显示控制器的控制下,可显示8×8,8×16,16×16等点阵的字符和汉字,显示字符为黑色,背景为金黄色,同时还可以显示图形,是智能仪器仪表的一种理想的显示器件,由于MGL(S)-240128液晶显示模块内部没有显示控制器和显示缓冲RAM,要完成显示必须外接显示控制器和显示缓冲RAM;在此处选择的是由SED1335芯片[1]组成的控制板作为MGL(S)-240128单片机之间的接口,完成显示控制功能。SED1335是日本SEIKOEPSON公司出品的液晶显示控制器,他在同类产品中是功能最强的。其特点:有较强功能的I/O缓冲器;指令功能丰富;4位数据并行发送,最大驱动能力为640×256点阵。SED1335硬件结构可分为MPU接口部、内部控制部和驱动LCM的驱动部:接口部具有较强的I/O缓冲器,CPU访问SED1335不需判断其忙,SED1335随时准备接收CPU的访问并在内部时序下及时把CPU发来的指令、数据传输就位,控制部由振荡器、功能逻辑电路、显示RAM管理电路、字符库及其管理电路以及产生驱动时序的时序发生器组成。控制部可管理64k显示RAM,管理内藏的字符发生器及外扩的字符发生器CGRAM或EXCGROM。驱动部具有各显示区的合成显示能力,传输数据的组织功能及产生液晶显示模块所需要的时序。
1.2单片机与SEED1335的接口
单片机8031与MGL(S)-240128E的接口电路如图1所示,在图1中,将8031的,P20,D0-D7端与SED1335的W,A0,D0-D7端相连,将求反以后接P2.7,因此SED1335的地址范围是0000H~8000H。
1.3SED1335的电压要求
SED1335的模块在正常工作时需要的电压有:电源电压VCC=+5V,LCD驱动电压VEE为-20V左右以及背景光显示电压,本系统采用了2个WRP系列宽电压输入隔离稳压输出型DC/DC模块,其一是双输出型WRB2424,为SED1335提供-24V电压,另一个是是单输出型略)。
2力矩限制器的硬件设计
力矩限制器是起重机的保护仪器,其检测的物理量有主钩与副钩的起重载荷和起升高度,主臂与副臂(塔臂)的起重力矩和起升角度、工作幅度、钢丝绳状况、风速(力)大小、起重过程中载荷振动情况以及下车的各种信息(如变幅油缸压力、液压传动系统的压力、温度、发动机转速参数、油温)等。安全监控系统的显示部分要求实时显示主钩和副钩的作业力矩百分比、实际载荷、主臂仰角、实际起吊高度以及作业幅度等参数。采用MGL(S)240128E的力矩限制器硬件框图如图2所示。由于显示器件可以显示字符、汉字和图形,因此利用软件的设计可以根据用户需要设计菜单,进行多项选择和有关参数的设置与调整;在正常工作状态,可以以图形形式显示工作参数或根据检测数据实时绘出起重机的动态模拟图。
3软件设计部分
3.1SED1335初始化
SED1335有13条指令,多数指令带有参数。其中的系统控制参数,要根据显示模块的特点和显示要求,在液晶第一次初始化的时候设置这些系统控制参数,初始化程序在系统初始化程序中使用一次即可。显示操作参数规定了显示的各种具体规则,通过设置,可以得到想要的显示效果。A0=1,为CPU向LCD写指令代码和读数据,指令代码写入输入缓冲器内,指令的参数随后通过数据缓冲器(A0=0)写入。指令的执行,发生在这条指令的参数输入完成之后。所写的参数顺序不能改变,也不能省略。
3.2汉字显示程序设计
汉字的显示必须先从有关的字库中提取汉字的字模,其方法是根据汉字的区位码计算出在汉字库中的首地址,对于点阵汉字来说,汉字字模的字节数是固定的,大多数字库文件都不进行压缩,采用顺序存储方式。所以从汉字的机内码(HZ)可以推出该汉字的区位码:区码=HZ/256-A0H、位码=HZ%256-A0H。然后,根据下面的公式,就可以找出该汉字在汉字库中的位置(Offset):
Offset=[(区码-1)×94+(位码-1)]×32
这样,从汉字库中就可以读出该汉字的32B的字模。用C语言设计显示程序时,根据点阵显示屏控制器的特点,为使编程简单,把汉字分为左右两部分,先对左边部分从第1行到16行进行显示操作,然后再对右边进行同样操作。因此首先要进行数据顺序的转换,即把点阵顺序由横向排列改为纵向排列。
3.3绘图软件的设计
为了模拟起重机的主臂位置,图形的绘制是必须的,根据控制特点,其绘图是由“点”构成的,直线的绘制如下:首先确定直线的数学方程然后根据数学方程确定直线的起始点坐标以及直线的斜率,用改进的数字积分插补法对直线进行绘制;具体的步骤如下:
(1)在一次插补计算时不管坐标是否有进给,并不输出执行。
(2)单一方向有进给时,不执行操作。
(3)当两个方向都有进给时,沿斜线方向两个方向同时进给。
(4)当一个方向累计有两次进给时,执行一个保留一个。
曲线的绘制同上[2]。经调试,显示速度很快,完全达到即时显示的要求。
3.4力矩限制器软件设计
力矩限制器软件包含由主程序和若干子程序及中断服务程序组成,做一简要介绍。SED1335有数据和图形两种方式显示,在这里考虑到降低编程的复杂性以及提高程序的可读性,只采用图形方式显示。
由于在显示时,需要定时更新显示的是有关数据和图形,而边框和有关说明不必要重新显示(节省微机时间,加快显示速度);设定标志位表示已经在该方式下,并且编制如下子程序:显示数据方式的底图(边框和汉字)子程序、更新数据子程序、显示图形方式的底图子程序、更新图形及数据子程序。
4结语
由于点阵液晶屏对电压要求较严格,本文设计的大屏幕液晶显示力矩限制器在硬件电路、电源及软件部分均采取了抗干扰措施,通过使用证明该方案是可行的。他具有如下优点:提高了人机界面的友好性。此外,他可以处于休眠工作状态,显示工作方式灵活,并且具有体积小、重量轻、价格低的优点。本文介绍的方法同样适用于其他智能仪器,具有较好的使用价值且已获得良好的效果,其显示方式和汉字提示给使用者极大的方便,得到了用户的好评。