新聞中心

                        EEPW首頁 > 測試測量 > 設計應用 > 【CAN基礎】電平、邏輯、報文是怎么來的

                        【CAN基礎】電平、邏輯、報文是怎么來的

                        作者:時間:2019-04-28來源:電子產品世界收藏

                        CAN總線通訊是我們每天都會使用的工業通訊總線,工程師更多的是關注報文是否能夠正常接收,解析結果是否正確。卻忽略了CAN總線的報文是怎么產生以及收發的,所以遇到通訊異常的問題時就會無從下手。那么這篇文章將會帶您快速了解報文的傳輸。

                        本文引用地址:http://www.xinfa15808.cn/article/201904/399979.htm

                        一、節點通訊的

                        1556418429586836.jpg

                        圖1  CAN節點示意圖

                        如圖1所示是一個CAN節點的示意圖,整體包括了CAN收發器、CAN控制器和MCU。我們以節點發送報文為例,當我們使用上位機軟件發送一段報文時,報文會通過MCU發送給CAN控制器。CAN控制器將這段報文解析成邏輯信號后,再發送給CAN收發器。CAN收發器根據CAN-bus標準將接收到的邏輯信號轉換成電信號,再通過CAN_H和CAN_L兩根總線將電信號傳到總線上的其他節點上。

                        簡單說就是MCU將報文發送給控制器,控制器將報文轉換成符合規范的CAN報文后,通過CAN收發器以電信號的形式在總線上進行傳輸。

                        二、電平是如何轉換成邏輯?

                        1.png

                        圖2  CAN-bus信號電平

                        如圖2所示,CAN總線使用的是雙線差分信號,所以分為CAN_H和CAN_L兩根總線,根據兩根總線之間電壓的差值大小來判斷其顯隱性。而線纜上傳輸的電平信號只有兩種可能,分別為顯性電平和隱性電平,其中顯性電平代表邏輯 0,隱性電平代表邏輯 1。

                        當接受到報文時,首先就要通過CAN收發器將電信號轉換成邏輯信號。根據圖3所示的ISO11898高速CAN電平標準進行判斷,但是線路上經常會受到各種干擾,為了保證傳輸的穩定性。所以差分電平小于0.5V就是隱性電平代表邏輯1,差分電平大于0.9V就是顯性電平代表邏輯0。

                        1556418465425160.png

                        圖3  ISO11898高速CAN電平

                        三、邏輯信號如何轉換成報文?

                        CAN控制器是CAN-bus設備的核心元件,集成了CAN規范中數據鏈路層的全部功能,能夠自動完成CAN-bus協議的解析。

                        當CAN收發器將邏輯信號傳送給CAN控制器后,CAN控制器會將邏輯信號轉換成符合CAN規范的CAN幀。而CAN幀的類型包括了數據幀、遠程幀、幀間空間、錯誤幀和超載幀。

                        1556418494363934.png

                        圖 4  標準幀格式

                        以最常見的數據幀為例,圖4就是標準幀的格式,包括了幀起始、仲裁場、控制場、數據場等。

                        1556418512485450.png

                        圖5  報文解析實例

                        圖5就是報文解析的實例,當接受到對應的邏輯信號后,CAN控制器就會根據規定的CAN幀格式進行解析,并將報文發給MCU。

                        四、上位機報文顯示

                        1556418529485329.png

                        圖 6  上位機報文顯示

                        如圖6所示,當CAN控制器完成了CAN-bus協議的解析后,就會將報文傳輸到MCU中在上位機軟件中進行顯示。像幀起始、CRC場、ACK場這樣的數據不讀取,所以我們上位機軟件只顯示數據幀類型、幀ID和幀數據等信息。

                        總結:

                        對于CAN總線報文錯誤來說,百分之九十的錯誤都來自于物理層,而CANScope總線分析儀可以對CAN 波形與報文同步發送和接收,快速對CAN總線進行各項測試,幫助工程師們快速完成故障定位和問題排查。



                        關鍵詞: CAN基礎 原理

                        評論


                        相關推薦

                        技術專區

                        關閉
                        广东快乐十分开奖结果