ImageVerifierCode 换一换
格式:DOC , 页数:8 ,大小:26KB ,
资源ID:5619696      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-5619696.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机多级菜单.doc)为本站会员(weiwoduzun)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

单片机多级菜单.doc

1、1单片机多级菜单第 1 期 2006 年 2 月工矿自动化 IndustryandMineAutomation No.1 Feb.2006 文章编号:1671-251X(2006)01-0050-02单片机 C 语言下 LCD 多级菜单的一种实现方法陆 铮 1,罗 嘉 2(1.天地科技股份有限公司常州自动化分公司,江苏常州 213015;2.宁夏煤矿安全监察局,宁夏银川 750001)摘要:介绍了在 C 语言环境下,在 LCD 液晶显示屏上实现多级嵌套菜单的一种简便方法,提出了一个结构紧凑、实用的程序模型。关键词:液晶显示屏;多级菜单;单片机;C 语言;LCD 中图分类号:TP311.1 文献

2、标识码:B0 引言阵液晶。采用图形点阵式液晶显示较之其它显示方式主2要有以下优点:(1)工作电压低、功耗极低。工作电压仅为 35V,工作电流10A/cm2,特别适用于低功耗的由于 C 语言的结构性和模块化,采用 C 语言编写的程序容易阅读和维护,还有很好的可移植性。本文介绍一种用 C 语言实现的 LCD 多级菜单的方法,该方法已成功应用在煤矿安全监测设备上。1 硬件环境及LCD 菜单实现的功能仪器仪表中。(2)液晶显示属被动显示,受外界光线干扰小。(3)图形点阵式液晶可显示的信息量大、分辨图形点阵式液晶可显示用户自定义的任意符号和图形,并可卷动显示。它作为单片机系统人机交互界面的重要组成部分被

3、广泛应用于实时检测和显示的仪器仪表中,例如手机上的显示屏就是图形点收稿日期:2005-11-21率高。(4)不产生电磁干扰。(5)可靠性高,使用寿命长。本文所介绍的 LCD 采用 12864 点阵的液晶屏,因此可显示 1616 点阵的汉字 4 行 8 列。菜单为多级嵌套形式,最长的有 13 层,主要完成对某个检修,还保留了手动方式,该方式3在正常运行情况下是不使用的。4 结语系统要运行可靠,对其有关设备是否能够安全运行地检测也是很重要的一环。因而程序对系统所涉及的设备都进行了全面监测,主要有电动球阀故障、出水口电动闸阀故障、水位传感器故障、水泵启停时间、运行电流、电动机温度、电动机和水泵轴承温

4、度、出水压力、高压柜状态、高压柜故障、阀门故障等,并视情况进行事故自动处理或报警要求检修。本系统中各个机组有 3 种运行选择:自动、半自动和手动。通常情况下按照水位高低和系统时间自动选择是否开泵,同时观察水位变化率从而选择需要开几台泵。在半自动方式下,一旦该泵的开泵信号被监测到,系统将自动根据当前情况用射流方式或者真空泵方式来抽真空,当真空度达到要求后启动电动机,同时观测出水口处的压力,当其大于 5MPa 时打开出水口处的电动闸阀实施正常排水。为了完善系统,防止意外情况的发生,同时为了便于由于 PLC 具有良好的抗干扰能力,而且编程、修改、调试都很方便,大大缩短了调试时间,提高了系统的自动化程

5、度,降低了硬件的复杂程度。实践证明该系统运行平稳,故障率低,基本不需维修,降低了维修费用和电耗,取得了较好的经济效益。参考文献:41 李世煌.水泵设计教程M.北京:机械工业出版社,1990.2 周美兰.PLC 电气控制与组态M.北京:科学出版社,2003.2006 年第 1 期陆 铮等:单片机 C 语言下 LCD 多级菜单的一种实现方法5,4,6,8,0,(3ModifyPoint), /第一层?51?测点各方面的设置或查询,可通过“向上”、 “向下”、 “回退”“、确认”4 个键或遥控器来实现对菜单的选择。具体功能:“向上”键:在本层菜单的项目中向上移动进行选择;“向下”键:在本层菜单的项目

6、中向下移动进行选择;“回退”键:取消本层的菜单设置,返回上层菜单;“确认”键:确认本层的菜单设置,进入下级菜单。可根据用户在菜单中的选择项对测点进行某些设置,或者进行某些特殊的显示,例如对某个测点的实时曲线显示等。2 程序设计6,5,7,52,0,(3SetCloseDown), / 第一层 7,6,1,0,0,(3Cancel), / 第一层 52,53,53,0,1,(3OkSetCloseDown1), 53,52,52,0,1,(3OkSetCloseDown2), 54,0,0,0,0,(3Disable),5;voidGetKeylnput(void)switch(status b

7、reak;case0xb0:/向下键,找出新的菜单状态编号 KeyFuncIndex=KeyTabKeyFuncIndex.KeyDn2State;根据需求,首先建立一个结构,并定义一个结构变量KbdTabStruct。结构变量就是把多个不同类型的变量结合在一起形成的一个组合型变量,构成一个结构的各个变量称为结构元素。该结构中共有 6 个结构元素,分别是 5 个字符型和 1 个指针变量,5 个字符型变量分别为当前及各个按键的索引号, break;case0xd0:/向上键,找出新的菜单状态编号KeyFuncIndex=KeyTabKeyFuncIndex.KeyUp26State;也就是操作的

8、状态号,最后 1 个指针变量指向需执行函数。这样就可以做一个结构数组,在结构数组里为每一个菜单项编制一个单独的函数,并根据菜单的嵌套顺序排好本菜单项的索引号,以及本级菜单项的上、下卷动的索引号和上、下级菜单的索引号。具体程序如下所述:typedefstruct break;case0x70:/回退键 ,找出新的菜单状态编号 KeyFuncIndex=KeyTabKeyFuncIndex.KeyBack2State; break; case0;return; /错误的处理 break; KeyFuncPtr=KeyTabKeyFuncIndex.CurrentOperate; (3KeyFunc

9、Ptr)(); /执行当前按键的操作uchar KeyStateIndex; / 当前状态索引号uchar KeyDnState; /按下“向下”键时转向的状态索引号 uchar KeyUpState; /按下“向上”键时转向的7状态索引号 uchar KeyCrState; / 按下“回车”键时转向的状态索引号 uchar KeyBackState; /按下“退回”键时转向的状态索引号 void (3CurrentOperate)(); /当前状态应该执行的功能操作 KbdTabStruct;#defineSIZE-OFKEYBD-MENU55 /菜单总长度KbdTabStructcodeK

10、eyTabSIZE-OF-KEYBD-MENU=3 结语本文介绍了 C 语言编程的特点,简单介绍了 LCD 作为人机界面的特征,并介绍了一种用 C 语言0,0,0,1,0,(3MainJob1),1,7,2,8,0,(3DspPoint), / 第一层 2,1,3,8,0,(3DspCurve), /第一层 3,2,4,36,0,(3DspKout), / 第一层 4,3,5,50,0,(3DisCloseDown), / 第一层实现的 LCD 多级嵌套菜单结构。该结构紧凑、性能稳定可靠,已多次使用在安全监测设备中。百度搜索“就爱阅读”,专业资料、生活学习,尽在就爱阅读网 ,您的在线图书馆! 8

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报