欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

硬件產(chǎn)品升級(jí)時(shí)的兼容性問題

麥克泰技術(shù) ? 來源:麥克泰技術(shù) ? 作者:麥克泰技術(shù) ? 2024-01-12 11:08 ? 次閱讀

越來越多的硬件產(chǎn)品,硬件構(gòu)成不僅僅是集成在一塊板子上,而是多塊控制板協(xié)同工作。

此時(shí),就會(huì)涉及到多塊板之間的通信(有線/無(wú)線通信),就會(huì)涉及到到通信協(xié)議。很多時(shí)候,我們都會(huì)自定義一些協(xié)議。

我們之前在也分享一種常用的自定義協(xié)議格式:

分享一種靈活性很高的協(xié)議格式(附代碼例子)

c3d544f2-b0f7-11ee-8b88-92fbcf53809c.png

在多板系統(tǒng)中,會(huì)有以下這些應(yīng)用場(chǎng)景:

每塊板都有OTA升級(jí)的需求。

可能某塊板是一塊公共的板子,其它項(xiàng)目也會(huì)同時(shí)使用,這塊公共板子軟件需要同時(shí)兼容多個(gè)項(xiàng)目。

我們?cè)谲浖^程中,可能會(huì)涉及到板間交互的數(shù)據(jù)的升級(jí),比如新增數(shù)據(jù)。

新增的某個(gè)數(shù)據(jù)屬性上屬于某個(gè)數(shù)據(jù)集合,比如與某個(gè)結(jié)構(gòu)體是同類數(shù)據(jù),理論上為了程序設(shè)計(jì)得更合理些,應(yīng)該把這個(gè)數(shù)據(jù)加在已有的結(jié)構(gòu)體里面。

但是,這可能會(huì)涉及到兼容性問題。

如果直接往結(jié)構(gòu)體里新增數(shù)據(jù),升級(jí)時(shí),有些板子升級(jí)成功了,有些板子沒升級(jí)成功??赡芫蜁?huì)出現(xiàn)數(shù)據(jù)異常導(dǎo)致功能異常。

公共板升級(jí)新增協(xié)議之后,可能就不能完全兼容與其通信的板子。

比如,有一條數(shù)據(jù)叫做設(shè)備信息的數(shù)據(jù)需要在板間通信,設(shè)備信息里包含了:設(shè)備IP、設(shè)備Mac。

#defineMSG_ID_DEV_INFO0x0001

typedefstruct_dev_info
{
chardev_ip[IP_MAX_LEN];
chardev_mac[MAC_MAX_LEN];
}dev_info_t;

此時(shí),有新需求需要再加一個(gè)設(shè)備的sn,這個(gè)數(shù)據(jù)我們應(yīng)該如何加?

如果是項(xiàng)目前中期,這時(shí)候還是在開發(fā)階段,我們可以隨意修改。因?yàn)樵O(shè)備sn也是設(shè)備信息的一部分,可以直接在設(shè)備信息這個(gè)數(shù)據(jù)里添加會(huì)比較合理:

#defineMSG_ID_DEV_INFO0x0001

typedefstruct_dev_info
{
chardev_ip[IP_MAX_LEN];
chardev_mac[MAC_MAX_LEN];
chardev_sn[SN_MAX_LEN];
}dev_info_t;

如果是項(xiàng)目后期,或已經(jīng)上市流通,則就需要考慮兼容性問題了。

針對(duì)這種兼容性問題,有如下解決方案:

方案一:新增的數(shù)據(jù)單獨(dú)走一條數(shù)據(jù)協(xié)議

比如針對(duì)以上例子,可以這么來擴(kuò)展:

#defineMSG_ID_DEV_INFO0x0001
#defineMSG_ID_DEV_SN0x0002

typedefstruct_dev_info
{
chardev_ip[IP_MAX_LEN];
chardev_mac[MAC_MAX_LEN];
}dev_info_t;

typedefstruct_dev_sn
{
chardev_sn[SN_MAX_LEN];
}dev_sn_t;

這種方案雖然能解決問題,但越到后面,程序會(huì)越來越亂,各種數(shù)據(jù)很散亂,很不好維護(hù)。

而且,一開始也不可能把所有數(shù)據(jù)都規(guī)劃得很完美。有沒有什么方法,可以比較合理地?cái)U(kuò)充數(shù)據(jù),并且也能應(yīng)對(duì)這種兼容性問題。

看一下方案二。

方案二:項(xiàng)目設(shè)計(jì)初期,引入一些數(shù)據(jù)序列化庫(kù)。

比如protobuf。

Protocol Buffers,是Google公司開發(fā)的一種數(shù)據(jù)描述語(yǔ)言,類似于XML能夠?qū)⒔Y(jié)構(gòu)化數(shù)據(jù)序列化,可用于數(shù)據(jù)存儲(chǔ)、通信協(xié)議等方面。它不依賴于語(yǔ)言和平臺(tái)并且可擴(kuò)展性極強(qiáng)。

同XML相比,Protocol buffers在序列化結(jié)構(gòu)化數(shù)據(jù)方面有許多優(yōu)點(diǎn):

消息格式升級(jí)和兼容性好

支持跨平臺(tái)多語(yǔ)言

序列化反序列化速度很快

序列化后體積相比Json和XML很小,適合網(wǎng)絡(luò)傳輸

相關(guān)文章:

Protobuf:一種更小、更快、更高效的協(xié)議

干貨 | 項(xiàng)目乏力?nanopb助你一臂之力

干貨 | protobuf-c之嵌入式平臺(tái)使用

如何利用Google的protobuf,來實(shí)現(xiàn)自己的RPC框架

針對(duì)上面的例子,使用protobuf。

原來的數(shù)據(jù):

syntax="proto2";

messagedev_info
{
requiredstringdev_ip=1;
requiredstringdev_mac=2;
}

新增數(shù)據(jù)dev_sn直接新增即可:

syntax="proto2";

messagedev_info
{
requiredstringdev_ip=1;
requiredstringdev_mac=2;
requiredstringdev_sn=3;
}

審核編輯:湯梓紅

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

    關(guān)注

    5096

    文章

    19189

    瀏覽量

    308028
  • 通信協(xié)議
    +關(guān)注

    關(guān)注

    28

    文章

    916

    瀏覽量

    40462
  • 硬件產(chǎn)品
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    1616

原文標(biāo)題:嵌入式中,升級(jí)時(shí)涉及的協(xié)議兼容性問題?

文章出處:【微信號(hào):麥克泰技術(shù),微信公眾號(hào):麥克泰技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    HDMI的接口匹配問題(花屏、與不同電視兼容性問題等)

    HDMI的接口匹配問題,(花屏、與不同電視兼容性問題等)一直是困擾眾多音視頻領(lǐng)域工程師的老大難,有對(duì)這方面有研究的,貢獻(xiàn)下心得。面上看,這類問題最終的表象都集中在電視機(jī)的兼容性問題, 經(jīng)常是在部份
    發(fā)表于 07-06 17:04

    數(shù)據(jù)采集兼容性問題解決方案

    整合眾多特點(diǎn)和性能以解決數(shù)據(jù)采集兼容性問題
    發(fā)表于 09-09 14:23

    DSP的電磁兼容性問題分析

    本文在DSP的電磁兼容性問題方面進(jìn)行了一些探討。
    發(fā)表于 02-03 06:19

    如何解決印制板設(shè)計(jì)上的電磁兼容性問題?

    印制板上的電磁兼容性特點(diǎn)是什么?多層板的電磁兼容性問題有哪些?如何解決印制板設(shè)計(jì)上的電磁兼容性問題?
    發(fā)表于 04-25 06:52

    關(guān)于HDMI兼容性問題的分析

    關(guān)于HDMI兼容性問題的分析
    發(fā)表于 06-02 06:18

    東元電機(jī)F系列產(chǎn)品升級(jí)說明

    東元電機(jī)F系列產(chǎn)品升級(jí)說明1,為了優(yōu)化設(shè)計(jì),增強(qiáng)結(jié)構(gòu)穩(wěn)定性,東元電機(jī)F系列GB2、GB3進(jìn)行升級(jí)升級(jí)后的型號(hào)維持原TEF2、TEGH不變,僅產(chǎn)品編碼5.6更變?yōu)?N、2N。2,A/B
    發(fā)表于 09-01 08:58

    電子、電氣設(shè)備中的電磁兼容性問題

    電子、電氣設(shè)備中的電磁兼容性問題 1. 引 言   20世紀(jì)90年代以后,一種新的(電磁
    發(fā)表于 10-19 09:15 ?1021次閱讀

    PC顯卡急需解決的HDCP兼容性問題

    PC顯卡急需解決的HDCP兼容性問題 HDMI、DVI、DisplayPort等高清媒體內(nèi)容傳輸?shù)陌鏅?quán)保護(hù)機(jī)制HDCP(High-Bandwidth Digital Content Protection)由好萊塢和英特爾(Intel)共同開發(fā),用
    發(fā)表于 11-07 09:37 ?4006次閱讀

    大聯(lián)大推出智能家居整體解決方案,未來產(chǎn)品升級(jí)時(shí)無(wú)需考慮兼容性

    大聯(lián)大旗下友尚推出基于瑞昱半導(dǎo)體(Realtek)技術(shù)的智能家居整體解決方案。此方案采用全球用量最大的ARM Cortex-M MCU核心及廣泛使用的FreeRTOS+LwIP,全系列新產(chǎn)品均能夠向下兼容,未來產(chǎn)品升級(jí)時(shí)無(wú)需考慮
    發(fā)表于 06-02 08:58 ?1232次閱讀
    大聯(lián)大推出智能家居整體解決方案,未來<b class='flag-5'>產(chǎn)品升級(jí)</b>時(shí)無(wú)需考慮<b class='flag-5'>兼容性</b>

    PFC設(shè)計(jì)的電磁兼容性問題與解決方法 (10.1)

    PFC電源設(shè)計(jì)與電感設(shè)計(jì)計(jì)算(十) - PFC設(shè)計(jì)的電磁兼容性問題與對(duì)策(1) 10A
    的頭像 發(fā)表于 04-02 06:01 ?3717次閱讀
    PFC設(shè)計(jì)的電磁<b class='flag-5'>兼容性問題</b>與解決方法 (10.1)

    PFC設(shè)計(jì)的電磁兼容性問題與解決方法 (10.3)

    PFC電源設(shè)計(jì)與電感設(shè)計(jì)計(jì)算(十) - PFC設(shè)計(jì)的電磁兼容性問題與對(duì)策(3) 10C
    的頭像 發(fā)表于 04-02 06:04 ?4075次閱讀
    PFC設(shè)計(jì)的電磁<b class='flag-5'>兼容性問題</b>與解決方法 (10.3)

    PFC設(shè)計(jì)的電磁兼容性問題與解決方法 (10.2)

    PFC電源設(shè)計(jì)與電感設(shè)計(jì)計(jì)算(十) - PFC設(shè)計(jì)的電磁兼容性問題與對(duì)策(2) 10B
    的頭像 發(fā)表于 04-02 06:03 ?4042次閱讀
    PFC設(shè)計(jì)的電磁<b class='flag-5'>兼容性問題</b>與解決方法 (10.2)

    結(jié)合功能和性能解決數(shù)據(jù)采集兼容性問題

    結(jié)合功能和性能解決數(shù)據(jù)采集兼容性問題
    發(fā)表于 05-18 18:33 ?0次下載
    結(jié)合功能和性能解決數(shù)據(jù)采集<b class='flag-5'>兼容性問題</b>

    紅外成像儀開發(fā)難點(diǎn)的兼容性問題

    、醫(yī)療、安防等領(lǐng)域。然而,在紅外成像儀的開發(fā)過程中,兼容性問題是很常見的一個(gè)難點(diǎn)。本文將從多個(gè)方面探討紅外成像儀開發(fā)中的兼容性問題。
    的頭像 發(fā)表于 08-25 10:28 ?836次閱讀
    紅外成像儀開發(fā)難點(diǎn)的<b class='flag-5'>兼容性問題</b>

    音頻線接口的兼容性問題

    音頻線接口的兼容性問題主要涉及以下幾個(gè)方面: 一、接口類型不匹配 音頻線接口有多種類型,如RSA、TRS(大三芯)、XLR(卡儂頭)、RCA(蓮花頭)、同軸接口、光纖接口以及HDMI接口等。不同類
    的頭像 發(fā)表于 10-30 16:05 ?971次閱讀