找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 929|回复: 6
打印 上一主题 下一主题
收起左侧

单片机LCD屏幕多级菜单程序设计 大家有没有好用的框架?我之前都是用swtich

[复制链接]
跳转到指定楼层
楼主
ID:646520 发表于 2023-4-27 16:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位大佬好,最近想学习单片机LCD的多级菜单C语言程序设计,大家有没有好用的框架,我之前都是用swtich,每操作一步都会进如另一个case,感觉很臃肿。大家平时都是怎么设计的,可以传授一些相关的经验给我吗?感谢。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:61207 发表于 2023-4-28 09:29 | 只看该作者
用结构体呀
回复

使用道具 举报

板凳
ID:584814 发表于 2023-4-28 10:16 | 只看该作者
直接买个HEX,只有一个文件很清爽
回复

使用道具 举报

地板
ID:123289 发表于 2023-4-28 10:45 | 只看该作者
1、给每个界面设置一个结构参数,用于记录本界面显示的特性、内容、界面序号。
2、设立一个界面序记录器NOW_PAGE,表示当前执行的是哪个界面。
3、设置一个界面层次记录区(如8个单元,可记录8层界面深度):
每新开一个界面时,就记录下这个界面的序号,并将这个界面号存入NOW_PAGE,再指向下个记录号,以便再有新的界面到来使用。注意保存当前记录的界面结构,以便恢复显示。
每退出一个界面时,就将上个记录号存入NOW_PAGE,再将记录号前移一个,如是已到最头,就不移了。
4、程序根据NOW_PAGE的值,调取这个界面的结构参数刷新界面(也即做恢复显示)。
这样就不会乱了,而且前,退自如,并能保证显示正确(需要恢复什么,必须在新界显示前记录于结构中)。
妙不妙?
编程序在于架构如何解决问题,而不是写语句。
回复

使用道具 举报

5#
ID:123289 发表于 2023-4-28 10:47 | 只看该作者
构思界面处理方案,与你用什么语句无关,而是用脑子。画出逻辑框图,看看框图是否解释得通。
回复

使用道具 举报

6#
ID:646520 发表于 2023-4-28 16:30 | 只看该作者
yzwzfyz 发表于 2023-4-28 10:45
1、给每个界面设置一个结构参数,用于记录本界面显示的特性、内容、界面序号。
2、设立一个界面序记录器NO ...

嗯嗯,受教了,感谢。
回复

使用道具 举报

7#
ID:403593 发表于 2023-4-28 19:38 | 只看该作者
用if...else的默默飘过。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表