资料介绍
描述
介绍
你想用菜单来装饰你自己的项目吗?
这是一个示例和演示如何使用库mbLib中的 CMBMenu 类创建菜单。它可以很容易地修改。你会发现有两个完整的可执行示例:一个有 LCD 输出,一个没有 LCD 输出,只有串行监视器输出以便于测试。
在此示例中,应创建以下菜单,您可以在其中使用向左、向右、进入和退出进行导航。CMBMenu 类是为易于使用和节省内存而设计的。
1. Foo
1.1 FooA
1.2 FooB
1.2.1 Test1
1.2.2 Test2
2. Bar
2.1 BarA
示范
这个概念
菜单的每个条目都称为“节点”。每个节点都有一个标题、一个层号和一个功能 ID (FID)。
menu title layer function ID
1. Foo 0 1
1.1 FooA 1 2
1.2 FooB 1 3
1.2.1 Test1 2 4
1.2.2 Test2 2 5
2. Bar 0 6
2.1 BarA 1 7
要创建此菜单,您只需在代码中添加节点:
CMBMenu<100> g_Menu;
g_Menu.addNode(0, MenuFoo_pc , 1);
g_Menu.addNode(1, MenuFooA_pc, 2);
g_Menu.addNode(1, MenuFooB_pc, 3);
g_Menu.addNode(2, MenuTest1_pc, 4);
g_Menu.addNode(2, MenuTest2_pc, 5);
g_Menu.addNode(0, MenuBar_pc, 6);
g_Menu.addNode(1, MenuBarA_pc, 7);
就是这样 :) 最后只需调用buildMenu和printMenu即可在串行监视器上查看完整菜单。
const char* info;
g_Menu.buildMenu(info);
g_Menu.printMenu();
对于导航,只需调用left() 、right() 、enter()和exit() 。然后您将获得标题和函数 ID。根据函数 ID,您可以调用子例程。
设置
1.没有 LCD:只需通过 USB 将 Arduino 与计算机连接并从 Arduino IDE 打开串口监视器
2.带液晶显示器:
GND <---> GND
5 V <---> VCC
A4 <---> SDA
A5 <---> SDC

输出
为了演示,使用了 Arduino IDE 的串行监视器(终端)。此处给出了示例输出:

有一个完整的菜单输出,它是在调用printMenu时自动创建并打印的。最后一个数字(标记为黄色)是函数 ID(例如:1.1 FooA, 2 => 函数 ID 在这里是 2)。输出显示按下了哪个键,然后是菜单的输出。菜单文本也显示在 LCD 上。当进入菜单1.2.1 Test1并按回车键时,子例程将被调用,并在此处打印“Function Test1() was called.”。另见上图。
这是在另一个项目中使用此类 CMBMenu 的 LCD 屏幕截图:

这个类背后的想法是一个简单的使用和资源/内存保存代码:所有菜单信息(文本)都存储在 PROGMEM 中。可以为每个菜单条目分配一个功能 ID (FID)。FID 是一个整数。
在github: myLib 上你会找到完整的例子。只需将 myLib 下载到 Arduino 的库目录中。
玩得开心 :)
- 如何创建和使用LabVIEW中的LLB文件 0次下载
- 使用SQL语句创建数据库的实例详细说明 19次下载
- 创建新的数据库和更改SQL Server CE数据库中的数据操作教程免费下载 5次下载
- 如何在Protel 99SE中创建一个新的设计数据库 0次下载
- 如何使用Keil MDK及标准外设库创建STM32工程 26次下载
- Proteus的常用元件列表和元件库详细分类及主窗口菜单中英文对照 0次下载
- 如何使用DSPCB创建元件库 0次下载
- 数据库教程之数据库的创建与管理详细资料免费下载 18次下载
- 系统菜单设计和数据库与表如何进行设计?详细资料免费下载 11次下载
- AN1246中文手册之如何在Microchip图形库中创建控件
- 用于测试单通道CPU中是否发生故障的B类安全软件库程序详细资料概述
- 如何在Microchip图形库中创建控件 2次下载
- Altium designer 创建库元器件教程 0次下载
- JAVA教程之创建与删除数据库中的表 3次下载
- 创建与使用数据库课程 0次下载
- 基于OpenHarmony标准系统的C++公共基础类库案例:rwlock 404次阅读
- 基于OpenHarmony标准系统的C++公共基础类库案例:SafeMap 409次阅读
- OpenHarmony标准系统C++公共基础类库案例:HelloWorld 553次阅读
- 博途用户自定义库的使用-库的编辑及管理 1208次阅读
- DLL文件的创建和测试程序 2319次阅读
- 如何在Matlab中建立属于自己的库 3072次阅读
- 怎么创建SQLite数据库 6050次阅读
- 本地安装并创建MySQL数据库 877次阅读
- 在LabVIEW中创建.net中List的步骤简析 5070次阅读
- IC类器件的元件库如何创建 2102次阅读
- 基于Digipcba平台创建共享元器件库 3291次阅读
- PCB技术:异形敷铜的创建 4260次阅读
- scikit-learn K近邻法类库使用的经验总结 3263次阅读
- AS7.0中快速创建一个ASF项目的步骤详解 1964次阅读
- 创建计算字段的分析 814次阅读
下载排行
本周
- 1NB-IoT芯片厂商的资料说明
- 0.31 MB | 22次下载 | 1 积分
- 2智慧监狱建设的核心终端—智慧监仓屏
- 0.25 MB | 2次下载 | 免费
- 3PC318C016M/D 200V半桥栅极驱动器技术手册
- 0.77 MB | 2次下载 | 免费
- 45.0SMDJ200A单向TVS瞬态抑制二极管规格书
- 0.88 MB | 1次下载 | 免费
- 5PC318C041EQ 200V半桥栅极驱动器技术手册
- 0.50 MB | 次下载 | 免费
- 6PC318C042NM 200V半桥栅极驱动器技术手册
- 0.55 MB | 次下载 | 免费
- 7技嘉H110主板IT8628E_BX IO电路图资料
- 2.61 MB | 次下载 | 1 积分
- 8H110主板CPU PWM芯片ISL95858HRZ-T核心供电电路图资料
- 0.63 MB | 次下载 | 1 积分
本月
- 1元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 241次下载 | 免费
- 2元宇宙底层硬件系列报告
- 13.42 MB | 184次下载 | 免费
- 32022 年展望報告 – 半導體產業
- 1.43 MB | 136次下载 | 免费
- 4晶振与滤波器应用电路《电子工程师必备:元器件应用宝典》
- 1.57 MB | 90次下载 | 免费
- 5汽车电子行业深度解析:智能化与电动化方兴未艾
- 6.47 MB | 71次下载 | 免费
- 6中国DPU行业白皮书
- 23.80 MB | 37次下载 | 免费
- 7晶科鑫代理线-微盟电子2021年度产品目录选型手册
- 14.75 MB | 27次下载 | 免费
- 8NB-IoT芯片厂商的资料说明
- 0.31 MB | 22次下载 | 1 积分
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233089次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191425次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183352次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81602次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73822次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App






创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论