各按键通过相似的响应流程完成各自不同的响应动作,这里以单个按键为例,对按键动作响应流程进行介绍。图6是一个UI交互任务流程,完成对UP按键的响应动作,动作类型为RT_MOVE_UP。
系统上电后,首先对系统硬件和各变量进行初始化,屏幕显示首屏菜单,由活动表示符指明当前活动菜单项。当UP按键按下,进入键盘中断,随即向μCOS中发送按键消息队列,执行UI任务,在UI任务中将中断挂起,而后运行键盘扫描代码,判断出键值UP。此时,UI任务将根据当前活动菜单标识符执行RT_MOVE_UP功能。首先判断菜单显示区域内的当前活动菜单项标识符(CAID)是否等于它的上临菜单(CAID.上临ID),如果相等,不做任何操作;如果不等,再判断CAID是否为当前菜单显示区域内正在显示的最顶端的菜单项标识符(TMID)。如果CAID=TM ID,那么CAID=TMID=CAID.上临ID,调用显示菜单函数,显示此屏幕的上一屏菜单;如果CAID不是TMID,则CAID=CAID.上临ID,调用显示菜单函数,活动表示符指向CAID.上临ID。
3.4 UI交互设计实物图
UI交互设计实物图如图7所示。
4 结语
UI的广泛应用是当今计算机发展的重大成就之一,它强调的是计算机对于人的反馈交互作用。嵌入式UI具有下面几个方面的基本要求,轻型、占用资源少,高性能、高可靠性,便于移植、可配置。本项目设计的UI是基于预定义的文本菜单,具有菜单设计灵活、占用资源少的优点,同时支持多层次菜单,菜单功能丰富,适用于大量的中等规模的嵌入式系统应用。
本文关键字:暂无联系方式嵌入式系统-技术,单片机-工控设备 - 嵌入式系统-技术