LED多级菜单的设计方法

合集下载

网页设计中的多级菜单设计与使用指南

网页设计中的多级菜单设计与使用指南

网页设计中的多级菜单设计与使用指南在网页设计中,菜单设计是一项非常重要的工作。

特别是对于大型网站和企业,菜单的设计直接影响用户的体验和网站的转化率。

多级菜单设计是菜单设计中的一种关键技术,可以让网站变得更加美观和易用。

下面是多级菜单设计与使用指南。

一、什么是多级菜单?多级菜单是指菜单中有多个级别的分类。

通过多级菜单,可以将网站的内容和功能分层次展现,让用户更容易找到他们需要的信息。

一般来说,多级菜单最多可以分为三级或四级,如果层数过多,反而会影响用户的体验。

二、多级菜单的设计原则1. 易用性多级菜单的设计应该遵循易用性的原则。

要让用户轻松地找到他们需要的信息,而不会迷失或感到困惑。

因此,在设计多级菜单时,必须要考虑用户的使用习惯和心理预期。

2. 可访问性对于不同能力的用户来说,网站的可访问性是非常重要的。

多级菜单应该被设计成易于操作的,并且应该能够满足残障用户的需求,比如使用键盘进行导航。

3. 易维护性多级菜单的设计还应该考虑到网站的维护成本。

如果菜单的结构太复杂,那么维护起来将会非常困难。

因此,在设计多级菜单时,应该尽量减少菜单项的数量和层数。

三、多级菜单的设计实践1. 层级结构多级菜单一般由层级结构组成。

每一级菜单都应该有明确的分类和层级关系,同时也要注意层级的数量。

在设计菜单时,应该先让用户浏览主菜单,然后再进一步展开子菜单和子子菜单。

2. 悬浮效果悬浮效果是指鼠标悬浮在菜单上时,下拉菜单会自动显示出来的效果。

悬浮效果可以让用户像使用桌面应用程序一样使用网站,这样可以提高用户的满意度和便利性。

在实现悬浮效果时,要注意菜单的高度和宽度,保持菜单的整洁和美观。

3. 响应式设计随着移动设备的普及,响应式设计也变得越来越重要。

在多级菜单的设计中,要保证菜单的响应式设计,也就是说,要适应不同的屏幕尺寸和设备类型。

这样可以确保在各种设备上都可以使用菜单,提高用户的便利性和使用体验。

四、多级菜单的最佳实践在设计多级菜单时,需要遵循一些最佳实践,以确保菜单的设计符合用户的需求和期望。

oled多级菜单实现方法

oled多级菜单实现方法

OLED多级菜单实现方法引言随着智能设备的普及,O LE D(Or ga ni cLi g ht-E mi tt in gD iod e)显示屏在各种应用中得到广泛应用。

在许多情况下,我们需要为用户提供一种直观且易于操作的界面,以便他们与设备进行交互。

其中,多级菜单是一种常见的交互方式。

本文将介绍在OL ED显示屏上实现多级菜单的方法。

一、概述多级菜单是一种具有层级结构的菜单,它允许用户在不同层级间进行导航和选择操作。

通过使用O LE D显示屏,我们可以以图形化的方式展示多级菜单,使用户操作更加方便和直观。

二、实现步骤1.准备工作在开始实现多级菜单之前,我们需要准备以下材料:-一块可驱动OL ED显示屏的硬件设备-相应的开发板或单片机-适配器或连接线等连接硬件设备所需的配件2.设计菜单结构在实现多级菜单之前,我们需要先设计菜单的层级结构。

通常,多级菜单由一级菜单和多个子菜单组成。

一级菜单可以包含多个子菜单,子菜单之间可以进行跳转和切换。

我们可以用树状结构来表示并管理菜单的层级关系。

3.显示菜单通过OL ED显示屏,我们可以将菜单以图形化的方式展示出来,提供给用户进行选择。

在显示菜单时,我们需要根据当前菜单层级和用户选择的位置来进行显示,以及在用户进行操作时进行相应的响应。

4.用户操作多级菜单的核心在于用户的操作。

用户可以使用特定的按键或触摸屏进行导航和选择。

我们需要监听用户的操作,并对其进行相应的处理。

比如,当用户选择某个菜单项时,我们需要根据其选择进行相应的跳转或执行相应的操作。

5.实现菜单功能菜单不仅仅是显示和选择,还需要实现相应的功能。

根据不同的应用场景,我们可以为菜单的不同选项分配不同的功能,并在用户选择时执行相应的操作。

6.菜单管理和维护在实际应用中,菜单通常需要进行管理和维护。

这包括对菜单项的增加、删除和修改,以及对菜单结构的调整和优化。

我们需要提供相应的管理界面和功能,以便管理员或用户对菜单进行维护和配置。

一种易于移植的单片机液晶显示多级菜单设计

一种易于移植的单片机液晶显示多级菜单设计

一种易于移植的单片机液晶显示多级菜单设计王勇【摘要】LCD display as a human-computer interaction is very popular in various application situations of embedded microcontroller systems. However, general LCD display menu design is a little bit complicated, and does not have the portability, therefore the complexity in development and system maintenance and the cost are increased. In this paper we introduce the window and message mechanisms of Windows Operating System, and design a multilevel menu. The core of the menu is a universal window engine which does not depend on specific hardware and the content of menu. Research and application show that the menu design has the characters of simple structure, easy to use, little resource consumption, portable and so on. In the end of the paper we present an application example running in the FYD12864 LCD module.%在单片机嵌入式系统的许多应用场合均采用液晶显示器作为人机交互的方式,然而通常的液晶显示菜单设计较为复杂,且基本不具备可移植性,从而增加了开发、维护的复杂性和成本.引入Windows系统下的窗口和消息机制,设计一个多级菜单,该菜单的核心部分是一个不依赖具体硬件和菜单内容的通用的窗口引擎.研究和应用表明,该菜单设计具有结构简单、使用方便、占用资源少以及易于移植等特点.最后给出一个在FYD12864液晶模块上使用此方法的应用案例.【期刊名称】《计算机应用与软件》【年(卷),期】2011(028)012【总页数】6页(P263-268)【关键词】单片机;液晶显示;菜单;窗口引擎【作者】王勇【作者单位】电子科技大学四川成都610054东莞电子科技大学电子信息工程研究院广东东莞523808【正文语种】中文【中图分类】TP3110 引言单片机系统,特别是8位单片机系统通常可用资源较少,速度相对较慢,一般不适合部署操作系统,更谈不上图形引擎了。

oled菜单显示常用方法总结

oled菜单显示常用方法总结

一、概述OLED(Organic Light Emitting Diode)菜单显示是一种常见的显示方式,广泛应用于各种电子设备中。

它具有高亮度、对比度高、快速响应、视角宽等优点,因此在很多场合得到了广泛的应用。

而针对OLED菜单显示的常用方法进行总结,有助于开发人员更好地理解和应用这一显示技术。

二、基本原理OLED菜单显示的基本原理是利用有机发光二极管材料中的电致发光效应,在电场的作用下发出光线。

它不需要背光源,能够实现全面屏显示,同时可以实现高刷新率和低功耗。

根据这一原理,可以有效地实现各种多彩的显示效果。

三、常用方法总结1. 图形库的使用利用图形库对OLED进行驱动,是常见且有效的方法。

可以选择合适的图形库,根据具体需求进行调用,实现各种丰富的图形显示效果。

通过图形库的使用,可以方便快捷地实现复杂的界面设计和显示效果,提高开发效率。

2. 硬件接口的设计在进行OLED菜单显示时,需要设计相应的硬件接口。

这涉及到具体的电路设计和接线方式,需要根据OLED显示模块的具体规格和要求来进行设计。

合理的硬件接口设计能够保证OLED显示的正常工作,提高整体的稳定性和可靠性。

3. 数据传输与刷新对于OLED菜单显示,数据传输和刷新是关键的环节。

需要设计合理的数据传输方式和刷新机制,以保证显示内容的准确性和清晰度。

在数据传输和刷新方面,需要考虑到数据量的大小、传输速度、刷新频率等因素,确保显示效果稳定且流畅。

4. 界面设计与交互在开发OLED菜单显示时,界面设计与交互也是非常重要的部分。

合理的界面设计能够提升用户体验,而良好的交互设计则能够提高用户的操作便利性。

需要注重界面设计的美观性和易读性,同时也需要关注用户的交互操作,以实现良好的用户体验。

5. 资源管理与优化在进行OLED菜单显示开发时,需要进行资源管理和优化工作。

这涉及到对存储空间、计算资源的合理利用,以及对显示效果的优化设计。

通过资源管理与优化,能够使得整个OLED菜单显示系统更加稳定、高效和可靠。

12864液晶多级菜单设计

12864液晶多级菜单设计
索引号即用户想要执行哪个函数的代号,然后有三个键,用户可以自己定义别的按键,最后一个是函数指针,即索引号对应的函数。然后在定 义一个结构体数组,如下 key_table code table[n]= { {0,2,1,3,(*fun1)}, {1,0,2,4,(*fun2)}, {2,1,0,5,(*fun3)}, {3,0,6,3,(*fun4)}, {4,1,6,4,(*fun5)}, {5,2,6,5,(*fun6)}, {6,0,0,0,(*fun7)}, ............ }; 其中 n 为函数数组大小。下面详细介绍 key_table code table[n]里面的值是怎么确定的。 首先可以先这样定义该数组 key_table code table[n]= { {0,x,y,z,(*fun1)}, {1,x,y,z,(*fun2)}, {2,x,y,z,(*fun3)}, {3,x,y,z,(*fun4)}, {4,x,y,z,(*fun5)}, {5,x,y,z,(*fun6)}, {6,x,y,z,(*fun7)}, ............ }; 其中,x,y,z 是未知数,先不确定,他们对应的是三个键按下要指示的索引值,如果四个键,就有四个未知数,在确定他们之前,必须要了解自己函数执行什么命令。加入开始时 时执行数组里面的第一个即 table[0],而想在此按上键执行函数 fun6,那么 table[0]里面需要这样设置{0,5,y,z,(*fun1) }, 同样,如果希望按下键执行 fun7则需要设置为{0,x,6,z,(*fun1) } , 如果希望按确认键执行 fun3则需要设置为{0,x,y,2,(*fun1) } ; 如果上面三种情况都想要就设置为{0,5,6,2,(*fun1) }. 其它数组元素一次类推。这一步做完了看主程序里面(主要是 while(1)里面) 。 /*******************find index****************************/ switch(key) { case 0x44: break; case 0x24: break; case 0x14: break; default:break; } current_operation_index=table[func_index].current_operation; (*current_operation_index)();// 执行当前操作函数 其中,key 是返回的按键值,这个用户视情况而定, 下面是详细的例子, 主要是以结构体为基础设计的,以12864显示函数代替了用户需要的函数功能,只需要修改相应的函数和索引号,就可以达到任意界面切换了是小弟研究了还久才搞定的,虽然网 上也有这些,但是都不够系统,只有基本的东西,这篇例子希望能够给读者一些有用的东西,仅供参考哦! : #include <reg52.h> #include "fun.h" func_index=table[func_index].down;// 向下翻 func_index=table[func_index].enter;// 回车 func_index=table[func_index].up; // 向上翻

OLED作为操作面板的多级功能菜单设计

OLED作为操作面板的多级功能菜单设计
电子 科学
SI LI CON
LLEY墨霾£;
o LED作 为 操 作 面 板 的 多 级 功 能 菜 单 设 计
李艺 ( 中石油海洋工程公司北京1 00 176 )
【擅要] 将 简述如何在以0 LED作为操作面板 的电控设备上, 实现多级功能菜 单的设计及显示。 【关键词] 单片机OLED多级菜单 中围分类号:TP3 文献标识码: ^ 文章编号:187卜一7597( 2008) 072∞18一∞
oled80c196kcp47p1op13gndvccvddp3p33cslp34cs2p35vgsl2864e引脚功能引脚序号引脚符号功能gnd逻辑电路电源地0vvoc逻辑电路正电源5vvddoled驱动电源9vrs数据指令寄存器选择714db0一db7数据总线15csl16cs2右半屏片选17rstb复位1820nc表2vgsl2864e指令列表指令名称db7db6db5db4db3db2dbldb0显示开关显示起始行o63页设置页号07列地址设置显示列地址o63读状态on10ff0res写数据读数据读显示数据四软件鳙程软件编程采用c96语言伟福编译环境2
18 ’2 0
引脚符号 GND VOC VDD RS R佣 E DB0 一DB7 CSl CS2 RSTB Nc
功能 逻辑 电路 电源 地( 0 V) 逻辑 电路 正电 源( 5 v) OLED驱动电源( 9V) 数据/指令寄存器选择 读 /写 信号 选择 使能 数据总线 左半屏片选 右半屏片选 复位 无
“肛P4 .7
>/
一 酵 P1.o_P1.3
oLED
肋O一叩7
GND VCC VDD
P3_ o P3.1 P3.2 P3.3 P3.4 P3.5
骼 R刖

多位led课程设计

多位led课程设计

多位led课程设计一、教学目标本课程旨在让学生了解和掌握多位LED的基本原理、设计和应用,培养学生的实际操作能力和创新意识。

具体目标如下:1.知识目标:使学生了解LED的发展历程、基本原理和特性,掌握多位LED的电路设计、编程和调试方法。

2.技能目标:培养学生具备多位LED电路设计和制作的能力,能运用编程语言进行简单程序编写,并能对电路进行调试和优化。

3.情感态度价值观目标:培养学生对新技术的敏感度和好奇心,增强其创新意识和团队协作精神,使学生在实际项目中感受工程实践的乐趣。

二、教学内容本课程的教学内容主要包括以下几个部分:1.LED的基础知识:介绍LED的发展历程、基本原理和特性,让学生了解LED技术的基本概念。

2.多位LED电路设计:讲解多位LED电路的设计方法,包括电路图绘制、元件选型、PCB布局等,使学生掌握电路设计的基本技巧。

3.编程与调试:教授编程语言的基本知识,让学生能运用编程语言进行简单程序编写,并能对电路进行调试和优化。

4.实际应用案例:分析多位LED在实际项目中的应用案例,使学生了解多位LED技术的应用领域和前景。

三、教学方法为了提高教学效果,本课程将采用多种教学方法,包括:1.讲授法:讲解LED基础知识、电路设计和编程原理,使学生掌握基本概念和理论。

2.讨论法:学生进行小组讨论,分享学习心得和设计经验,培养学生团队协作和沟通能力。

3.案例分析法:分析实际应用案例,使学生了解多位LED技术的应用领域和前景。

4.实验法:安排学生进行实际操作,锻炼学生的动手能力和创新思维。

四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用国内外优秀教材,为学生提供系统的学习资料。

2.参考书:提供相关领域的参考书籍,丰富学生的知识体系。

3.多媒体资料:制作PPT、视频等多媒体资料,提高课堂教学效果。

4.实验设备:配置多位LED实验电路板、编程器等实验设备,为学生提供实际操作机会。

LCD12864多级菜单课程设计

LCD12864多级菜单课程设计

LCD12864多级菜单课程设计一、课程目标知识目标:1. 理解LCD12864液晶显示屏的基本工作原理和接口技术。

2. 掌握多级菜单的设计方法,包括菜单结构、界面布局及跳转逻辑。

3. 学会编写程序代码实现LCD12864多级菜单的显示与操作。

技能目标:1. 能够运用所学知识设计出结构清晰、界面友好的多级菜单界面。

2. 熟练使用相关编程语言和开发工具,完成程序编写和调试。

3. 培养学生的动手操作能力和团队协作能力,提高问题解决能力。

情感态度价值观目标:1. 培养学生对电子技术和编程的兴趣,激发学习热情。

2. 培养学生严谨、细心的学习态度,养成良好的编程习惯。

3. 增强学生的创新意识,鼓励学生敢于尝试、勇于实践。

分析课程性质、学生特点和教学要求,本课程目标旨在帮助学生在掌握LCD12864多级菜单设计的基础上,提高实际操作能力,培养学生的创新思维和团队协作精神。

通过本课程的学习,使学生能够在实际项目中运用所学知识,为我国电子信息产业的发展做出贡献。

同时,注重培养学生的情感态度价值观,使学生在学习过程中形成积极向上的人生态度。

二、教学内容1. LCD12864液晶显示屏原理介绍:包括显示原理、接口技术、指令集等基本知识。

- 教材章节:第三章第二节- 内容列举:LCD12864工作原理、接口类型、指令功能。

2. 多级菜单设计方法:- 教材章节:第五章- 内容列举:菜单结构设计、界面布局、跳转逻辑、操作流程。

3. 编程实现LCD12864多级菜单:- 教材章节:第六章- 内容列举:编程环境搭建、代码编写、程序调试、功能实现。

4. 实例分析与操作:- 教材章节:第七章- 内容列举:典型多级菜单实例、操作方法、优化技巧。

5. 动手实践与团队协作:- 教材章节:第八章- 内容列举:实践任务分配、协作流程、成果展示。

根据课程目标,教学内容分为五个部分,确保学生系统掌握LCD12864多级菜单设计的相关知识。

教学大纲明确指出各部分内容的安排和进度,以及教材对应的章节和具体内容。

OLED作为操作面板的多级功能菜单设计

OLED作为操作面板的多级功能菜单设计

OLED作为操作面板的多级功能菜单设计作者:李艺来源:《硅谷》2008年第14期[摘要]将简述如何在以OLED作为操作面板的电控设备上,实现多级功能菜单的设计及显示。

[关键词]单片机 OLED 多级菜单中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0720016-02随着人性化、智能化电控设备的发展,其功能越来越强大,操作面板显示内容越来越多,已不再满足于数码管显示,取而代之的是LCD、OLED等显示面板。

而对于野外工作的电控设备,液晶显示亮度有限,在太阳照射下,无法看清显示内容。

有机发光显示OLED(Organic Light Emitting Display)是比液晶显示技术更为先进的新一代平板显示技术,是被业界公认为最具有发展前景的下一带显示技术。

它与液晶显示技术相比,具有超轻薄、高亮度、广视角、自发光、响应速度快、适应温度范围宽、抗震强、功耗低、可实现柔软显示等优越性能。

下面以VGS12864E显示模块及80C196单片机为例,介绍在通用电控设备上,以OLED作为操作面板的多级菜单设计的软、硬件实现。

一、VGS12864E显示模式VGS12864是128×64行点阵的OLED单色、字符、图形显示模块。

模块内藏64×64的显示数据RAM,其中的每位数据都对应于OLED屏上一个点的亮、暗状态;其接口电路和操作指令简单,具有8位并行数据接口,读写时序适配6800系列时序,可直接与8位微处理器相连;与Intel 8080时序的MCU连接时需要进行时序转换[1]。

二、显示模块结构(一)模块框图VGS12864E显示模块显示屏为128列、64行、使用1片有64行输出的行驱动器和2片列驱动控制器,其中每片列驱动器有64路输出。

行驱动器与MCU没有关系,只要提供电源就能产生驱动信号和同步信号,模块的外部信号仅与列驱动器有关。

列驱动器内置64×64位显示存储器,RAM被分为8页,每页8行;显示屏上各像素点显示状态与显示存储器各位数据一一对应,显示存储器的数据直接作为图形显示的驱动信号,为“1”显示,为“0”不显示。

多位led动态课程设计

多位led动态课程设计

多位led动态课程设计一、课程目标知识目标:1. 让学生掌握多位LED的基本原理和动态显示的编程方法。

2. 让学生理解数字逻辑和时序控制在实际应用中的重要性。

3. 让学生掌握相关的电子电路知识,能够解释多位LED动态显示背后的电路工作原理。

技能目标:1. 培养学生动手搭建和调试基于多位LED的电子电路的能力。

2. 培养学生使用编程软件进行动态显示程序编写和修改的能力。

3. 提高学生的问题解决能力,能够独立处理在多位LED动态显示过程中遇到的技术问题。

情感态度价值观目标:1. 培养学生对电子技术和编程的兴趣,激发学生的学习热情。

2. 培养学生的团队协作意识和创新精神,鼓励学生在项目中进行交流与合作。

3. 增强学生的环保意识,让学生明白电子废弃物的正确处理方法。

课程性质:本课程为实践性强的电子与编程技术课程,结合理论知识与实际操作,使学生能够深入了解多位LED动态显示技术的应用。

学生特点:考虑到学生年级的特点,课程内容将深入浅出,注重培养学生的动手能力和实际应用能力。

教学要求:教师应注重理论与实践相结合,关注学生的个别差异,提供有针对性的指导,确保学生能够达到预设的课程目标,并能够将所学知识应用于实际项目中。

通过课程目标的分解,教师可以对学生的学习成果进行有效评估,以便调整教学策略,提高教学质量。

二、教学内容1. 理论知识:- 介绍多位LED的基本结构、工作原理及其在电子产品中的应用。

- 数字逻辑基础,包括逻辑门、触发器及时序控制。

- 动态扫描原理及其在多位LED显示中的应用。

2. 实践操作:- 搭建多位LED显示电路,学习电路连接和调试技巧。

- 编程控制,使用Arduino或micro:bit等编程平台编写动态显示程序。

- 软硬件结合,实现多位LED的动态扫描显示。

3. 教学大纲:- 第一阶段:LED原理及应用(1课时)- 第二阶段:数字逻辑基础(1课时)- 第三阶段:动态扫描原理(1课时)- 第四阶段:实践操作(2课时)- 电路搭建与调试(1课时)- 编程与显示控制(1课时)4. 教材章节:- 第一章:电子元件基础- 第二章:数字逻辑电路- 第三章:微控制器编程- 第四章:电子电路实践教学内容按照教学大纲安排,注重科学性和系统性。

液晶显示多级汉字菜单的方法及电路

液晶显示多级汉字菜单的方法及电路

液晶显示多级汉字菜单的方法及电路关键字:液晶显示多级汉字菜单的方法摘要:以8031单片机控制MGLS-240128液晶显示器为例,介绍利用CCDOS 中的汉字库(HZK16)实现多级汉字菜单显示的方法。

当显示内容改变时,不需要更改程序,只要更改菜单参数即可显示。

关键词:液晶显示器;MGLS-240128;汉字库;多级菜单1. 引言目前常用的小型显示器有LCD和LED ,LED显示器只能显示数字和有限个英文字符,不能显示汉字,显示内容不直观,操作人员只能根据约定格式了解显示内容。

而LCD则可显示各种汉字和图形,能实现中文菜单显示,便于操作,并且功耗低。

因此LCD得到广泛应用。

用LCD显示汉字时,一般采用自制汉字模和汉字编码,当显示内容较多时,字模库容量很大,汉字的编码亦很难记住,给编程造成困难,当显示内容改变时,字模库也要作相应变化,工作量大。

这里介绍一种直接利用CCDOS中的汉字库(HZK16)显示汉字多级菜单的方法。

将HZK16和菜单内容固化在EPROM中,从而方便地实现了多级汉字菜单的显示,充分发挥了LCD的优点。

2. MGLS-240128显示模块简介及接口电路本文使用的显示模块是MGLS-240128,它的点阵数是240×128,如显示16×16点阵的汉字,可显示8行,每行15个字。

MGLS-240128模块内藏HD61830控制器,模块的电原理框图如图1所示。

有时在菜单显示中,显示的页数很多。

为了便于在EPROM中定位,在计算机中编辑菜单时,应在每页菜单前加pxx:其中p表示一页开始,xx为该页序号,冒号表示以下为该页的内容。

回车可换行到下一行并进入中文编辑状态输入,需要显示的内容。

每页分8行,每行15个汉字或字符(包括空格)。

在编辑的文件中,每行结尾有回车、换行符。

这样,每一页菜单中,pxx以ASCII码形式存放,每个汉字以机器内码形式存放,每个机器内码占两字节。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

系统要运行可靠 ,对其有关设备是否能够安全 运行地检测也是很重要的一环 。因而程序对系统所 涉及的设备都进行了全面监测 ,主要有电动球阀故 障 、出水口电动闸阀故障 、水位传感器故障 、水泵启 停时间 、运行电流 、电动机温度 、电动机和水泵轴承 温度 、出水压力 、高压柜状态 、高压柜故障 、阀门故障 等 ,并视情况进行事故自动处理或报警要求检修 。
{5 ,4 ,6 ,8 ,0 , ( 3 Modif yPoint) } , / / 第一层 {6 ,5 ,7 ,52 ,0 , ( 3 Set Clo seDown) } , / / 第一层 {7 ,6 ,1 ,0 ,0 , ( 3 Cancel) } , / / 第一层 ⁝ ⁝ {52 ,53 ,53 ,0 ,1 , ( 3 OkSet CloseDown1) } , {53 ,52 ,52 ,0 ,1 , ( 3 OkSet CloseDown2) } , {54 ,0 ,0 ,0 ,0 , ( 3 Disable) } , }; void Get Keylnp ut (void) { switch ( stat us &0xf0) { case 0xe0 :/ / 回车键 ,找出新的菜单状态编号 ⁝
(1. 天地科技股份有限公司常州自动化分公司 ,江苏 常州 213015 ; 2. 宁夏煤矿安全监察局 ,宁夏 银川 750001)
摘要 :介绍了在 C 语言环境下 ,在 L CD 液晶显示屏上实现多级嵌套菜单的一种简便方法 ,提出了一个 结构紧凑 、实用的程序模型 。
关键词 :液晶显示屏 ; 多级菜单 ; 单片机 ; C 语言 ; L CD 中图分类号 :TP311. 1 文献标识码 :B
收稿日期 :2005 - 11 - 21
阵液晶 。 采用图形点阵式液晶显示较之其它显示方式主
要有以下优点 : (1) 工作电压低 、功耗极低 。工作电压仅为 3~
5 V ,工作电流 ≤10 μA/ cm2 ,特别适用于低功耗的 仪器仪表中 。
(2) 液晶显示属被动显示 ,受外界光线干扰小 。 (3) 图形点阵式液晶可显示的信息量大 、分辨 率高 。 (4) 不产生电磁干扰 。 (5) 可靠性高 ,使用寿命长 。 本文所介绍的 L CD 采用 128 ×64 点阵的液晶 屏 ,因此可显示 16 ×16 点阵的汉字 4 行 8 列 。菜单 为多级嵌套形式 ,最长的有 13 层 ,主要完成对某个
参考文献 :
[ 1 ] 李世煌. 水泵设计教程 [ M ] . 北京 : 机 械 工 业 出 版 社 , 1990.
[ 2 ] 周美兰. PL C 电气控制与组态[ M ] . 北京 :科学出版社 , 2003.
© 1995-2006 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
检修 ,还保留了手动方式 ,该方式在正常运行情况下 是不使用的 。
4 结语
由于 PL C 具有良好的抗干扰能力 ,而且编程 、 修改 、调试都很方便 ,大大缩短了调试时间 ,提高了 系统的自动化程度 ,降低了硬件的复杂程度 。实践 证明该系统运行平稳 ,故障率低 ,基本不需维修 ,降 低了维修费用和电耗 ,取得了较好的经济效益 。
0 引言
由于 C 语言的结构性和模块化 ,采用 C 语言编 写的程序容易阅读和维护 ,还有很好的可移植性 。 本文介绍一种用 C 语言实现的 L CD 多级菜单的方 法 ,该方法已成功应用在煤矿安全监测设备上 。
1 硬件环境及 LCD 菜单实现的功能
图形点阵式液晶可显示用户自定义的任意符号 和图形 ,并可卷动显示 。它作为单片机系统人机交 互界面的重要组成部分被广泛应用于实时检测和显 示的仪器仪表中 ,例如手机上的显示屏就是图形点
Kbd TabSt ruct code Key Tab[ SIZE - O F - KE YBD - M ENU ] =
{ {0 ,0 ,0 ,1 ,0 , ( 3 MainJob1) } , {1 ,7 ,2 ,8 ,0 , ( 3 Dsp Point) } , / / 第一层 {2 ,1 ,3 ,8 ,0 , ( 3 Dsp Curve) ) , / / 第一层 {3 ,2 ,4 ,36 ,0 , ( 3 Dsp Kout) } , / / 第一层 {4 ,3 ,5 ,50 ,0 , ( 3 DisClo seDown) } , / / 第一层
“回退”键 : 取消本层的菜单设置 ,返回上层菜 单;
“确认”键 : 确认本层的菜单设置 ,进入下级菜 单。
可根据用户在菜单中的选择项对测点进行某些 设置 ,或者进行某些特殊的显示 ,例如对某个测点的 实时曲线显示等 。
2 程序设计
根据需求 ,首先建立一个结构 ,并定义一个结构 变量 Kbd TabSt ruct 。结构变量就是把多个不同类 型的变量结合在一起形成的一个组合型变量 ,构成 一个结构的各个变量称为结构元素 。该结构中共有 6 个结构元素 ,分别是 5 个字符型和 1 个指针变量 , 5 个字符型变量分别为当前及各个按键的索引号 , 也就是操作的状态号 ,最后 1 个指针变量指向需执 行函数 。这样就可以做一个结构数组 ,在结构数组 里为每一个菜单项编制一个单独的函数 ,并根据菜 单的嵌套顺序排好本菜单项的索引号 ,以及本级菜 单项的上、下卷动的索引号和上 、下级菜单的索引号。
KeyFuncIndex = Key Tab[ KeyFuncIndex ] . KeyCrState ; ⁝ break ; case 0xb0 :/ / 向下键 ,找出新的菜单状态编号 ⁝ KeyFuncIndex = Key Tab [ KeyFuncIndex ] . KeyDn2 State ; ⁝ break ; case 0xd0 :/ / 向上键 ,找出新的菜单状态编号 ⁝ KeyFuncIndex = Key Tab [ KeyFuncIndex ] . KeyUp2 State ; ⁝ break ; case 0x70 :/ / 回退键 ,找出新的菜单状态编号 ⁝ KeyFuncIndex = Key Tab [ KeyFuncIndex ] . KeyBack2 State ; ⁝ break ; case 0 ; ret urn ; / / 错误的处理 break ; } KeyFuncPt r = Key Tab[ KeyFuncIndex ] . CurrentOperate ; ( 3 KeyFuncPt r) () ; / / 执行当前按键的操作 }
3 结语
本文介绍了 C 语言编程的特点 , 简单介绍了 L CD 作为人机界面的特征 ,并介绍了一种用 C 语言 实现的 L CD 多级嵌套菜单结构 。该结构紧凑 、性能 稳定可靠 ,已多次使用在安全监测设备中 。
© 1995-2006 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
本系统中各个机组有 3 种运行选择 :自动 、半自 பைடு நூலகம்和手动 。通常情况下按照水位高低和系统时间自 动选择是否开泵 ,同时观察水位变化率从而选择需 要开几台泵 。在半自动方式下 ,一旦该泵的开泵信 号被监测到 ,系统将自动根据当前情况用射流方式 或者真空泵方式来抽真空 ,当真空度达到要求后启 动电动机 , 同时观测出水口处的压力 , 当其大于 5 M Pa时打开出水口处的电动闸阀实施正常排水 。 为了完善系统 ,防止意外情况的发生 ,同时为了便于
具体程序如下所述 :
t ypedef st ruct
{ uchar KeyStateIndex ; / / 当前状态索引号 uchar KeyDnState ; / / 按下“向下”键时转向的状态索引号 uchar KeyUpState ; / / 按下“向上”键时转向的状态索引号 uchar KeyCrState ; / / 按下“回车”键时转向的状态索引号 uchar KeyBackState ; / / 按下“退回”键时转向的状态索引号 void ( 3 CurrentOperate) ( ) ; / / 当前状态应该执行的 功能操作 } Kbd TabSt ruct ; # define SIZE - O F KE YBD - M ENU 55 / / 菜单总长度
第 1 期 2006 年 2 月
工 矿 自 动 化
Indust ry and Mine Auto mation
No . 1 Feb. 2006
文章编号 :1671 - 251X(2006) 01 - 0050 - 02
单片机 C 语言下 LCD 多级菜单的一种实现方法
陆 铮1 ,罗 嘉2
2006 年第 1 期
陆 铮等 :单片机 C 语言下 L CD 多级菜单的一种实现方法
· 51 ·
测点各方面的设置或查询 ,可通过“向上”、“向下”、 “回退”“、确认”4 个键或遥控器来实现对菜单的选 择 。具体功能 :
“向上”键 :在本层菜单的项目中向上移动进行 选择 ;
“向下”键 :在本层菜单的项目中向下移动进行 选择 ;
相关文档
最新文档