91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

消息協(xié)議如何提高數(shù)據(jù)傳輸?shù)目煽啃?/h1>

串行端口PIC與其他設(shè)備通信的最簡單方法之一。但是,事件串行端口存在缺陷,因此在本教程中,我們將了解消息協(xié)議如何提高數(shù)據(jù)傳輸?shù)目煽啃浴?/p>

示意圖

原始數(shù)據(jù)傳輸

現(xiàn)代微控制器通常內(nèi)置許多設(shè)備接口外設(shè),包括I2C,SPI,UART和能夠。雖然I2C和SPI專用于器件,并且嚴(yán)重依賴于選擇信號(hào)或啟動(dòng)/停止信號(hào),但UART更加自由。 UART的最大缺點(diǎn)之一是缺少時(shí)鐘信號(hào),這可能導(dǎo)致發(fā)送器或接收器的時(shí)鐘漂移(導(dǎo)致波特差異),幀錯(cuò)誤,甚至當(dāng)其中一個(gè)緩沖器出現(xiàn)溢出錯(cuò)誤方滿了。當(dāng)然,這些問題是使用定時(shí)器,監(jiān)視器和事件容易克服的相對(duì)性。但是,與I2C和SPI不同,串行連接在一種特定情況下更常見:可移動(dòng)硬件。 I2C和SPI器件通常是直接焊接到主電路板或永久連接到它們的IC。同時(shí),這些設(shè)備是主控制器的子設(shè)備,因此無法自行啟動(dòng)數(shù)據(jù)傳輸。

想象一下PIC和計(jì)算機(jī)通過串行連接進(jìn)行通信,其中每個(gè)設(shè)備都可以發(fā)送命令或數(shù)據(jù)到另一個(gè)設(shè)備。這樣的系統(tǒng)可以用普通的消息協(xié)議輕松實(shí)現(xiàn),其中發(fā)送的第一個(gè)字節(jié)代表命令,后面的字節(jié)代表該命令的數(shù)據(jù)。只要沒有中斷,該系統(tǒng)就可以正常運(yùn)行。但是,如果計(jì)算機(jī)在發(fā)送命令后傳輸數(shù)據(jù)字節(jié)的一半時(shí)崩潰并重新啟動(dòng)會(huì)發(fā)生什么?好吧,我們的程序?qū)⒅匦聠?dòng)并嘗試發(fā)送命令字節(jié)以啟動(dòng)數(shù)據(jù)傳輸,但命令字節(jié)將被PIC解釋為數(shù)據(jù)字節(jié),因?yàn)樗匀黄谕粋€(gè)數(shù)據(jù)字節(jié)。這會(huì)導(dǎo)致PIC產(chǎn)生錯(cuò)誤,因?yàn)樗x取的字節(jié)可能會(huì)產(chǎn)生意外結(jié)果。但這不僅僅是UART的一個(gè)問題;任何可能被終止的連接,無法知道連接已被終止,也可能崩潰。解決方案是使用消息協(xié)議!

我們的消息協(xié)議:DHP - DIY黑客協(xié)議

確保命令始終正確處理,命令字節(jié)值將是唯一的。對(duì)于我們的系統(tǒng),我們將有以下命令:

0x00 - 無操作

0x01 - 請(qǐng)求數(shù)據(jù)

0x02 - 寫數(shù)據(jù)

0x03 - 數(shù)據(jù)結(jié)束

0x04 - 重啟(發(fā)生錯(cuò)誤或失?。?/p>

作為一個(gè)簡單的例子,如果我們想通過計(jì)算機(jī)向PIC發(fā)送一些數(shù)據(jù),我們必須首先發(fā)送0x02,然后發(fā)送所有數(shù)據(jù),然后發(fā)送數(shù)據(jù)結(jié)束字節(jié)。如果傳輸中斷并且計(jì)算機(jī)嘗試重新發(fā)送數(shù)據(jù),它將再次發(fā)送整個(gè)數(shù)據(jù)包。 PIC將正確解釋命令字節(jié)并意識(shí)到正在發(fā)送新數(shù)據(jù)包。但是,如果我們的數(shù)據(jù)包含0,1,2,3或4,會(huì)發(fā)生什么? PIC會(huì)將這些解釋為命令字節(jié),因此會(huì)發(fā)生致命錯(cuò)誤。那么,我們?nèi)绾谓鉀Q這個(gè)問題?

雖然不是最有效的方法,但我們可以用其他形式表示我們的數(shù)據(jù)而不是原始字節(jié)值。一種方法是將我們的數(shù)據(jù)表示為十六進(jìn)制形式的ASCII字符,以便兩個(gè)ASCII字節(jié)代表一個(gè)字節(jié)的數(shù)據(jù)。例如,F(xiàn)F表示255,其中00表示0.因此,我們的數(shù)據(jù)字節(jié)永遠(yuǎn)不能與命令字節(jié)相同,并且通過使用ASCII編碼的十六進(jìn)制字節(jié),理論上我們可以有多達(dá)240個(gè)命令字節(jié)(留下16個(gè)十六進(jìn)制字符用于數(shù)據(jù))。使用ASCII編碼數(shù)據(jù)的缺點(diǎn)是我們有效地將數(shù)據(jù)速率減半,命令字節(jié)進(jìn)一步降低了速度。但與此同時(shí),系統(tǒng)的可靠性也得到了顯著提高。

數(shù)據(jù)完整性怎么樣?我們可以通過在數(shù)據(jù)包中添加校驗(yàn)和來實(shí)現(xiàn)這一點(diǎn),這樣接收方就可以確保數(shù)據(jù)完好無損。一種簡單的方法是對(duì)收到的所有字節(jié)進(jìn)行異或,并將其用作校驗(yàn)和。如果任何一個(gè)位被誤讀,這將顯示在XOR校驗(yàn)和中。如果同一列中的兩個(gè)位被誤讀,則校驗(yàn)和保持不變,因此XOR僅對(duì)單位錯(cuò)誤有效(但這些是最常見的)。

示例包

編寫數(shù)字92(十六進(jìn)制0x5C)

從設(shè)備讀取(TX設(shè)備)請(qǐng)求數(shù)據(jù),RX設(shè)備發(fā)送請(qǐng)求的數(shù)據(jù))

的構(gòu)建的的

該項(xiàng)目可以使用許多不同的電路構(gòu)造技術(shù)構(gòu)建,包括條形板,矩陣板,面包板和PCB。在這個(gè)例子中,我使用了在CNC機(jī)床上制造的PCB(通過隔離布線),但我正在考慮回到化學(xué)過程,原因?qū)⒃诤竺娴奈恼轮杏懻摗?/p>

這也是我第一個(gè)包含使用XYZ da Vinci Jr. 3D打印機(jī)制作的自定義項(xiàng)目框的項(xiàng)目。設(shè)計(jì)本身(痛苦地)在Google SketchUp中制作,然后由于STL導(dǎo)出器插件導(dǎo)出為STL文件。然后,STL文件在XYZmaker中導(dǎo)入并打印。雖然這個(gè)項(xiàng)目盒不使用螺絲,但未來的設(shè)計(jì)將會(huì)如此。雖然3D打印的型號(hào)可能價(jià)格昂貴(這個(gè)盒子使用價(jià)值約1.00美元的塑料),但它是一種定制設(shè)計(jì),可以制作近乎完美的功能,如切口和孔。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    投入式水位計(jì)數(shù)據(jù)傳輸方式解析:支持遠(yuǎn)程監(jiān)控嗎?

    在現(xiàn)代巖土工程與水利工程的安全監(jiān)測中,數(shù)據(jù)的實(shí)時(shí)傳輸可靠性至關(guān)重要。投入式水位計(jì)作為核心監(jiān)測設(shè)備,其數(shù)據(jù)傳輸方式直接決定了整個(gè)監(jiān)測系統(tǒng)
    的頭像 發(fā)表于 12-18 14:10 ?273次閱讀
    投入式水位計(jì)<b class='flag-5'>數(shù)據(jù)傳輸</b>方式解析:支持遠(yuǎn)程監(jiān)控嗎?

    電能質(zhì)量在線監(jiān)測裝置與GIS系統(tǒng)集成后,如何保證數(shù)據(jù)傳輸的實(shí)時(shí)和穩(wěn)定性?

    電能質(zhì)量監(jiān)測裝置與 GIS 系統(tǒng)集成后,數(shù)據(jù)傳輸需同時(shí)滿足毫秒級(jí)響應(yīng)和99.99% 可靠性的嚴(yán)苛要求。保障機(jī)制主要從以下四個(gè)維度構(gòu)建: 一、通信協(xié)議數(shù)據(jù)傳輸機(jī)制優(yōu)化 1.
    的頭像 發(fā)表于 12-17 15:18 ?356次閱讀
    電能質(zhì)量在線監(jiān)測裝置與GIS系統(tǒng)集成后,如何保證<b class='flag-5'>數(shù)據(jù)傳輸</b>的實(shí)時(shí)<b class='flag-5'>性</b>和穩(wěn)定性?

    Amphenol-Air LB SJT/TV數(shù)據(jù)連接器:高速數(shù)據(jù)傳輸的理想之選

    Amphenol-Air LB SJT/TV數(shù)據(jù)連接器:高速數(shù)據(jù)傳輸的理想之選 在當(dāng)今高速發(fā)展的科技時(shí)代,高速數(shù)據(jù)傳輸需求日益增長,數(shù)據(jù)連接器作為數(shù)
    的頭像 發(fā)表于 12-15 11:15 ?505次閱讀

    適合無線數(shù)據(jù)傳輸的有哪些協(xié)議

    適合無線數(shù)據(jù)傳輸協(xié)議種類繁多,根據(jù)應(yīng)用場景、傳輸距離、數(shù)據(jù)速率、功耗等需求,可劃分為 短距離低功耗協(xié)議 、 廣域低功耗
    的頭像 發(fā)表于 10-24 15:17 ?1208次閱讀

    多通道數(shù)據(jù)傳輸終端 LoRa/LTE雙模通信終端

    數(shù)據(jù)傳輸
    穩(wěn)控自動(dòng)化
    發(fā)布于 :2025年10月24日 13:57:21

    遠(yuǎn)程校準(zhǔn)電能質(zhì)量在線監(jiān)測裝置時(shí),如何保證數(shù)據(jù)傳輸的完整?

    遠(yuǎn)程校準(zhǔn)電能質(zhì)量在線監(jiān)測裝置時(shí),保證數(shù)據(jù)傳輸完整性的核心是建立 “ 預(yù)處理防錯(cuò)→實(shí)時(shí)校驗(yàn)防篡改→丟包重傳補(bǔ)缺失→全量驗(yàn)證閉環(huán) ” 的全流程機(jī)制,通過技術(shù)手段確保數(shù)據(jù)傳輸中不被篡改、不丟失、不重
    的頭像 發(fā)表于 10-11 16:47 ?778次閱讀
    遠(yuǎn)程校準(zhǔn)電能質(zhì)量在線監(jiān)測裝置時(shí),如何保證<b class='flag-5'>數(shù)據(jù)傳輸</b>的完整<b class='flag-5'>性</b>?

    如何評(píng)估通信協(xié)議優(yōu)化對(duì)數(shù)據(jù)傳輸效率的提升效果?

    評(píng)估通信協(xié)議優(yōu)化對(duì)數(shù)據(jù)傳輸效率的提升效果,核心邏輯是 “控制變量 + 多維度量化對(duì)比”—— 即通過定義明確的評(píng)估目標(biāo)、構(gòu)建一致的測試環(huán)境、選取關(guān)鍵效率指標(biāo),對(duì)比優(yōu)化前后的協(xié)議表現(xiàn),最終驗(yàn)證優(yōu)化是否達(dá)到預(yù)期(如降低延遲、提升吞吐量
    的頭像 發(fā)表于 08-29 17:52 ?1197次閱讀

    基于FPGA的USB數(shù)據(jù)傳輸

    你也許會(huì)有疑問,明明有這么多通信方式和數(shù)據(jù)傳輸(SPI、I2C、UART、以太網(wǎng))為什么偏偏使用USB呢?
    的頭像 發(fā)表于 08-06 14:47 ?4876次閱讀
    基于FPGA的USB<b class='flag-5'>數(shù)據(jù)傳輸</b>

    應(yīng)變計(jì)的數(shù)據(jù)傳輸方式有哪些,是否支持無線傳輸?

    在結(jié)構(gòu)物安全監(jiān)測領(lǐng)域,振弦式應(yīng)變計(jì)的數(shù)據(jù)傳輸方式直接影響監(jiān)測效率與系統(tǒng)可靠性。針對(duì)工程用戶的常見疑問——“是否支持無線傳輸?”南京峟思將為大家解析其有線、無線傳輸方案及應(yīng)用場景,助力科
    的頭像 發(fā)表于 07-15 14:03 ?484次閱讀
    應(yīng)變計(jì)的<b class='flag-5'>數(shù)據(jù)傳輸</b>方式有哪些,是否支持無線<b class='flag-5'>傳輸</b>?

    振弦式應(yīng)變計(jì)兩種數(shù)據(jù)傳輸方式介紹

    采集的效率與可靠性。下面給大家介紹振弦式應(yīng)變計(jì)兩種數(shù)據(jù)傳輸方式。一、有線傳輸:穩(wěn)定可靠的傳統(tǒng)方案有線傳輸是振弦式應(yīng)變計(jì)最傳統(tǒng)的
    的頭像 發(fā)表于 07-15 13:38 ?587次閱讀
    振弦式應(yīng)變計(jì)兩種<b class='flag-5'>數(shù)據(jù)傳輸</b>方式介紹

    工業(yè)智能網(wǎng)關(guān)在數(shù)據(jù)傳輸中有哪些功能

    工業(yè)智能網(wǎng)關(guān)在數(shù)據(jù)傳輸中具備協(xié)議轉(zhuǎn)換、數(shù)據(jù)采集與預(yù)處理、邊緣計(jì)算、安全加密、多通道傳輸、遠(yuǎn)程管理與配置、斷點(diǎn)續(xù)傳與數(shù)據(jù)補(bǔ)傳、
    的頭像 發(fā)表于 07-01 15:16 ?771次閱讀
    工業(yè)智能網(wǎng)關(guān)在<b class='flag-5'>數(shù)據(jù)傳輸</b>中有哪些功能

    像這樣一款體積小巧的DTU數(shù)據(jù)傳輸終端你見過嗎?

    數(shù)據(jù)傳輸
    才茂通信
    發(fā)布于 :2025年06月04日 14:33:29

    檢漏儀通信革命:Modbus轉(zhuǎn)Profinet讓數(shù)據(jù)傳輸“快人一步”

    和高可靠性等顯著優(yōu)勢。它支持TCP/IP、IRT等多種通信方式,能夠滿足不同工業(yè)應(yīng)用場景對(duì)數(shù)據(jù)傳輸實(shí)時(shí)的要求,被廣泛應(yīng)用于大型自動(dòng)化生產(chǎn)線、智能工廠等復(fù)雜工業(yè)控制系統(tǒng)中。VING微硬創(chuàng)新Profinet的主
    發(fā)表于 05-19 15:55

    SPI數(shù)據(jù)傳輸緩慢問題求解

    我遇到了 SPI 數(shù)據(jù)傳輸速率問題。 盡管將 SPI 時(shí)鐘頻率設(shè)置為 20 MHz,但我只獲得了 2 Kbps 的數(shù)據(jù)傳輸速率。 我正在以 115200 的波特率通過 UART 監(jiān)控數(shù)據(jù)。 我正在 cyfxusbspidmamo
    發(fā)表于 05-15 08:29

    無線采發(fā)儀 振弦、溫度及多類型信號(hào)采集 多種數(shù)據(jù)傳輸方式

    數(shù)據(jù)傳輸
    穩(wěn)控自動(dòng)化
    發(fā)布于 :2025年03月10日 11:18:58