产品搜索
嵌入式智能仪器中汉字输入与显示接口设计
作者:管理员    发布于:2018-04-12 14:07:05    文字:【】【】【

  嵌入式智能仪器中汉字输入与显示接口设计高美珍洪家平2(1.湖北师范学院物理与电子科学学院,湖北黄石435002;2.湖北师范学院计算机科学与技术学院,湖北黄石435002)文本的输入。给出了通用计算机键盘在智能仪表中的接口,同时也给出了以ST7920为控制器的带汉字字库的液晶显示模块的接口方法及原理。采用该方法可大大提高智能仪表的汉字输入与显示功能,为智能仪表提供了一种汉字输入与显示解决方案。

  0概述随着智能仪器仪表在我国使用的越来越普遍,智能仪表中要求使用汉字的情况也越来越多,这就涉及到智能仪表上汉字的输入与显示问题。由于智能仪表大多数是由8/16位的单片机组成,而这些单片机的I/O端口又非常有限,这就限制了智能仪器仪表系统中大量中文信息的输入。如果要较好地解决上面的问题种途径是通过设计一个通用PC机键盘与智能仪表系统中单片机的接口,通过这样个接口,就可以做到在智能仪器仪表中像在PC机一样,任意输入或显示需要的大量汉字信息。

  本系统采用通用PC机的PS/2键盘与51系列单片机AT89C52连接,使得通过PS/2键盘可以实现各种字符、数字的输入,还可以采用拼音或五笔等输入法实现汉字的输入,并能将对应的汉字在LED显示屏上显示输出。由于每一个汉字机内点阵码约占32字节,这样的话,常用汉字的点阵码要占约256K的空间,所以将点阵信息直接存储在容量小的AT89C52单片机中不太可能,如果使用带汉字字模的片外存储芯片,又会使得电路变得复杂。为了更有效地解决这问题,本文采用带内置汉字库的ST7920控制器的液晶模块12864M,通过ST7920模块可以大大简化电路的结构和编程方法,同时也可以提高编程效率和汉字显示的速度。

  1键盘接口及工作原理通用计算机键盘按接口形式可分为PC/AT、PS/2、USB和无线接口等几种类型。以PS/2接口键盘为例,如是PS/2键盘的6针引脚插头。引脚及其功能定义见表1所示。

  表1 PS/2键盘引脚及定义PS/2接口引脚标号引脚含义未连接PS/2通用计算机键盘是一种以微控制器8048为主的智能键盘。微控制器8048对键盘上的各键逐次扫描而得到某个键的动作信息,并且将其以扫描码的形式保存到存储器中。所以当键盘上有键按下或释放按键时,键盘扫描就会检测到该键的动作从而产生相应的扫描码。通常扫描码由个或多个字节构成。下表2列出了主键盘区部分键的扫描码:表2主键盘区部分按键及其对应的扫描码键名扫描码按键扫描码存放到内部缓冲存储器后,键盘与PC机通过串行通讯,将扫描码传输给PC机后即可进行键盘识别。

  2系统接口硬件组成及工作原理本系统采用的单片机是AT89C52,液晶显示模块是采用内置ST7920控制器的12864M,ST7920可以显示英文、中文字符及图形,内置有8000多个中文汉字(16x 16点阵)、128个字符点阵显示RAM(GDRAM)的模块。

  2.1液晶显示模块与智能仪表硬件接口如所示是智能仪表的CPU与液晶显示模块及PS/2键盘接口的硬件连接电路,通常液晶显示模块12864M与智能仪表系统中的单片机有并行和串行两种连接方法,串行接口比较简单,但是串行接口系统显示文本的速度比较慢,而并行接口较串行复杂,但是并行接口可以大大提高显示速度,所以本文所介绍的系统采用并行接口连接方式。

  2.2液晶显示控制模块ST7920的工作原理中的液晶显示模块为12864M,它是内置有ST7920控制器的液晶显示模块,只要传入所要显示的英文字符的ASC码或汉字的区位编码,液晶显示模块会自动计算其国标码和机内码,即可以根据编程命令立即将字符在指定位置显示出来。

  2.3PS/2键盘与智能仪表的硬件接口工作原理当给键盘上电时,键盘电路产生复位信号,键盘开始POST自检。如果POST自检无误,键盘即向单片机发送0AAH,然后开始键盘扫描。单片机收到0AAH后,允许键盘传送数据,将数据线和时钟线置为高电平,此时数据线和时钟线上的电平就由键盘控制。

  接口时钟信号由键盘提供,键盘完成扫描后,将扫描码存放到内部缓冲存储器中。在发送扫描码之前,键盘先检测键盘接口数据线和时钟线上的电平;如果时钟线为低电平,则表明单片机禁止键盘发送数据,键盘将扫描码继续保存在缓冲存储器中;只有当数据线和时钟线上电平均为高时,才允许键盘发送数据。此时键盘向主机发送数据和时钟信号。

  键盘发送数据时,先拉低数据线电平,再发送数据位等信号。每位数据在时钟脉冲下降沿有效,在时钟脉冲高电平期间变化。数据发送完毕后,保持数据线和时钟线为高电平。

  当单片机请求发送数据时,单片机将数据线拉低,键盘进入接收数据状态并发送时钟信号。每位数据均为时钟脉冲上升沿有效,在时钟脉冲低电平期间变化。键盘接收完数据后,将停止位拉低作为应答信号,表示数据接收完毕。

  3汉字输入与显示软接口设计汉字输入与显示软件主要分为几大部分:即系统主程序、中断服务程序、汉字输入法程序、汉字显示程序和键盘接口程序等模块。

  3.1系统主程序与中断服务程序模块如和是系统主程序和中断服务程序流程图,和中的“其它主程序”用于智能仪表的其它事件处理,比如数据采集与处理程序、系统报警处理程序等。

  系统主程序要求先对系统中的各部分进行初始化,然后置CLOCK、DATA线高电平为数据接收做准备,再对键盘进行POST上电自检,如果AT89C52单片机接收到了OAAH信号,就允许键盘传输数据,此时即可打开并等待中断响应,后处理系统中的“其它主程序”。

  如所示是系统中断服务程序流程图,因为键盘有键被按下后,会触发产生一个中断信号,此时会直接调用接收键盘扫描码子程序来接收被按下键的扫描码,然后对该扫描码进行奇偶校验,奇偶校验正确的话,就将DATA线拉低,调用键盘发送命令子程序重发扫描码,如果奇偶校验不正确,系统可以执行‘’其它主程序“后开中断,再返回系统主程序。

  3.2汉字显示的软接口汉字显示程序模块中重要的是对ST7920液晶显示控制器进行编程控制。ST7920的汉字或文本显示RAM提供4行(每行8个汉字)的空间,当写入文本显示RAM时,可以分别显示CGROM、HC-GROM与CGRAM的字型;ST7920A可以显示三种字型,分别是半宽的HCGROM字型、CGRAM字型及中文CGROM字型。三种字型的选择,由在DDRAM中写入的编码选择,各种字型对应写入命令的方法及详细编码范围如表3.字型种类写入命令的方法写入的编码或范围半宽HCGROM字型CGRAM字型中文CGROM字形将一位字节写入DDRAM中将两字节编码写入DDRAM中将两字节编码写入DDRAM中02H-7FH的编码下面一段程序就是显示“欢迎使用ST7920的代码(初始化及其它部分代码省略):;在LCD屏的行显示汉字:欢迎使用ST7920 4结束语由于本系统采用了与通用PS/2键盘的连接接口和由ST7920控制的液晶显示模块,不仅使得智能仪器系统中信息的大量输入与显示变得可能和简捷,也使得智能仪器中键盘的数量得到了较大的扩充。本系统不仅可以输入和显示汉字,还可以输入和显示标点符号,以及其它的字符或符号。这些都为小容量ROM的智能仪器提供了一种汉字输入与显示的解决方法。

脚注信息
版权所有 Copyright(C)2012-2013   北京三丰量具总代理|三丰量具总代理|日本三丰轮廓度仪总代理——北京三丰量仪精密工具有限公司   技术支持:三丰量具总代理