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

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

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

3天內不再提示

幾種常見嵌入式設備通信協(xié)議

jf_pJlTbmA9 ? 來源:jf_pJlTbmA9 ? 作者:jf_pJlTbmA9 ? 2023-09-18 16:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式設備在運行中需要設置參數(shù),這個工作經常由PC機來實現(xiàn),需要為雙方通信設計協(xié)議,有代表性協(xié)議是如下三種:

wKgaomUD7uSAC9VFAADecO2tKhA435.jpg

從上表可以看到,一般嵌入式設備內存和運算性能都有限,因此,固定二進制是首選通信協(xié)議。

一. 簡單性

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

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

二. 可擴展

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

三. 低耦合

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

四. 穩(wěn)定性

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

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

五. 高效率

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

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

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

六. 易實現(xiàn)

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

七、軟件開發(fā)

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

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

接收不定長的數(shù)據(jù)幀,可以使用狀態(tài)機,當接收到“幀尾數(shù)據(jù)”時向進程發(fā)消息。小心數(shù)據(jù)紊亂和超時異常(數(shù)據(jù)紊亂時需要將狀態(tài)機及時復位,超時一般使用定時器監(jiān)控)。

八、考慮硬件

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

如果通信鏈路是低速總線(如UART一般100kbps),一般接收一字節(jié)產生一次中斷,可以將協(xié)議設計成變長幀,如附錄B。它具備高靈活性,但效率較低。

wKgZomUD7uWAGSQ-AAAW_cdFlIU106.png

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

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

Len:INT8U,本幀的總數(shù)據(jù)長度,在圖4即為64

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

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

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

Cmd:INT16U,數(shù)據(jù)幀的類別

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

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

Data域數(shù)據(jù)結構實例:

wKgaomUD7ueAcEYnAADmtYvDZAU385.jpg

一個基于變長格式的UART通信協(xié)議實例:

wKgZomUD7uiALqdEAAB940enbUg597.jpg

PC與iWL880A(一種無線通信產品,詳見www.rimelink.com)通信幀采用變長格式,如下圖所示。大部分設備(常見為PC機)對于接收以“回車符”的機制很好處理,協(xié)議中的Tail就等于0x0D(換行符)。

審核編輯:彭菁

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

    關注

    5146

    文章

    19598

    瀏覽量

    316243
  • 通信協(xié)議

    關注

    28

    文章

    1023

    瀏覽量

    41049
  • 硬件
    +關注

    關注

    11

    文章

    3473

    瀏覽量

    67342
  • PC機
    +關注

    關注

    2

    文章

    201

    瀏覽量

    29276
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嵌入式常見通信接口/協(xié)議有哪些?

    0引言??嵌入式開發(fā)中,常見通信接口/協(xié)議有SPI,I2C,UART三種,本文先分三個部分對SPI,I2C,UART進行介紹,最后對這三種協(xié)議
    發(fā)表于 10-27 09:14

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

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

    嵌入式系統(tǒng)通信協(xié)議及具體程序實現(xiàn)方法是什么

    嵌入式系統(tǒng)通信協(xié)議及具體程序實現(xiàn)方法是什么
    發(fā)表于 12-20 08:01

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

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

    EPA 通信協(xié)議在μC/OS-II嵌入式系統(tǒng)中的設計與實現(xiàn)

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

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

    傳統(tǒng)的TCP/IP協(xié)議重點在于保證數(shù)據(jù)傳輸?shù)目煽啃约傲髁靠刂疲趯崟r性要求相對較高的嵌入式領域, 其實時性方面的性能顯得不足。為此,對基于TCP/IP協(xié)議嵌入式
    發(fā)表于 09-23 17:55 ?27次下載

    結合內部CAN總線與外部網絡通信協(xié)議嵌入式系統(tǒng)開發(fā)

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

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

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

    在FPGA中實現(xiàn)嵌入式TCP/IP通信協(xié)議

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

    三種常見嵌入式設備通信協(xié)議

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

    單片機與嵌入式系統(tǒng)中的通信協(xié)議

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

    嵌入式開發(fā)常見通信協(xié)議

    本文介紹了幾個可用的物聯(lián)網通信協(xié)議,它們具有不同的性能、數(shù)據(jù)速率、覆蓋范圍、功率和內存,而且每一種協(xié)議都有各自的優(yōu)點和或多或少的缺點。其中一些通信協(xié)議只適合小型家用電器,而其他一些通信協(xié)議
    的頭像 發(fā)表于 02-28 17:03 ?1868次閱讀
    <b class='flag-5'>嵌入式</b>開發(fā)<b class='flag-5'>常見</b><b class='flag-5'>通信協(xié)議</b>

    PC機與嵌入式設備通信協(xié)議設計原則

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

    簡單認識UART通信協(xié)議

    UART(Universal Asynchronous Receiver/Transmitter,通用異步收發(fā)傳輸器)通信協(xié)議是一種常見的串行通信協(xié)議,廣泛應用于計算機、嵌入式系統(tǒng)、傳
    的頭像 發(fā)表于 07-25 18:07 ?2076次閱讀

    ARM嵌入式通信協(xié)議及應用

    隨著科技的飛速發(fā)展,嵌入式系統(tǒng)在各個領域扮演著越來越重要的角色。ARM處理器因其高性能、低功耗的特點,在嵌入式系統(tǒng)中得到了廣泛應用。通信協(xié)議作為嵌入式系統(tǒng)的重要組成部分,對于實現(xiàn)
    的頭像 發(fā)表于 12-28 09:18 ?891次閱讀