在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語言映射表在串口數(shù)據(jù)解析中的應(yīng)用

dyquk4xk2p3d ? 來源:物聯(lián)網(wǎng)IoT技術(shù) ? 2023-11-13 09:33 ? 次閱讀

來源:物聯(lián)網(wǎng)IoT技術(shù)

一、映射表在串口數(shù)據(jù)解析中的應(yīng)用

1、數(shù)據(jù)結(jié)構(gòu)

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

2、指令、函數(shù)映射表

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

3、串口解析函數(shù)實(shí)現(xiàn)

unsigned char DataAnalysis(char *buf)
{
  unsigned char i,Result;
  char *NEXT=NULL;
  for(i=0;i

二、映射表在UI設(shè)計(jì)中的應(yīng)用

1、數(shù)據(jù)結(jié)構(gòu)

菜單枚舉:

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

數(shù)據(jù)結(jié)構(gòu):

typedef struct {
  void (*current_operate)(); //當(dāng)前場景的處理函數(shù)
  SCENE Index;               //當(dāng)前場景的標(biāo)簽
  SCENE Up;                  //按下Up鍵跳轉(zhuǎn)的場景
  SCENE Down;                //按下Down鍵跳轉(zhuǎn)的場景
  SCENE Right;               //按下Left鍵跳轉(zhuǎn)的場景
  SCENE Left;                //按下Right鍵跳轉(zhuǎn)的場景
}STAGE_TAB;

2、函數(shù)映射表

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、定義兩個(gè)變量保存當(dāng)前場景和上一個(gè)場景

char current_stage=stage1;
char prev_stage=current_stage;

4、按下Up按鍵 跳轉(zhuǎn)到指定場景current_stage的值根據(jù)映射表改變

current_stage =stage_tab[current_stage].Up;

5、場景改變后 根據(jù)映射表執(zhí)行相應(yīng)的函數(shù)Handler

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

審核編輯:湯梓紅
;i++)>
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7624

    瀏覽量

    139434
  • 串口
    +關(guān)注

    關(guān)注

    14

    文章

    1578

    瀏覽量

    78204
  • 數(shù)據(jù)結(jié)構(gòu)

    關(guān)注

    3

    文章

    573

    瀏覽量

    40467

原文標(biāo)題:C語言映射表在串口數(shù)據(jù)解析中的應(yīng)用

文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    串口數(shù)據(jù)解析

    串口發(fā)送頻率:10HZ三楨數(shù)據(jù)代表一個(gè)信息,三楨數(shù)據(jù)依次發(fā)送,如何保證每一個(gè)信息是由對應(yīng)的三楨數(shù)據(jù)解析出來的。下面是假設(shè)
    發(fā)表于 03-31 13:23

    labview串口數(shù)據(jù)解析

    我用labview進(jìn)行串口數(shù)據(jù)解析,串口來一串數(shù)據(jù)例如:2A 3C 1B 23這樣十六進(jìn)制
    發(fā)表于 09-04 20:51

    請問有STM32F4系列的DMA1各通道和數(shù)據(jù)流的映射表

    各位大神,求助STM32F4系列的DMA1各通道和數(shù)據(jù)流的映射表!
    發(fā)表于 04-16 14:42

    解析GPS模塊串口發(fā)送的數(shù)據(jù)

    / NMEA0183-C 的庫我把它遷移到我的碼云里了,方便大家下載遷移到碼云的NMEA0183-CKEIL C51實(shí)現(xiàn)了GPS
    發(fā)表于 07-16 06:45

    怎樣GCC中使用printf重映射打印的數(shù)據(jù)串口上呢

    KEIL的重映射方式及原理分別是什么?GNU下的?函數(shù)流重映射方式有哪幾種?怎樣GCC中使用printf重映射打印的
    發(fā)表于 12-02 07:05

    imx6ul開發(fā)板的靜態(tài)地址映射表在哪幾個(gè)文件

    驅(qū)動編程的時(shí)候想了解一下靜態(tài)地址映射表在哪幾個(gè)文件,網(wǎng)上查詢了解到在內(nèi)核文件的arch/arm但是進(jìn)去imx6平臺查找出來的文件不確定,
    發(fā)表于 01-10 06:00

    介紹一種簡單的數(shù)據(jù)解析方法

    C語言簡單數(shù)據(jù)解析? 嵌入式開發(fā)通過串口等傳輸
    發(fā)表于 02-28 06:15

    STM32H7 DMA請求映射表記錄在哪里可以找到呢?

    STM32H7 DMA 請求映射表記錄在哪里?我們想在 USART1 RX 和 TX 上使用 DMA。 STM32H7 的 STm32Cube ,例如
    發(fā)表于 01-04 08:04

    C語言深度解析

    C語言深度解析,本資料來源于網(wǎng)絡(luò),對C語言的學(xué)習(xí)有很大的幫助,有著較為深刻的解析,可能會對讀者有
    發(fā)表于 09-28 07:00

    最詳盡的——解析串口通信數(shù)據(jù)

    最詳盡的——解析串口通信數(shù)據(jù)
    發(fā)表于 12-05 14:56 ?2次下載

    labview串口數(shù)據(jù)解析

    本文主要對labview串口數(shù)據(jù)解析進(jìn)行了分析。首先需要調(diào)用VISAConfigureSerialPort完成串口參數(shù)的設(shè)置,包括串口資源分
    發(fā)表于 01-15 15:21 ?5.9w次閱讀
    labview<b class='flag-5'>串口</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>解析</b>

    C語言簡單數(shù)據(jù)解析

    C語言簡單數(shù)據(jù)解析? 嵌入式開發(fā)通過串口等傳輸
    發(fā)表于 01-13 15:17 ?8次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>簡單<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>解析</b>

    LabVIEW映射表是什么?

    了解映射表的概念之前,我們需要先明確映射的概念,映射是一個(gè)數(shù)學(xué)名詞,它指的是集合與集合之間的一種對應(yīng)關(guān)系:集合A的每一個(gè)元素都在集合B
    的頭像 發(fā)表于 07-21 10:14 ?6247次閱讀
    LabVIEW<b class='flag-5'>中</b>的<b class='flag-5'>映射表</b>是什么?

    C語言映射表串口數(shù)據(jù)解析的應(yīng)用

    一、映射表串口數(shù)據(jù)解析的應(yīng)用 二、映射表
    發(fā)表于 10-27 11:16 ?509次閱讀

    嵌入式開發(fā):映射表串口數(shù)據(jù)解析的應(yīng)用

    1 映射表串口數(shù)據(jù)解析的應(yīng)用 1.1 數(shù)據(jù)
    的頭像 發(fā)表于 11-28 10:30 ?554次閱讀
    主站蜘蛛池模板: 成人免费视频一区 | 亚洲免费成人网 | 久久天天 | 777欧美| 日韩一级免费毛片 | 久久精品国产99久久72 | 亚洲精品卡1卡二卡3卡四卡 | 一区二区三区在线观看免费 | 正在播放91大神调教偷偷 | 国产拍拍视频 | 久草视频这里只有精品 | 久久这里只有精品1 | 热99在线视频 | 天天插天天透 | 浮荡视频在线观看免费 | 亚洲日韩色综合视频 | 国产看午夜精品理论片 | 国产精品漂亮美女在线观看 | 日本三级日本三级日本三级极 | 国产成人精品午夜二三区 | 亚洲成a人片在线观看尤物 亚洲成a人片在线观看中 | 欧美一区二区三区在线观看 | 影音先锋午夜资源网站 | 黄色男人的天堂 | se在线播放 | 井野雏田小樱天天被调教 | 色在线播放 | 无毒不卡在线播放 | 人成网站在线观看 | 久久精品亚瑟全部免费观看 | 在线观看网站国产 | 中文字幕一区二区三区四区 | 日本与大黑人xxxx | 午夜欧美在线 | 福利片在线播放 | 日韩亚洲人成在线综合 | 69自拍视频 | 天天插天天射天天干 | 亚洲区 欧美区 | 美女被视频网站在线看九色 | 四虎sihu新版影院亚洲精品 |