一种汉字实时输入显控系统设计
2.2.2 四复键判别处理子程序
某个键上有四个拼音字母,对于这样的键应特殊处理。例如表1所示,偏移量为05的四复键,上有字母PQRS。具体算法为:40H里存的是该键的地址偏移量,计数器计的是按键次数,当第一次按下此键时,计数器为0,所得键值就是地址偏移量,当第二次按下此键时,计数器为1,键值为1×8+05H=0DH,当第三次按下此键时,计数器为2,键值为2×8+05H=15H,当第四次按下此键时,将计数器清0,并以键值18H查表,如此循环。本文引用地址://m.amcfsurvey.com/article/162221.htm
2.2.3 三复键处理子程序
对于三复键,即键上有三个字母,例如表2所示,此键上有字母ABC,表示为三复键。具体算法为:40H里存的是该键的地址偏移量,计数器计的是按键次数,当第一次按下此键时,计数器为0,所得键值就是地址偏移量,当第二次按下此键时,计数器为1,键值为1×8+0=08 H,当第三次按下此键时,计数器为2,键值为2×8+0=10H,然后再将计数器清0,如此循环。
2.2.4 查找汉字区位码及汉字显示处理方法
区位码表的结构为:DB'B',00,00,00,0B0H,0C5H,12H。其中前四个单元为四个拼音键值,后两个是汉字的区位码,最后一个是该拼音对应汉字的个数,所以区位码每行有七个单元。区位码的查找方法:先让地址指针指向表头,也就是第一行,让每行的前四个拼音键值与存入到内存中的拼音键值比较,若相同则为找到区位码,若不等则要修改地址指针,让地址指针指向下一行的拼音键值,直到找到该拼音的区位码。若地址指针大于地址表中的最大地址值则表示该拼音组合不存在。当汉字区位码查找成功时,就要在LCD上显示汉字,首先要调用液晶初始化程序,在LCD显示该拼音对应的所有汉字,然后通过光标的移动,按确认键来选择所要输入的汉字并显示。
3 结束语
文中对复键输入作了详尽的分析,在此基础上编写了复键处理程序;介绍了液晶显示模块RT12864M,并根据该模块的特点编制了汉字查找与显示程序;最后利用伟福仿真试验系统对所编写程序进行仿真检测,所有程序均通过检测并可实现所设定的功能。此系统可用于控制及检测领域,可模块化生产,为多种产品提供实时输入显示汉字模块,为现有产品的人机界面改造提供新的方法。
评论