您的位置 首页 芯闻

单片机c言语中菜单体系源码剖析

最近在学习单片机的菜单系统时,发现有这么一些代码,定义了4个按键,确认键,返回键,上键,下键,先贴出来在vc里边建的,先定义一个结构

最近在学习单片机菜单体系时,发现有这么一些代码,界说了4个按键,承认键,回来键,上键,下键,先贴出来在vc里面建的,先界说一个结构体KbdTabStruct,在用结构体界说一个const型的数组KBD[],那么数组的每一个成员对应的本来结构体的数则是它的初始化值,而且这个值初始化后就建立,今后不再改动。比如说KBD[0].KeyCurrentIndex所对应的则是数组table中成员0 的值,这些值便是它的初始化值,相当于KBD[0].KeyCurrentIndex=0,但假如这样写N层的菜单,如此界说必定费事,所以用这样的数组完成。

int main()
{
typedef struct
{
u8 KeyCurrentIndex;//当时状况索引号
u8 KeyEnterState;//按下【enter】键时转向的索引号
u8 KeyCancelState;//按下【cancel】键时转向的索引号
u8 KeyUpState;//按下【up】键时转向的索引号
u8 KeyDownState;//按下【down】键时转向的索引号
void (*CurrentOperate)(); //当时状况下履行的功用操作
}KbdTabStruct;

const KbdTabStruct KBD[]=
{
{0,1,2,3,4,(*main)},
{6,7,8,9,10,(*main)},
{0,1,2,3,4,,(*main)},
{0,1,2,3,4,(*main)},
};
printf(“%d”,KBD[0].KeyCurrentIndex);
printf(“%d”,KBD[0].KeyEnterState);
printf(“%d”,KBD[0].KeyCancelState);
printf(“%d”,KBD[0].KeyUpState);
printf(“%d”,KBD[0].KeyDownState);
printf(“%d”,KBD[1].KeyCurrentIndex);
printf(“%d”,KBD[1].KeyEnterState);
printf(“%d”,KBD[1].KeyCancelState);
printf(“%d”,KBD[1].KeyUpState);
printf(“%d”,KBD[1].KeyDownState);
printf(“%5s”,KBD[0].CurrentOperate);

}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/xinwen/257197.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部