目录
1 映射表在串口数据解析中的应用
1.1 数据结构
1.2 指令、函数映射表
1.3 串口解析函数实现
2 映射表在UI设计中的应用
2.1 数据结构
2.2 函数映射表
2.3 定义两个变量保存当前场景和上一个场景
2.4 按下Up按键 跳转到指定场景current_stage的值根据映射表改变
2.5 场景改变后 根据映射表执行相应的函数Handler
1 映射表在串口数据解析中的应用
1.1 数据结构
typedefstruct
{
charCMD[CMDLen];
unsignedchar(*cmd_operate)(char*data);
}Usart_Tab;
1.2 指令、函数映射表
staticconstUsart_TabInstructionList[CMDMax]= { {"PWON",PowOn}, {"PWOFF",PowOff}, {"HDCP",HdcpOnOff}, {"/V",QueryKaVersion}, {"EDIDUpgrade",UpdataEDID}, {"Psave",Psave}, {"Precall",Precall}, {"Pclear",Pclear}, };
1.3 串口解析函数实现
unsignedcharDataAnalysis(char*buf)
{
unsignedchari,Result;
char*NEXT=NULL;
for(i=0;i
2 映射表在UI设计中的应用
2.1 数据结构
菜单枚举:
typedefenum
{
stage1=0,
stage2,
stage3,
stage4,
stage5,
stage6,
stage7,
stage8,
stage9,
}SCENE;
数据结构:
typedefstruct{
void(*current_operate)();//当前场景的处理函数
SCENEIndex;//当前场景的标签
SCENEUp;//按下Up键跳转的场景
SCENEDown;//按下Down键跳转的场景
SCENERight;//按下Left键跳转的场景
SCENELeft;//按下Right键跳转的场景
}STAGE_TAB;
2.2 函数映射表
STAGE_TABstage_tab[]={
#.operateIndexUpDownLeftRight
{Stage1_Handler,stage1,stage4,stage7,stage3,stage2},
{Stage2_Handler,stage2,stage5,stage8,stage1,stage3},
{Stage3_Handler,stage3,stage6,stage9,stage2,stage1},
{Stage4_Handler,stage4,stage7,stage1,stage6,stage5},
{Stage5_Handler,stage5,stage8,stage2,stage4,stage6},
{Stage6_Handler,stage6,stage9,stage3,stage5,stage4},
{Stage7_Handler,stage7,stage1,stage4,stage9,stage8},
{Stage8_Handler,stage8,stage2,stage5,stage7,stage9},
{Stage9_Handler,stage9,stage3,stage6,stage8,stage7},
};
2.3 定义两个变量保存当前场景和上一个场景
charcurrent_stage=stage1;
charprev_stage=current_stage;
2.4 按下Up按键 跳转到指定场景current_stage的值根据映射表改变
current_stage =stage_tab[current_stage].Up;
2.5 场景改变后 根据映射表执行相应的函数Handler
if(current_stage!=prev_stage)
{
stage_tab[current_stage].current_operate();
prev_stage=current_stage;
}
审核编辑:黄飞
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
嵌入式开发
+关注
关注
18文章
1190浏览量
50273 -
函数
+关注
关注
3文章
4423浏览量
68026 -
串口数据
+关注
关注
1文章
35浏览量
14299 -
数据结构
+关注
关注
3文章
573浏览量
41737
原文标题:嵌入式开发的一个骚操作!你用过吗?
文章出处:【微信号:knifewheat,微信公众号:小麦大叔】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
热点推荐
基于ARM的嵌入式开发
基于ARM的嵌入式开发:华清远见/孙天泽基于ARM的嵌入式开发内容有:ARM简介,基于ARM的嵌入式产品,ARM架构,基于ARM的嵌入式开发。
发表于 10-04 08:49
•83次下载
嵌入式开发好学吗_嵌入式开发职业发展方向是什么
本文首先来了解一下嵌入式前景及薪资待遇,其次解答了嵌入式开发好学不好学的问题,最后阐述了嵌入式开发必会知识以及嵌入式开发职业的四大发展方向,具体的跟随小编一起来了解一下。
嵌入式开发(一):嵌入式开发新手入门
嵌入式开发环境及交叉编译环境,开发完成后,编译得到bin文件,然后在Windows下将bin文件通过串口或网络下发到嵌入式板卡,程序
发表于 10-14 10:58
•79次下载
嵌入式开发资料免费分享
选择,如何看待培训等五大方面讲述了嵌入式开发的学习,也有如何去学习嵌入式开发,和配送嵌入式开发的资料全套,上传在闯客网技术论坛上,加群获取电子工程师资料合集和
发表于 10-21 11:07
•47次下载
嵌入式开发(一):嵌入式开发新手入门(转载后续需要修改补充)
嵌入式开发环境及交叉编译环境,开发完成后,编译得到bin文件,然后在Windows下将bin文件通过串口或网络下发到嵌入式板卡,程序
发表于 11-02 20:06
•17次下载
嵌入式开发:映射表在串口数据解析中的应用
评论