许多的掌上装置与移动设备采用小型嵌入式系统,而这些装置很多都需要具有输入汉字的功能。计算机系统中实现汉字输入的方法有多种,但根据实现的技术路线区分,不外乎是编码输入(如拼音、五笔字型输入等)、语音输入(如语音识别)、字型辨识输入(如扫描输入、手写体输入)等几种。由于语音输入技术尚未成熟,手写汉字输入方法颇受人们青睐。然而由于受微控制器本身处理能力及系统内存空间的限制,要在其中嵌入手写体汉字识别软内核难度非常大,且软内核必须针对不同的嵌入式应用系统进行移植才能使用。这无疑增加了这类产品开发的成本与风险。ePH1200是义隆电子公司将手写体辨识软内核硬化的一款专用芯片,它通过与电阻式触摸屏、微控制器相连,有效地实现汉字的手写输入。这为掌上装置以及各种移动设备等嵌入应用系统实现汉字的手写输入功能提供了一个很好的解决方案。
1 ePH1200的特点与手写体辨识过程 ePH1200手写体辨识芯片内嵌蒙恬手写识别软内核,能对国标汉字(共6 763个)、ASCII码字符以及其他一些特殊字符的手写体进行辨识,支持笔划连写,识别正确率高达99.9%;提供备选字输出,输出结果为 Unicode编码或者GB2312国标码,单字辨识时间约为0.34 s。ePH1200具有CSP24和LQFP44两种封装型式;功耗低,工作电压为2.8~3.6 V,工作电流约为2 mA,待机模式时的静态耗电小于20 μA;工作温度范围为-20~+80 ℃。ePH1200具有UART接口,方便与各种微控制器配合使用;UART接口的数据传输速率固定为9 600 bps,一帧数据为10位(1个起始位、8个数据位、1个停止位),数据位由低位到高位依次传送。ePH1200内嵌电阻式触摸屏控制接口电路,可直接与四线电阻式触摸屏相连。电阻式触摸屏控制接口电路包括电子开关切换电路和A/D转换器(转换精度8位/10位可选)[1]。图1为ePH1200的原理框图。
图1 ePH1200原理框图 ePH1200通过内部的触摸屏控制接口和A/D转换器,获取在电阻式触摸屏上笔划轨迹的坐标信息。当停笔时间(也就 是书写笔不接触摸屏的时间)大于设定值时,表示一个字符已书写完成。这时内嵌的辨识内核开始处理,通过采用字符识别算法对输入的字型点阵信息进行计算,便可以辨识出刚才所书写的字符,获得其Unicode/GB2312编码。字符的编码和笔划字型点阵信息均可通过UART端口输出,送给系统的微控制器;系统的微控制器便将手写字符的笔划字型点阵和根据编码获取的标准字型点阵输出到显示屏。这样在显示屏上就可以映射显示出手写字型和被识别字符的标准字型。
2 ePH1200硬件接口电路的设计
图2为实现手写输入的硬件接口电路。ePH1200通过XP、XN、YP、YN四个引脚端与四线电阻式触摸屏直接相连,通过串口与系统微控制器 MSP430交换信息。当ePH1200处在待机模式时,可通过WKI端输入外部中断唤醒信号(如微控制器通过检测触摸屏工作状态所产生的输出信号),使其恢复到正常工作模式。
图2 ePH1200硬件接口电路图 触摸屏上的笔划或点击信息,经过ePH1200的采集与处理,由串行接口送给微控制器MSP430;微控制器MSP430在收到这些数据后进行分析处理,将笔划点阵信息映射显示在LCD屏上,并将点触软键盘功能键的信息交由键盘处理程序处理。
3 应用程序设计
3.1 ePH1200的编程方法
由于ePH1200只能通过串行接口与系统的微控制器通信,因此各种数据信息的传送都是通过串行协议来实现的。系统的微控制器由串口发送命令包,可以将ePH1200设置为不同的工作状态。当ePH1200工作在辨识状态时,可以对触摸屏上设定范围内手写的一级、二级汉字以及一些ASCII码字符进行辨识,并输出其代码(如GB2312码)和手写笔迹的坐标值;当工作在图形状态时,不对手写的字符进行辨识,而只是将触摸屏上设定范围内手写笔迹的坐标值输出。ePH1200上电工作后处在默认工作模式,系统的微控制器必须根据应用要求通过串口对其进行初始化设置。串行通信的命令包格式如下: 例如,要设置ePH1200工作在图形工作状态,系统的微控制器应通过串行接口向ePH1200发送以下8字节的命令包:
0x50 0x14 0x04 0x01 0xFF 0xFF 0xFF 0x3A
ePH1200工作状态被正确设置后便会作出应答,应答包的数据如下:
0x50 0x14 0x04 0xFD 0xFF 0xFF 0xFF 0xFD
ePH1200应答输出包的格式有多种,包括命令确认应答包、命令错误应答包、单字辨识结果数据包和笔迹坐标数据包等。限于篇幅不在此介绍。
| |