多按键多界面二维数组表驱动设计

Posted Engineer-Bruce_Yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多按键多界面二维数组表驱动设计相关的知识,希望对你有一定的参考价值。

击上方“嵌入式应用研究院”,选择“置顶/星标公众号

干货福利,第一时间送达!

键盘是我们经常能在嵌入式产品上看到的输入设备之一。

一般情况下,键盘通常会有指定的按键码。根据用户按下的按键来执行一些用户想要执行的功能。因此,这种模式就可以通过switch语句来进行处理。但是,如果当我们设计的应用程序上拥有很多个界面的时候,有些按键只有在特定的界面上才生效的情况下,这时候使用函数指针则会比switch语句更为优雅。在这种情况下,推荐使用函数指针的二维数组的形式来实现,以下是一个很好的例子:

#define PAGE_NUMBER 12
#define KEY_NUMBER  5

int function_f1_op(void);
int function_f2_op(void);
int function_f3_op(void);
int function_f4_op(void);
...
int function_null_op(void);
int function_menu_op(void);
/*跳转表定义*/
static int (*const jump

以上是关于多按键多界面二维数组表驱动设计的主要内容,如果未能解决你的问题,请参考以下文章

多按键多界面二维数组表驱动设计

6.驱动支持多按键操作

数据驱动编程与表驱动法(多if-else结构精简)

数据驱动编程与表驱动法(多if-else结构精简)

成都电气开发:一个利用4个按键快速进行参数设置的方法

C#上位机专题08 - 多窗体与波形显示