女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

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

dyquk4xk2p3d ? 來源:物聯網IoT技術 ? 2023-11-13 09:33 ? 次閱讀

來源:物聯網IoT技術

一、映射表在串口數據解析中的應用

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

二、映射表在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;
}

審核編輯:湯梓紅
;i++)>
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7630

    瀏覽量

    140201
  • 串口
    +關注

    關注

    14

    文章

    1582

    瀏覽量

    78590
  • 數據結構
    +關注

    關注

    3

    文章

    573

    瀏覽量

    40594

原文標題:C語言映射表在串口數據解析中的應用

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

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    串口數據解析

    串口發送頻率:10HZ三楨數據代表一個信息,三楨數據依次發送,如何保證每一個信息是由對應的三楨數據解析出來的。下面是假設
    發表于 03-31 13:23

    labview串口數據解析

    我用labview進行串口數據解析串口來一串數據例如:2A 3C 1B 23這樣十六進制
    發表于 09-04 20:51

    請問有STM32F4系列的DMA1各通道和數據流的映射表

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

    解析GPS模塊串口發送的數據

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

    imx6ul開發板的靜態地址映射表在哪幾個文件

    驅動編程的時候想了解一下靜態地址映射表在哪幾個文件,網上查詢了解到在內核文件的arch/arm但是進去imx6平臺查找出來的文件不確定,
    發表于 01-10 06:00

    介紹一種簡單的數據解析方法

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

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

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

    C語言深度解析

    C語言深度解析,本資料來源于網絡,對C語言的學習有很大的幫助,有著較為深刻的解析,可能會對讀者有
    發表于 09-28 07:00

    最詳盡的——解析串口通信數據

    最詳盡的——解析串口通信數據
    發表于 12-05 14:56 ?3次下載

    labview串口數據解析

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

    51單片機(STC15W408AS)映射printf函數 串口收發實現

    前提:實現串口收發數據/************************************************* *函數名稱:char putchar(char c
    發表于 11-20 17:51 ?11次下載
    51單片機(STC15W408AS)<b class='flag-5'>映射</b>printf函數 <b class='flag-5'>串口</b>收發實現

    C語言簡單數據解析

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

    LabVIEW映射表是什么?

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

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

    一、映射表串口數據解析的應用 二、映射表
    發表于 10-27 11:16 ?544次閱讀

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

    1 映射表串口數據解析的應用 1.1 數據
    的頭像 發表于 11-28 10:30 ?624次閱讀