一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

如何高效接收與解析單片機(jī)的通信協(xié)議幀

STM32嵌入式開發(fā) ? 來源:RimeLink ? 作者:RimeLink ? 2022-07-05 17:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

通信設(shè)計(jì)中考慮協(xié)議的靈活性,經(jīng)常把協(xié)議設(shè)計(jì)成“不定長度”。

一個(gè)實(shí)例如下圖:銳米LoRa終端的通信協(xié)議幀。

25611622-fc42-11ec-ba43-dac502259ad0.jpg

如果一個(gè)系統(tǒng)接收上述“不定長度”的協(xié)議幀,將會(huì)有一個(gè)挑戰(zhàn)--如何高效接收與解析。

為簡化系統(tǒng)設(shè)計(jì),我們強(qiáng)烈建議您采用“狀態(tài)機(jī)”來解析UART數(shù)據(jù)幀,并且把解析工作放在ISR(中斷服務(wù)程序)完成,僅當(dāng)接收到最后一個(gè)字節(jié)(0x0D)時(shí),再將整個(gè)數(shù)據(jù)幀提交給進(jìn)程處理。

該解析狀態(tài)機(jī)的原理如下圖所示:

256fb7ae-fc42-11ec-ba43-dac502259ad0.jpg

那么ISR處理這個(gè)狀態(tài)機(jī)來得及嗎?答案是:so easy!因?yàn)樗挥?個(gè)動(dòng)作,運(yùn)算量十分?。?/p>

比較接收數(shù)據(jù) -> 更新狀態(tài)變量 -> 存儲(chǔ)接收數(shù)據(jù),C語言僅3條語句,翻譯成機(jī)器指令也不超過10條。

代碼清單如下:

poYBAGLEAwyAWgttAAEM8kVJ9LU126.jpg

poYBAGLEAxSAU29JAAENmZYQzSE033.jpg

pYYBAGLEAxuAUKz4AADWlRn_qbs350.jpg

pYYBAGLEAyKAFVzDAAA5A0XhFJI390.jpg



審核編輯:劉清

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

    關(guān)注

    6067

    文章

    44992

    瀏覽量

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

    關(guān)注

    28

    文章

    1035

    瀏覽量

    41173
  • LoRa技術(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    102

    瀏覽量

    16922

原文標(biāo)題:如何設(shè)計(jì)單片機(jī)的通信協(xié)議?

文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于Vector工具進(jìn)行CAN協(xié)議錯(cuò)誤的分析實(shí)踐

    CAN(ControllerAreaNetwork)協(xié)議是當(dāng)前使用最普遍的車載通信協(xié)議之一,其優(yōu)點(diǎn)不只體現(xiàn)在多主并行、最高達(dá)1Mbit/sec的傳輸速率(針對標(biāo)準(zhǔn)CAN)、基于優(yōu)先級的仲裁機(jī)制以及
    的頭像 發(fā)表于 01-15 10:03 ?581次閱讀
    基于Vector工具進(jìn)行CAN<b class='flag-5'>協(xié)議</b>錯(cuò)誤<b class='flag-5'>幀</b>的分析實(shí)踐

    Dali通信協(xié)議的標(biāo)準(zhǔn)解析

    。 DALI協(xié)議的主要特點(diǎn) 數(shù)字通信 :DALI協(xié)議采用數(shù)字信號(hào)傳輸,提高了信號(hào)的抗干擾能力和傳輸距離。 地址分配 :每個(gè)DALI設(shè)備都有一個(gè)唯一的地址,最多可支持64個(gè)設(shè)備。 雙向通信
    的頭像 發(fā)表于 01-10 10:42 ?1377次閱讀

    總線通信協(xié)議解析及應(yīng)用

    在現(xiàn)代計(jì)算機(jī)系統(tǒng)中,總線通信協(xié)議扮演著至關(guān)重要的角色。它們定義了數(shù)據(jù)如何在處理器、內(nèi)存、輸入/輸出設(shè)備等組件之間傳輸。 總線通信協(xié)議的基本概念 總線通信協(xié)議是一組規(guī)則,它規(guī)定了數(shù)據(jù)在系統(tǒng)總線上的傳輸
    的頭像 發(fā)表于 12-31 10:07 ?1066次閱讀

    常見串口通信協(xié)議 如何設(shè)置串口參數(shù)

    串口通信是一種常見的通信方式,廣泛應(yīng)用于計(jì)算機(jī)、嵌入式系統(tǒng)和各種電子設(shè)備之間。串口通信協(xié)議主要是指在串行通信中,數(shù)據(jù)傳輸?shù)母袷胶鸵?guī)則。 常見串口通信
    的頭像 發(fā)表于 12-27 09:51 ?3422次閱讀

    AUTOSAR通信協(xié)議解析 如何實(shí)現(xiàn)AUTOSAR通信

    通信協(xié)議棧是一個(gè)復(fù)雜的系統(tǒng),它涵蓋了多種通信方式和模塊,以實(shí)現(xiàn)車內(nèi)ECU之間的高效、可靠的數(shù)據(jù)交換。以下是對AUTOSAR通信協(xié)議解析及實(shí)
    的頭像 發(fā)表于 12-17 14:54 ?2834次閱讀

    上位機(jī)通信協(xié)議詳解 嵌入式上位機(jī)設(shè)計(jì)流程

    上位機(jī)通信協(xié)議詳解 上位機(jī)通信協(xié)議是指上位機(jī)(通常是指具有強(qiáng)大計(jì)算能力和數(shù)據(jù)處理能力的計(jì)算機(jī)系統(tǒng))與下位
    的頭像 發(fā)表于 12-04 10:21 ?2991次閱讀

    串口通信協(xié)議解析 串口通信應(yīng)用實(shí)例

    串口通信協(xié)議解析 串口通信協(xié)議是指規(guī)定了數(shù)據(jù)包的內(nèi)容,內(nèi)容包含了起始位、主體數(shù)據(jù)、校驗(yàn)位及停止位,雙方需要約定一致的數(shù)據(jù)包格式才能正常收發(fā)數(shù)據(jù)的有關(guān)規(guī)范。以下是串口通信協(xié)議的介紹: 基
    的頭像 發(fā)表于 11-21 17:03 ?2135次閱讀

    PLC控制系統(tǒng)的通信協(xié)議解析

    在現(xiàn)代工業(yè)自動(dòng)化中,PLC控制系統(tǒng)扮演著至關(guān)重要的角色。它們不僅需要處理復(fù)雜的邏輯控制任務(wù),還需要與其他系統(tǒng)和設(shè)備進(jìn)行通信。為了實(shí)現(xiàn)這一目標(biāo),PLC系統(tǒng)必須遵循一系列的通信協(xié)議。 PLC通信協(xié)議
    的頭像 發(fā)表于 11-08 09:46 ?2614次閱讀

    PROFINET通信協(xié)議是什么

    PROFINET通信協(xié)議是一種專為工業(yè)自動(dòng)化領(lǐng)域設(shè)計(jì)的基于以太網(wǎng)的實(shí)時(shí)通信協(xié)議。以下是對PROFINET通信協(xié)議的詳細(xì)解析,包括其定義、特點(diǎn)、體系結(jié)構(gòu)、工作原理、
    的頭像 發(fā)表于 09-25 18:13 ?5126次閱讀

    SPI通信協(xié)議的基本概念和工作模式

    SPI(Serial Peripheral Interface)通信協(xié)議,即串行外圍設(shè)備接口,是一種高速、全雙工、同步通信總線,由摩托羅拉公司提出并廣泛應(yīng)用。SPI以其高效的數(shù)據(jù)傳輸能力和簡單的硬件
    的頭像 發(fā)表于 09-09 17:04 ?3201次閱讀

    dht11采用什么通信協(xié)議

    廉,非常適合于低成本的項(xiàng)目和簡單的應(yīng)用場景。 DHT11通信協(xié)議概述 DHT11的通信協(xié)議包括以下幾個(gè)關(guān)鍵步驟: 啟動(dòng)信號(hào) :主機(jī)設(shè)備通過拉低數(shù)據(jù)線至少18毫秒來啟動(dòng)通信。 響應(yīng)信號(hào) :DHT11在
    的頭像 發(fā)表于 09-04 09:06 ?5585次閱讀

    #單片機(jī) #人工智能 #pcb設(shè)計(jì) #通信協(xié)議

    通信協(xié)議
    深圳市北天通訊有限公司
    發(fā)布于 :2024年09月03日 09:27:07

    簡單認(rèn)識(shí)UART通信協(xié)議

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

    簡單認(rèn)識(shí)I2C通信協(xié)議

    I2C(Inter-Integrated Circuit)通信協(xié)議是由飛利浦公司(現(xiàn)為恩智浦半導(dǎo)體)開發(fā)的一種簡單、雙向二線制同步串行總線協(xié)議。自1982年發(fā)布以來,I2C協(xié)議因其高效
    的頭像 發(fā)表于 07-25 18:06 ?2619次閱讀

    can標(biāo)準(zhǔn)和擴(kuò)展能否共存

    CAN(Controller Area Network)是一種用于汽車和工業(yè)自動(dòng)化領(lǐng)域的現(xiàn)場總線通信協(xié)議。CAN協(xié)議具有多種格式,包括標(biāo)準(zhǔn)和擴(kuò)展
    的頭像 發(fā)表于 07-24 15:24 ?2948次閱讀