<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

嵌入式開發:映射表在串口數據解析中的應用

小麥大叔 ? 來源:物聯網IoT技術 ? 2023-11-28 10:30 ? 次閱讀

目錄

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

    文章

    984

    瀏覽量

    47061
  • 函數
    +關注

    關注

    3

    文章

    4114

    瀏覽量

    61426
  • 串口數據
    +關注

    關注

    0

    文章

    30

    瀏覽量

    13801
  • 數據結構
    +關注

    關注

    3

    文章

    564

    瀏覽量

    39934

原文標題:嵌入式開發的一個騷操作!你用過嗎?

文章出處:【微信號:knifewheat,微信公眾號:小麥大叔】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    嵌入式開發入門之旅

    、嵌入式開發之初體驗1.  生活嵌入式系統了解嵌入式系統的基本概念,列舉生活嵌入式
    發表于 07-09 16:57

    嵌入式開發入門之旅

    ;nbsp; 119159395(Mary) 課程內容:一、嵌入式開發之初體驗1.  生活嵌入式系統了解嵌入式系統的基本概念,列舉生活
    發表于 07-10 15:59

    嵌入式開發與非嵌入式開發的區別

    通過初步的學習,了解到嵌入式已有的硬件上移植操作系統,操作系統之上做上層應用開發,操作系統之下做底層
    發表于 10-27 06:26

    嵌入式開發是什么意思

    嵌入式開發就是指在嵌入式操作系統下進行開發,包括系統化設計指導下的硬件和軟件以及綜合研發。除暫且分離硬件的EDA研發以外,側重的就是一定
    發表于 10-28 08:35

    嵌入式開發流程

    嵌入式開發流程一般是PC機的Windows系統下安裝Ubuntu虛擬機,搭建嵌入式開發環境及交叉編譯環境,開發完成后,編譯得到bin文件,然后
    發表于 11-05 06:06

    嵌入式開發調試經驗分享

    嵌入式開發過程中的一點調試經驗嵌入式開發最麻煩的現場調試過程或實際運營過程中出現問題很難定位。我實際
    發表于 11-05 08:15

    嵌入式開發流程是怎樣的?

    嵌入式開發環境及交叉編譯環境,開發完成后,編譯得到bin文件,然后Windows下將bin文件通過串口或網絡下發到嵌入式板卡,程序
    發表于 11-08 06:24

    嵌入式開發的優缺點是什么?

    一.嵌入式開發概述:嵌入式已有硬件上移植操作系統,解決軟硬件耦合度高導致的問題。(打個比方:軟件的實現是為了調用open()函數,那么嵌入式開發就是
    發表于 11-08 07:42

    嵌入式開發就業方向的問題

    近幾年來隨著物聯網的快速發展,嵌入式開發技術我們的生活隨處可見,目前嵌入式開發工程師市場上的需求量大,薪資也是水漲船高。上海尚觀科技今
    發表于 11-08 07:58

    對ARM嵌入式開發的概述

    是對ARM嵌入式開發的概述。一、ARM是什么?ARM是全球領先的半導體知識產權 (IP) 提供商。全世界超過95%的智能手機和平板電腦都采用ARM架構。二、ARM的商業模式ARM只負責設計芯...
    發表于 12-14 08:34

    RUST嵌入式開發的應用是什么

    Rust是一種編程語言,它使用戶能夠構建可靠、高效的軟件,尤其是用于嵌入式開發的軟件。它的特點是:高性能:Rust具有驚人的速度和高內存利用率??煽啃裕涸诰幾g過程可以消除內存錯誤。生產效率:優秀
    發表于 12-24 08:34

    嵌入式開發自定義協議的解析與組包相關案例分享

    1、嵌入式開發自定義協議的解析與組包  嵌入式產品開發
    發表于 10-27 17:01

    嵌入式開發串口通訊方案

    嵌入式開發中,經常會用到串口通訊。面對不同應用場景,需要不同的方案。
    的頭像 發表于 05-23 11:48 ?2072次閱讀

    C語言映射表串口數據解析中的應用

    一、映射表串口數據解析中的應用 二、映射表在UI設計中的應用
    發表于 10-27 11:16 ?178次閱讀

    C語言映射表串口數據解析中的應用

    C語言映射表串口數據解析中的應用
    的頭像 發表于 11-13 09:33 ?294次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>