色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

嵌入式設備通信協議的特點

STM32嵌入式開發 ? 來源:STM32嵌入式開發 ? 作者:STM32嵌入式開發 ? 2022-08-23 14:14 ? 次閱讀

嵌入式設備而設計的通信協議,通常有如下三種:

766ee9e4-20d8-11ed-ba43-dac502259ad0.png

考慮到嵌入式設備的內存、算力有限,固定二進制是首選通信協議。

下文簡析嵌入式設備通信協議應該有的特點。

簡單性

保證協議是一個簡單的方案,晦澀難懂往往意味著實現困難和容易出錯。協議的結構宜采用平面方式,每個域作用明確,數據域盡可能設計得長度和位置固定,注釋詳盡,文檔清晰,實例豐富,讓人盡快上手和理解。

協議一般都需要以下域:幀頭,長度,幀類型,目標地址,源地址,數據,校驗,幀尾。

串口通信數據包格式如下圖所示。

769643ea-20d8-11ed-ba43-dac502259ad0.png

可擴展

必須保證將來增加功能和更改硬件后協議仍能勝任工作,這往往是通過預留空間來實現,協議的變更應該只是量的增加,不至于引起協議結構的變化。

耦合

理想情況下每個協議包是原子信息,即本協議包不與其他協議包牽連,以防止通訊丟幀和設置牽連帶來的錯誤。

穩定性

協議包長度適宜:太小包含的信息過少,協議包的種類繁多,容易引起通訊混亂和牽連錯誤;太大包含的信息過多,可讀性較差,組幀和解幀的工作困難,還會帶來通訊易受干擾的缺陷,一般協議長度以最小原子性信息為標尺。

協議必須包括校驗機制,以便于接收方判別協議包正確完整接收,如果出錯需要較好的機制來確保通訊成功(如重傳)。

高效率

按信息類型區分協議包類別,如:設置網絡信息參數,設置當前運行參數,可以區分開來,方便程序處理。

將同種操作編碼為一個子集是一種高效手段,如Read操作,編碼為0x0010,Write操作,編碼為0x0020。

數據盡可能設計成同構模式,如果實在有差異,至少將同類型數據放置在一起,這樣程序可以充分利用指針和線性尋址加速處理。

易實現

盡量減少復雜算法的使用,如,通訊鏈路穩定,數據幀的校驗碼可以由CheckSum代替CRC。除非資源非常緊張,否則不要將過多的信息擠壓在一個數據里,因為它會帶來可讀性差和實現困難。

盡可能地讓硬件ISR完成驅動工作,不要讓“進程”參與復雜的時序邏輯,否則處理器將步履蹣跚且邏輯復雜!如:

接收固定長度的數據幀,可以使用DMA,每接收完一幀DMA_ISR向進程發消息。小心處理DMA斷層異常(接收的數據幀長度正常但數據錯誤,數據為上幀的后半部分+本幀的前半部分)。

接收不定長的數據幀,可以使用狀態機,當接收到“幀尾數據”時向進程發消息。小心數據紊亂和超時異常(數據紊亂時需要將狀態機及時復位,超時一般使用定時器監控)。狀態機相關文章請移步此處:談談單片機編程思想——狀態機。

兼容硬件

如果通信鏈路是高速總線(如SPORT可達100Mbps),一般設計成一幀產生一次中斷,它通過長度觸發的DMA來實現,需要將協議設計成固定長度,如附錄A。它具備高效率,但靈活性較差。

如果通信鏈路是低速總線(如UART一般100kbps),一般接收一字節產生一次中斷,可以將協議設計成變長幀,一個基于變長格式的UART通信協議實例:

76abefe2-20d8-11ed-ba43-dac502259ad0.png

它具備高靈活性,但效率較低。

76c7fcd2-20d8-11ed-ba43-dac502259ad0.png

上圖顯示了PC發送數據幀的格式,總長為64字節,是4字節的整倍數,符合絕大部分32位處理器結構體對齊的特性。

0x3C:INT8U,幀頭,可見字符’《’

Len:INT8U,本幀的總數據長度,在圖4即為64

Dst:INT8U,標識目標設備的ID號

Src:INT8U,標識源設備的ID號

Data:56字節的存儲區,內容依賴于具體的通信幀(實例見表2)

Cmd:INT16U,數據幀的類別

CS:INT8U, 對它前面所有數據(62字節)進行8位累加和校驗

0x7D:INT8U, 幀尾,可見字符’}’

Data域數據結構實例:

76dc9c82-20d8-11ed-ba43-dac502259ad0.png

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

    關注

    5082

    文章

    19107

    瀏覽量

    304834
  • 通信協議
    +關注

    關注

    28

    文章

    881

    瀏覽量

    40299
  • 硬件
    +關注

    關注

    11

    文章

    3315

    瀏覽量

    66203

原文標題:嵌入式設備的通信協議特點

文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    嵌入式領域中常用的5種通信協議是什么

    文章目錄嵌入式領域中常用的5種通信協議嵌入式領域中常用的5種通信協議串口協議(UART/USART):串口總線其實就是一種
    發表于 12-14 06:22

    嵌入式系統通信協議及具體程序實現方法是什么

    嵌入式系統通信協議及具體程序實現方法是什么
    發表于 12-20 08:01

    三種常見嵌入式設備通信協議是什么?

    三種常見嵌入式設備通信協議是什么?
    發表于 12-23 08:17

    基于嵌入式Linux的RS485通信協議

    嵌入式Linux平臺上設計并實現一個RS485總線通信協議。該協議在網絡沖突檢測及數據幀結構設計時,利用RS485總線支持點對多點傳輸的特點,將RS485總線傳統的主從
    發表于 04-22 09:05 ?36次下載

    EPA 通信協議在μC/OS-II嵌入式系統中的設計與實現

    本文提出了一種基于μC/OS-II 嵌入式系統的EPA 通信協議的實現方案。簡要介紹了 EPA 通信協議和模型,針對在以μC/OS-II 嵌入式系統為平臺實現EPA
    發表于 05-25 15:02 ?18次下載

    基于嵌入式的實時通信協議棧研究與設計

    傳統的TCP/IP協議重點在于保證數據傳輸的可靠性及流量控制,而在實時性要求相對較高的嵌入式領域, 其實時性方面的性能顯得不足。為此,對基于TCP/IP協議嵌入式
    發表于 09-23 17:55 ?27次下載

    結合內部CAN總線與外部網絡通信協議嵌入式系統開發

    結合內部CAN總線與外部網絡通信協議嵌入式系統開發,網絡通信的技術資料,很好很實用。
    發表于 03-28 10:47 ?10次下載

    基于嵌入式網關的socket編程及通信協議

    基于嵌入式網關的socket編程及通信協議
    發表于 08-31 14:59 ?6次下載
    基于<b class='flag-5'>嵌入式</b>網關的socket編程及<b class='flag-5'>通信協議</b>

    在FPGA中實現嵌入式TCP/IP通信協議

    研究了嵌入式TCP/IP通信協議棧在Xilinx FPGA上的實現,介紹了其軟硬件的系統組成和原理,提出一種實時操作系統上TCP/IP協議棧的高效工作模式,并在Virtex5 FPGA上移植成功。通過建立測試平臺進行數據傳輸測試
    發表于 11-17 17:05 ?8114次閱讀
    在FPGA中實現<b class='flag-5'>嵌入式</b>TCP/IP<b class='flag-5'>通信協議</b>棧

    II嵌入式的EPA通信協議與模型設計

    μC/OS-II是一種占先機制的實時多任務嵌入式操作系統,具有源碼公開、可移植、可固化、可裁剪等特點,已經得到廣泛的應用。相對于同為源碼公開的μClinux,它具有內核小、實時性高等特點,更適合
    發表于 03-16 14:24 ?2929次閱讀
    II<b class='flag-5'>嵌入式</b>的EPA<b class='flag-5'>通信協議</b>與模型設計

    三種常見嵌入式設備通信協議

    嵌入式設備與PC通訊的通信協議設計經驗 嵌入式設備在運行中需要設置參數,這個工作經常由PC機來實現。
    的頭像 發表于 03-06 10:06 ?1.7w次閱讀
    三種常見<b class='flag-5'>嵌入式</b><b class='flag-5'>設備</b><b class='flag-5'>通信協議</b>

    單片機與嵌入式系統中的通信協議

    用途的計算機系統,通常被嵌入到其他設備或系統中,用于實現控制、監測、通信等功能。 在嵌入式系統中,單片機通過與其他設備或系統之間的
    的頭像 發表于 04-19 14:08 ?1201次閱讀

    PC機與嵌入式設備通信協議設計原則

    嵌入式設備在運行中需要設置參數,這個工作經常由PC機來實現,需要為雙方通信設計協議,有代表性協議是如下三種。
    的頭像 發表于 07-06 11:39 ?612次閱讀
    PC機與<b class='flag-5'>嵌入式</b><b class='flag-5'>設備</b><b class='flag-5'>通信協議</b>設計原則

    幾種常見嵌入式設備通信協議

    幾種常見嵌入式設備通信協議
    的頭像 發表于 09-18 16:43 ?1637次閱讀
    幾種常見<b class='flag-5'>嵌入式</b><b class='flag-5'>設備</b><b class='flag-5'>通信協議</b>

    IOT(物聯網)的七大通信協議之Http協議

    一、什么是http協議嵌入式HTTP協議是一種輕量級的通信協議,專為嵌入式系統設計,用于實現設備
    的頭像 發表于 05-24 08:11 ?2513次閱讀
    IOT(物聯網)的七大<b class='flag-5'>通信協議</b>之Http<b class='flag-5'>協議</b>
    主站蜘蛛池模板: 国产人妻人伦精品9| 综合久久久久久久综合网| 乡村教师电影完整版在线观看| 日本久久免费大片| 人妻美妇疯狂迎合| 肉肉高潮液体高干文H| 无套内射无矿码免费看黄| 国产高潮久久精品AV无码| gogogo在线观看| 91chinesevideo| 在线 中文字幕| 亚洲色综合狠狠综合区| 性欧美13处14处破| 无限资源好看片2019免费观看| 色狗综合网| 午夜影院c绿象| 同时和两老师双飞| 无码爽死成人777在线观看网站| 欧美性FREE玩弄少妇| 欧美亚洲韩日午夜| 日本G奶乳液汁| 深爱激情站| 亚洲福利区| 月夜直播视频免费观看| 伊人久久精品AV无码一区| 中文字幕视频在线观看| 最近中文字幕MV免费高清视频8| 9966在线观看免费高清电影| 91区国产福利在线观看午夜| 99久久精品国产国产毛片| 亚洲色婷婷久久精品AV蜜桃久久| WWW国产亚洲精品久久久日本| 国产永不无码精品AV永久| 欧美内射AAAAAAXXXXX| 一本道亚洲区免费观看| 国产AV亚洲精品久久久久软件 | 国产AV综合手机在线观看| 久久久久激情免费观看 | 嗯好大好猛皇上好深用力| 亚洲精品国产字幕久久vr| 欧美性类s0x|