有时候项目需求中需要人机交互,显示设备选择的是单色OLED屏,不支持触摸,操作接口是按键,如果你不想移植复杂的窗口式GUI库,就可以使用这种简洁的菜单式GUI(其实也不能完全的称之为GUI,一个GUI包含很多东西,我只是提供了一种思路,可以叫做框架吧),当然这种多级菜单结构也不限于用在OLED屏上,某些需要做一些菜单结构的场景也同样适用,只要你能用OLED显示内容,那么就可以很简单的用起来,最终实现效果就和我们用电脑的上、下、左、右、Enter、Backspace键操作文件夹和文件类似,只不过文件夹变成了菜单选项而已,具体可参见下面的视频演示,当然在OLED这种小屏上还有其它需要考虑的很多问题。
实录效果:
部分图形绘制代码参考了
(
为什么不直接移植一个GUI呢,现在流行的GUI那么多,如emWin、TouchGFX、LittlevGL等,之前也想过移植一个,但发现项目中使用的都是25664或者12832的单色OLED屏,直接移植这些GUI带来的内存开销太大,而且操作方式是按键不支持触摸,这类GUI对按键的支持都不算很好,所以移植现成GUI不太适合,便自己写了一个简洁的多级菜单式GUI,但如果是全彩屏又支持触摸,那么就完全可以移植现成的GUI来用,肯定比自己重新写要强得多,而且有很多控件可以将画面做得很绚丽。
后续的文章会渐进的将整个程序原型实现出来。
评论区
登录后即可参与讨论
立即登录