当前位置: 首页 > news >正文

用云主机做网站新闻营销发稿平台

用云主机做网站,新闻营销发稿平台,网站设计收费明细表,网页设计专业服务公司目录 一、嵌入式中的映射表是什么? 二、映射表在串口数据解析中的应用 1. 数据结构 2. 指令、函数映射表 3. 串口解析函数实现 三、映射表在UI设计中的应用 1. 数据结构 2. 函数映射表 3. 定义两个变量保存当前场景和上一个场景 4. 按下Up按键 跳转到指定场…

目录

一、嵌入式中的映射表是什么?

二、映射表在串口数据解析中的应用

1. 数据结构

2. 指令、函数映射表

 3. 串口解析函数实现

三、映射表在UI设计中的应用

1. 数据结构

2. 函数映射表

3. 定义两个变量保存当前场景和上一个场景

4. 按下Up按键 跳转到指定场景current_stage的值根据映射表改变

5. 场景改变后 根据映射表执行相应的函数Handler

(* ̄︶ ̄)创作不易!期待你们的 点赞、收藏和评论喔。  


一、嵌入式中的映射表是什么?

在嵌入式系统开发中,映射表(Lookup table)是一种常见的数据结构,用于将输入值(通常是一个或多个离散的输入)映射到对应的输出值。它是一种预先计算和存储的数据表格,可以快速查找和获取对应的输出值,而无需进行复杂的计算。

映射表通常以数组或者哈希表的形式存储,其中输入值被用作索引或关键字,而与之对应的输出值存储在相应的位置上。当系统需要根据给定的输入值获取对应的输出时,只需通过查询映射表即可获得结果,无需进行繁琐的计算过程。

在嵌入式系统中,映射表常用于优化算法信号处理数据转换等场景。通过使用映射表,可以提高系统响应速度、降低功耗,并且减少代码的复杂性。

需要注意的是,映射表的设计和填充要根据具体应用场景来进行,确保映射表能够准确地满足系统需求,并且占用的内存空间不超过系统的限制。此外,在使用映射表时还需要考虑数据的精度以及表格的更新机制,以保证系统的准确性和可靠性。

 

二、映射表在串口数据解析中的应用

1. 数据结构

typedef struct 
{char CMD[CMDLen];unsigned char (*cmd_operate)(char *data);
}Usart_Tab;

2. 指令、函数映射表


static const Usart_Tab InstructionList[CMDMax]=
{{"PWON",PowOn},{"PWOFF",PowOff},{"HDCP",HdcpOnOff},{"/V",QueryKaVersion},{"EDIDUpgrade",UpdataEDID},{"Psave",Psave},{"Precall",Precall},{"Pclear",Pclear},
};

 3. 串口解析函数实现


unsigned char DataAnalysis(char *buf)
{unsigned char i,Result;char *NEXT=NULL;for(i=0;i<CMDMax;i++){NEXT=StrCmp(buf,(char*)InstructionList[i].CMD);if(NEXT!=NULL){usartfuncp=InstructionList[i].cmd_operate;Result=(*usartfuncp)(NEXT);}}return Result;
}

 

三、映射表在UI设计中的应用

1. 数据结构

typedef enum
{stage1=0,stage2,stage3,stage4,stage5,stage6,stage7,stage8,stage9,
}SCENE;

typedef struct {void (*current_operate)(); //当前场景的处理函数SCENE Index;               //当前场景的标签SCENE Up;                  //按下Up键跳转的场景SCENE Down;                //按下Down键跳转的场景SCENE Right;               //按下Left键跳转的场景SCENE Left;                //按下Right键跳转的场景
}STAGE_TAB;

2. 函数映射表


STAGE_TAB stage_tab[]={#.    operate       Index    Up     Down    Left   Right   {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},
};

3. 定义两个变量保存当前场景和上一个场景

char current_stage=stage1;
char prev_stage=current_stage;

4. 按下Up按键 跳转到指定场景current_stage的值根据映射表改变


current_stage =stage_tab[current_stage].Up;

5. 场景改变后 根据映射表执行相应的函数Handler


if(current_stage!=prev_stage)
{stage_tab[current_stage].current_operate();prev_stage=current_stage;
}


(* ̄︶ ̄)创作不易!期待你们的 点赞收藏评论喔。  

http://www.mmbaike.com/news/82739.html

相关文章:

  • 宁夏政务大厅城乡建设厅口网站厦门seo招聘
  • 深圳做响应式网站公司住房和城乡建设部
  • wordpress相关文章小工具seo教程排名第一
  • 商标交易北京seo外包公司要靠谱的
  • 建立一个网站需要多久广告公司名称
  • 腾讯学生服务器做网站seo外包
  • 专业设计企业网站seo是什么服务
  • 比如做百度知道 .html,这些都是我们不可控制的网站!谷歌三件套下载
  • 赛门仕博做网站怎么样百度点击优化
  • 安阳市建设安全监督站网站英文网站seo发展前景
  • 钦州网站建设排名搜索引擎优化的要点
  • 网站开发语言在线检测国外网站开发
  • 自己做自己的私人网站网络公司网站建设
  • python做网站教程网站模版
  • 什么是网站的域名5118网站查询
  • 租空间做网站需要多少钱seo网络优化师招聘
  • wix做的网站在国内访问不了seo技术培训中心
  • 手机网站开发视频百度云网盘下载
  • 地下城钓鱼网站如何做设计师必备的6个网站
  • 网站开发调用别人网站的组件海外免费网站推广
  • 网站上循环滚动的友情链接怎么做海外推广是做什么的
  • 路由器做网站主机要备案吗域名seo查询
  • 郑州郑州网站建设河南做网站公司哪家好销售技巧和话术
  • WordPress配置七牛云全网seo
  • 网站推广网站关键词排名怎么做竞价排名深度解析
  • 中国网站设计模板网络营销方式有几种
  • 华为公司网站建设方案模板搜索网站排名优化
  • 三个字公司名字大全 必过seo网站推广简历
  • 国内ui网站有哪些张家界网站seo
  • 互联网公司有国企吗seo关键词排名优化制作