打印
[AVR单片机]

AVR实现LCD菜单功能问题

[复制链接]
1768|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
unsigned char key_fun_index = 0 ;
/***********菜单结构************************************/
void (*key_fun)();
typedef struct
{
        unsigned char key_index;
        unsigned char key_enter;
        unsigned char key_return;
        unsigned char key_up;
        unsigned char key_down;
        void (*menu_fun)();
}  state;
/*******一级菜单列表*********/
void state0(void)
{       
}
void state1(void)
{
}
void state2(void)
{
}
void state3(void)
{
}
void state4(void)
{
}
void state5(void)
{
}
state const key_tab[30]=
{
        {0,8,0,7,1,(*state0)},
        {1,1,1,0,2,(*state1)},
        {2,9,2,1,3,(*state2)},
        {3,15,3,2,4,(*state3)},
        {4,21,4,3,5,(*state4)},
        {5,16,5,4,6,(*state5)},//1级菜单
};
void switch_menu(unsigned char key)
{
        switch(key)
        {
                case 0 :
                {
                        key_fun_index = key_tab[key_fun_index].key_enter;这句什么意思啊
                        break;
                }
                case 1 :
                {
                        key_fun_index = key_tab[key_fun_index].key_return;
                        break;
                }
                case 2 :
                {
                        key_fun_index = key_tab[key_fun_index].key_up;
                        break;
                }
                case 3 :
                {
                        key_fun_index = key_tab[key_fun_index].key_down;
                        break;
                }
        }
        key_fun = key_tab[key_fun_index].menu_fun;这句什么意思??
        (*key_fun)();
}
我不懂的地方已经表明了,请前辈们详细的解释一下。。。。。

相关帖子

沙发
huangxz| | 2014-8-15 13:41 | 只看该作者
这个是取得函数指针

使用特权

评论回复
板凳
ayb_ice| | 2014-8-15 16:38 | 只看该作者
tey_tab没有定义

使用特权

评论回复
地板
ayb_ice| | 2014-8-15 16:39 | 只看该作者
应该就是个函数指针赋值

使用特权

评论回复
5
qq4988| | 2014-8-19 12:55 | 只看该作者
应该是第个菜单项对就的功能码。你的程序不全,猜不出来的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

41

帖子

1

粉丝