当前位置:首页 > 电源 > 数字电源
[导读]本文以AT89C51单片机控制使用比较普遍的YM12864液晶显示器为基础,介绍了一种采用分页原理实现多级中文菜单操作的方法。给出了YM12864主要技术参数、显示特性和核心的程序。设计的中文菜单具有一定的通用性,只需更改其中的菜单项即可将此设计应用到家电、仪器仪表等设备上,为操作者提供友好方便的中文操作界面。

一、引言

目前小型的显示器主要有LCD和LED,LED显示器只能显示数字和有限个英文字符,不能显示汉字,显示内容不直观,操作人员只能根据约定格式了解显示内容。而LCD则可显示各种汉字和图形,尤其能实现中文菜单显示,为操作者提供方便友好的操作界面,并且功耗低,因此LCD得到广泛应用。而现在市面上带中文字库的LCD比比皆是,价格适中,且大部分具有与MCU统一的标准接口,为使用LCD实现中文菜单操作提供了很大的方便。相信更多的电子产品在提升性能的同时,设计更加人性化的中文菜单交互界面,将会使产品具有更广阔的前景。

二、YM12864液晶显示模块简介

YM12864汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。

主要技术参数和显示特性:

电源:VDD 3.3V~+5V(内置升压电路,无需负压)显示内容:128列×64行与MCU接口:8位或4位并行/3位串行多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等。

其引脚功能为通用20脚LCD接口,用户指令集也为通用128*64LCD用户指令集,相关资料很容易获取。因其内置中文字库,省去了自己造字库的工作量,而只需写入相应的汉字和字符内码即可显示所需要的汉字和字符,这在许多程序开发软件中很容易实现,如:WAVE、KEIL等。所以使用带中文字库的LCD来实现中文菜单操会更加简便。

三、原理分析

通常的人机交互界面有两种方式,选择菜单和输入参数,为了便于分析,本文使用三级树状菜单结构。因YM12864满屏能显示四行、每行八个汉字,故将四个选择或参数输入菜单项编为一页,不足一页的补空格。补空格的目的是为了归一化操作,可大大简化程序。每一个菜单、参数输入、空格都为固定的八个汉字空间。当顶级菜单1、顶级菜单2、顶级参数输入3、顶级4构成一级菜单,四个菜单项为一页同时显示在液晶屏幕上;一级菜单1-1、一级菜单1-2、一级参数输入1-3、一级空格1-4构成了顶级菜单1下的二级菜单,也组成一页同时显示在液晶屏幕上,三级菜单也是如此。使用4*4键盘进行操作,其中“0-9”为数字键,“Esc”为删除/返回键,“Down”为向下选择健,“Enter”为确定健,剩余三个按键预留备用,为了不与其他程序的通用寄存器混淆,而使用89C51的第二组通用寄存器R0和R2来记录菜单的页码和行码(光标所在的菜单行)。

现通过按键的功能来分析多级中文菜单的原理。当按下“Down”键后,光标移动一行(光标所在的行表示此行显示的菜单处于激活状态)行码加1,即(R2)=(R2)+1;当光标已在本级菜单的最后一项,此时按下“Down”键,光标回到本级菜单的首项,行码为0,即(R2)=0.例如:光标处于二级菜单1-1-1,按下“Down”键,则光标移动到二级菜单1-1-2.

按下“Enter”,分两种情况处理,如为选择菜单,则根据页码和行码的值:R0*4+R2调用下一级子菜单显示,同时将子菜单的页码赋值给R0,得到子菜单的页码,并且使行码R2=0,表示处于此级菜单的首项。例如:光标处于顶级菜单1,按下“Enter”键,则液晶显示屏上显示一级菜单1-1、一级菜单1-2、一级参数输入1-3、一级空格1-4.如为参数输入菜单,则进入相应的参数输入对话框。例如:光标处于参数输入1-3,按下“Enter”健,则液晶显示屏上显示对应的要求输入参数的对话框(一般为数字,为了简化程序,可采用统一的参数输入对话框),此时输入符合要求的参数,再按下“Enter”键,菜单将返回到上一级菜单,同时将输入到YM12864液晶显示器的数据读出,送到相应的单元存储,以备使用。

“Esc”键起到返回上一级菜单和删除参数输入时的错误输入双重功能,程序中只需使用一标志位来区分选择菜单和参数输入菜单即可,同时修改页码和行码值,即R0和R1的值。例如:液晶屏上显示二级菜单1-1-1、二级菜单1-1-2、二级菜单1-1-3、二级空格1-1-4,此时按下“Esc”键,则返回到一级,屏幕上显示一级菜单1-1、一级菜单1-2、一级参数输入1-3、一级空格1-4.

四、硬件设计

使用89C51的P1口作为液晶显示器的数据口,使用P0口作为键盘扫描端口,当然这些端口也可以使用扩展口,只需在程序的开头修改端口的值便可。电路图如图1所示。

 

 

五、软件设计

重点在于软件的设计,而程序的关键又在于使用了分页的操作方式。以下为菜单数据,按页的方式存放,不足一页的补空格。

 

 

由于篇幅有限,不能将所有的程序都写出,只是将程序的框架列出,其它程序如:按键扫描子程序、YM12864显示子程序可参照其它资料。实际应用时需要根据具体情况加以补充。

六、结语

本方法设计的多级中文菜单易于实现、可靠性高,并且具有一定的通用性和使用价值,实际应用时根据产品的操作要求修改上述的菜单名称即可。当某级菜单的项目数有多页时,为方便操作,可增加翻页按键;所有菜单的页数最大为256页,共1024个菜单项,对于一般的系统完全够用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭