3、手持编程器按键与显示:按键布局与功能、LCD屏幕显示内容、菜单导航逻辑
好,咱们接着聊手持编程器。上一章讲了硬件怎么连,这一章咱们聚焦在人机交互上——说白了,就是你怎么跟这个“小盒子”对话。
我见过不少工程师,硬件调通了,结果卡在按键和菜单上。为什么?因为手持编程器的屏幕就那么巴掌大,按键也就那么几个,怎么把复杂的参数设置、状态监控塞进去,还要让操作者不骂娘,这其实是个挺讲究的活儿。
3.1 按键布局与功能:少即是多
手持编程器不是手机,不需要全键盘。我个人的习惯是,按键越少越好,但每个按键的功能要清晰到“闭着眼睛都能摸对”。
典型的布局是这样的:
| 按键 | 符号/标识 | 功能说明 |
|---|---|---|
| 上/下 | ▲ / ▼ | 菜单导航、数值增减、光标移动 |
| 左/右 | ◄ / ► | 页面切换、参数位选择、子菜单进入 |
| 确认 | OK / ENT | 进入菜单、确认修改、执行操作 |
| 取消/返回 | ESC / BACK | 返回上级、放弃修改、退出当前模式 |
| 功能键 | F1 / F2 | 快捷操作,比如“启动/停止”、“保存/加载” |
嗯,这里要注意一点:按键的响应逻辑。你不能按一下,屏幕闪三下才反应过来。我建议按键扫描周期控制在20ms以内,加上去抖动处理,总延迟不要超过50ms。否则操作者会感觉“这机器是不是卡了”。
3.2 LCD屏幕显示内容:信息分层
屏幕小,信息多,怎么办?我的原则是:一屏只做一件事。
常见的LCD是128x64像素的点阵屏,或者更小一点的96x64。这么点地方,你不可能把所有参数都堆上去。我一般把屏幕分成三个区域:
- 状态栏(顶部一行):显示当前模式(比如“运行”、“设置”、“诊断”),以及一些关键状态(比如“通讯正常”、“报警”)。用图标代替文字,省地方。
- 内容区(中间大部分):显示当前菜单项、参数值、或者实时数据。如果是参数设置,这里要同时显示参数名和当前值。
- 提示栏(底部一行):显示当前按键的功能提示。比如“▲▼选择,OK确认”。这对新手特别友好。
举个例子,当你在设置“电机转速”时,屏幕可能是这样的:
[设置] 通讯正常
转速: 1500 RPM
▲▼调整 OK确认
你看,信息一目了然。操作者不需要猜“我现在在哪”、“我该按哪个键”。
3.3 菜单导航逻辑:树形结构 + 快捷路径
菜单导航是手持编程器的灵魂。设计得好,操作行云流水;设计得不好,用户想砸机器。
我推荐用树形菜单结构。根节点是主菜单,下面分几个子节点,比如:
- 参数设置
- 状态监控
- 系统诊断
- 文件管理
每个子节点下面再细分。比如“参数设置”下面可以分“电机参数”、“传感器参数”、“通讯参数”。
导航逻辑其实就三个动作:
- 进入:按“确认”键,进入当前选中的菜单项。
- 返回:按“取消”键,回到上一级菜单。
- 切换:按“上/下”键,在同级菜单中移动光标。
听起来很简单对吧?但实际项目中,我遇到过一个问题:菜单层级太深。比如你要改一个参数,得先按5次“确认”,再按3次“返回”。操作效率极低。
我的解决方案是:增加快捷路径。比如在状态监控界面,长按“F1”键可以直接跳转到“参数设置”的常用参数页。或者,在任意界面按“F2”键,可以调出最近修改过的参数列表。
另外,我建议在菜单中增加一个“帮助”项。比如在某个参数设置界面,长按“确认”键可以显示该参数的简要说明。别小看这个功能,现场调试时能省不少电话咨询的时间。
最后,提一下菜单循环的问题。当光标移动到菜单列表的底部时,再按“下”键,是应该停在底部,还是跳回顶部?我个人习惯是循环滚动。因为操作者可能连续按“下”键很多次,如果停在底部,他得再按“上”键才能回去,体验不好。但如果是数值调整,比如从0调到999,我建议不要循环,而是停在边界值,并给出提示(比如屏幕闪烁一下)。
好了,这一章的内容就这些。按键怎么布局、屏幕怎么显示、菜单怎么导航,说白了都是为了让操作者“少想、少按、少错”。下一章咱们聊聊手持编程器和PC端软件之间的数据同步,那又是一个容易踩坑的地方。