串行通信協議.第1部分:簡介

在這一系列文章中,我們將研究一些不同類型的串行通信協議,這些協議可用于在微控制器數據生產和數據處理外圍設備,以及其他智能設備。接下來的文章將介紹串行通信的一些常用協議。在本系列文章的最后,我們將總結每種方法的優缺點。我們希望這一資源將證明有價值的下一次你發現你自己需要實現一個串行通信總線,幫助你選擇最好的選擇適合你的特殊情況。
這些天電子產品已成為電子產品市場上最重要的部分. 許多不同的芯片在使用中,它們的復雜操作依賴于發送到或來自其他類似數字元件的信息。已經創建了通用協議標準來支持它們之間的通信。想象一下,如果每個IC或設備都使用其唯一的協議進行通信。這就好比每個人都用自己獨特的語言說話一樣。這將是一場混亂,因為我們幾乎不可能相互理解。
我們目前有不同的存儲器IC、數字傳感器、保護裝置、可編程電源、數字電位器、射頻IC等,都需要彼此之間或與微控制器通信,微處理器 ,FPGA或ASIC。設備之間這些通信的目的可能有很大的不同。它可以用于編程來提取信息,提供信號來啟動動作的性能。
另外,有些協議給了我們人類通過微控制器與集成電路交互的能力。你可以向微控制器發送信號,微控制器被編程為通過這些協議之一向IC發送信號?;蛘撸梢赃B接一個可用的調試工具。
串行通信的一個問題是,如果出現問題,很難找到并調試電路。假設數據沒有從一個設備傳輸到另一個設備。在這種情況下,故障可能存在于以下一個或多個地方:發送設備的邏輯、電路設計、串行通信的編碼方式、通信總線、接收器的解碼、接收器的電路設計或最終接收器的邏輯。在串行通信上粘貼示波器探針可以讓您查看是否有任何活動,但不會告訴您其有效性。為了完全了解發生了什么,你需要一個帶解碼功能的示波器或一個邏輯分析儀。這將使你知道電壓脈沖在脈沖中的傳播,從而發現電壓水平,發現任何噪聲問題,并尋找信號上升和下降率的問題。
然而,為了徹底調試串行通信,您需要一個工具來解碼總線上的數據,看看它是否正確,或者是否被損壞或受到碰撞的影響。大量的調試工具專門用來調試設備或集成電路之間的通信。工業標準邏輯分析儀之一是薩利埃邏輯一系列邏輯分析儀,Pro模型提供足夠的速度來分析所有最流行的協議。
像這樣的協議處理速度太慢,分析速度太慢。這個LA2016邏輯分析儀提供采樣率之間的Salaee邏輯8和邏輯8 Pro非常低的成本;我有一個,并用它非常成功地分析了協議。
此外,通信協議的考慮對于固件和硬件設計都是至關重要的。從硬件方面來說,你應該仔細檢查你選擇的微控制器的數據表。MCU只能使用專用管腳與預定義的協議進行通信。在選擇MCU之前,設計者需要決定將使用什么IC以及需要什么協議。
例如,安裝在流行的STM32 Blue Pill開發板上的stmcroelectronics STM32F103C8T6設備包括2 x I2C、3 x USART、2 x SPI和1 x CAN通信接口。但是,這些通信協議的一些管腳是共享的。例如,如果我們看設備的14號針,它的標簽是PA4。此引腳同時具有USART和SPI功能。這意味著您不能同時為您的設計使用所有列出的SPI和USART接口。你需要選擇你需要的時間和相應的計劃,或搜索另一個微控制器,支持更多的通信接口。當然,PA4管腳可以通過改變操作中的配置來用于兩種通信協議。但是,您仍然需要仔細考慮在什么時候它將用于運行,因為它們不能同時使用。這將增加硬件和固件設計的復雜性。

微控制器中的串行通信管腳可以重疊,所以讀數據表您需要根據設備將從固件端使用的通信協議下載并使用相應的IC通信庫模塊。
雖然有許多通信協議,但最流行的是SPI和I2C。每種協議都有它的應用、通信速度、設計考慮因素、優缺點。在這一系列文章中,我們將依次介紹它們。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。