找回密码
 立即注册

QQ登录

只需一步,快速开始

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

关于51单片机多级菜单的一点点心得

  [复制链接]
跳转到指定楼层
楼主
ID:35471 发表于 2015-6-9 21:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    用了4天做了个简单的电子钟。MCU:STC89C52RC,自带字库的12864液晶显示,没用画图功能。前三天都在痛苦的折腾二级菜单,从网上找了大量的资料,大部分都说用数据结构里的树来实现。无奈水平有限,看不懂,也不可能短时间内搞明白什么链表,树。终于在昨天下午想出来怎么用简单的switch case分支实现。
    简单来说就是先确定你有几个界面,比如我的开机后显示时间,是界面0,按菜单键后出来菜单界面,是界面2,3个选项,分别对应界面3,4,5。然后用个大的switch()case语句。我用cur_level定义界面编号,switch(cur_level){}判断在不同界面下执行不同的函数。比如我在显示时间的界面时,cur_level=0;
switch(cur_level){
    case 0:
        key=0;
        key=key_scan();
        if(key==1)//按下菜单键
        {
            main_menu();//执行菜单显示函数,只执行一次
            cur_level=1;//跳到菜单界面
        }
        break;
    case 1:
        key=0;
        key=key_scan();//在菜单界面扫描按键
        switch(key){
            case 1://1为确定键,跳入菜单界面选项一
                chang_time();//执行修改时间的函数
                cur_level=2;//跳到界面2,主要执行修改时间的函数
                break;//12864液晶跳转页面需要清屏,使用时需注意
                         //还有其他细节东西,需要自己根据实际情况进行调节
               ... ...
               ... ...
        }
        break;
}
//简单的举了个例子,不同界面之间就像这样跳转,比什么链表的容易理解多了。当然如果以后学会高端的会不屑这样,但我觉得对新手来说,
能用这种方法解决实际问题也是很大的收获。
这算是技术贴吧,第一次发,写的不好请见谅。

评分

参与人数 3黑币 +65 收起 理由
binyv + 5
1050531811 + 10 非常的好。本人也是菜鸟。看到试试看~!
admin + 50 回帖助人的奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏5 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:35471 发表于 2015-6-10 09:48 | 只看该作者
昨天图没传上来,今天补上~
回复

使用道具 举报

板凳
ID:82781 发表于 2015-6-12 01:17 | 只看该作者
二十出头 发表于 2015-6-10 09:48
昨天图没传上来,今天补上~

楼主大师你的经验很值得我学习 期待您的图片,,编辑原来的帖子  或者在回帖框的右侧 点击“高级模式” 可以上图呢。。
回复

使用道具 举报

地板
ID:84147 发表于 2015-10-1 22:31 | 只看该作者
最近也在为多级菜单如何实现而烦恼,求指教啊
回复

使用道具 举报

5#
ID:106678 发表于 2016-3-10 13:11 | 只看该作者
二十出头 发表于 2015-6-10 09:48
昨天图没传上来,今天补上~

求完整的程序
回复

使用道具 举报

6#
ID:152322 发表于 2017-7-16 01:27 | 只看该作者
恩。感觉可以用。
回复

使用道具 举报

7#
ID:387860 发表于 2018-8-31 12:18 | 只看该作者
有没有具体项目发上来学习学习
回复

使用道具 举报

8#
ID:416049 发表于 2018-11-1 19:55 | 只看该作者
有完整程序吗?
回复

使用道具 举报

9#
ID:431327 发表于 2018-11-27 11:40 | 只看该作者
大概能懂,再详细点就更好了
回复

使用道具 举报

10#
ID:440869 发表于 2018-12-6 14:07 | 只看该作者
求完整程序 谢谢楼主
回复

使用道具 举报

11#
ID:755941 发表于 2020-5-24 13:13 | 只看该作者
求程序谢谢
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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