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

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

3天內不再提示

CANoe對SPI、UART和I2C等串行總線的同步仿真與測試

Vector維克多 ? 來源:Vector維克多 ? 作者:Vector China ? 2021-09-02 18:17 ? 次閱讀

在ECU和傳感器系統(tǒng)中,除去各種汽車總線以及智能傳感器之間的PSI5和SENT協(xié)議之外,在短距離和低成本通信場景中還會廣泛使用SPI、UART、RS232RS485、RS422I2C等通用串行總線。在HIL系統(tǒng)中,如果被測對象涉及上述串行總線,則需要測試設備能夠同時支持對應接口,實現(xiàn)測試、仿真及分析。在CANoe為平臺的HIL系統(tǒng)中,I/O板卡VT2710同時支持PSI5/SENT以及上述串行總線協(xié)議,為構建經(jīng)濟型測試系統(tǒng)提供便利。

SPI簡述與測試解決方案

SPI(Serial Peripheral Interface Bus,串行外設接口)常用于芯片之間通訊,沒有具體標準技術規(guī)范,各廠家的實際方案可能存在一定差異性,如線束拓撲常見形式有四線SPI、三線SPI和isoSPI等,時序操作模式以及具體指令集定義等均需結合實際芯片手冊進行開發(fā)和配置。最常見的SPI通訊需要4根線,可進行全雙工通訊。

當采用單主機多從機的通訊拓撲時,SCLK、MOSI、MISO均為1根線由主機并聯(lián)至各從機,而CS片選信號線的數(shù)量,需要與從機數(shù)量對應。時序模式如圖2。

SPI除了引腳定義、時序操作、指令集多樣以外,對于通訊速率、電平范圍也無明確定義,需根據(jù)通訊芯片進行匹配。ECU中通常將SPI用于MCU與外設芯片之間的通訊,如EEPROM、看門狗等;在BMS領域的主從板菊花鏈通訊中,也通過SPI與外置通訊芯片進行交互(如MaximAnalog Devices、NXP等)。

CANoe/VT2710對SPI的支持情況:

每塊VT2710可以提供2個獨立通道的四線SPI通訊,最多支持5路片選;

SPI通訊電壓范圍支持0~6V,可進行星型或菊花鏈連接;

仿真SPI主機時最高支持10Mbps速率,仿真SPI從機時最高支持6Mbps速率。

SPI通訊指令集開發(fā)實現(xiàn)方式有3種:

用戶自定義信號幀:CANoe內置清晰且便于使用的圖形配置界面,用戶可自由添加信號定義,實現(xiàn)SPI通訊“數(shù)據(jù)庫”的制作。

原始通信幀:直接通過CAPL編程方式實現(xiàn)通訊指令集開發(fā),CANoe提供MISO和MOSI讀寫隊列函數(shù),將需要發(fā)送的數(shù)據(jù)寫進VT2710緩存隊列,用于靈活和快速的通訊交互。

FPGA封裝高速幀:當通訊過程中需要微秒或納秒級的數(shù)據(jù)響應,并且需要動態(tài)結合前幀指令進行判斷并響應時,可以使用FPGA編程進行SPI指令集開發(fā)。VT2710默認集成可自編程的FPGA芯片,用戶可選VHDL語言或Intel DSP Builder Advanced Blockset Builder進行FPGA開發(fā)。

UART簡述與測試解決方案

UART(Universal Asynchronous Receiver

/Transmitter,通用異步收發(fā)傳輸器)是一種通用串行數(shù)據(jù)總線,用于異步通信。該總線雙向通信,可以實現(xiàn)全雙工傳輸和接收。UART通訊需要2根線:TX發(fā)送數(shù)據(jù),RX接收數(shù)據(jù)。UART在汽車行業(yè)內用于座艙和觸摸信號等附屬設備的交互,還可擴展為LIN通訊接口使用。

UART幀以一個起始位(邏輯0)開始, 然后是7~9個數(shù)據(jù)位,由一個可選的奇偶校驗位以及一個或兩個停止位(邏輯1)完成,該位同時用于接收節(jié)點的同步。

CANoe/VT2710對UART的支持情況:

每塊VT2710可以提供2個獨立通道的UART通訊;

可以自定義電平,也可使用RS232、RS485、RS422等電平邏輯進行通訊;

自定義內部電平支持最高6V,通訊速率最高支持1Mbps;

用戶可通過系統(tǒng)變量、CAPL函數(shù)或FPGA編程方式實現(xiàn)UART通訊。

RS232、RS485和RS422簡述

與測試解決方案

RS-232是美國電子工業(yè)聯(lián)盟(EIA)制定的串行數(shù)據(jù)通信的接口標準。由于RS232標準未對編碼方式、幀的構成方式、傳輸順序、錯誤檢測機制做出規(guī)定,一般會使用UART的字符格式和傳輸比特率設置,當然也可由用戶自定義協(xié)議。不同于TTL電平,RS232規(guī)定邏輯“1”的電平為-15V~-3 V,邏輯“0”的電平為+3V~+15V。

RS485(現(xiàn)稱EIA-485)是TIA及EIA聯(lián)合發(fā)布的物理層標準,在干擾環(huán)境下進行長距離的高效通信,支持在一個網(wǎng)絡上有多個接收器的總線拓撲,適用于環(huán)境耐久等試驗環(huán)境。RS485是雙線、半雙工、差分電壓信號通訊,通訊速率上限隨線束長度而定,一般10米時最高35Mbit/s,1200米時最高100kbit/s。

RS422(現(xiàn)稱EIA-422)同樣是TIA及EIA聯(lián)合發(fā)布的物理層標準,旨在提供更高速度、更好的抗噪性和更長電纜長度的標準。傳輸數(shù)據(jù)速率可以高達10Mbit/s,在較低的速率下可在長達1500米的電纜上發(fā)送數(shù)據(jù)。RS422采用4線、全雙工、差分電壓信號通訊。RS422只能有1個發(fā)送端,多個接收端,因此其全雙工是主從節(jié)點之間的點對多點雙向通訊。由于RS485/422未定義具體的上層協(xié)議,實際使用中常會使用UART、Modbus、Profibus協(xié)議。RS232、RS485、RS422在汽車行業(yè)中用于GNSS數(shù)據(jù)傳輸、車機與附屬部件交互數(shù)據(jù),以及測試時控制電源、環(huán)境艙等設備的場景。

CANoe/VT2710對RS232、RS485和RS422的支持情況:

每塊VT2710可提供2路RS232,2路RS485/RS422(復用二選一);

編碼方式均默認提供UART編碼;

用戶可通過系統(tǒng)變量、CAPL函數(shù)或FPGA編程方式實現(xiàn)對應通訊。

I2C簡述與測試解決方案

I2C Bus(Inter-Integrated Circuit Bus,內部集成電路總線)是一種同步、多主從、分組交換、單端的串行通訊總線,主要用于短距離、板內通訊中將低速的外部芯片連接至CPU/MCU。I2C使用2條雙向開漏(Open-Drain)通訊線:SDA(Serial Data Line)用于傳輸數(shù)據(jù),SCL(Serial Clock Line)用于控制通訊過程,需上拉電阻,常用電平為+5V或+3.3V。常見通訊速率有標準模式100kbit/s和快速模式400kbit/s。新一代I2C總線可以支持快速模式400 kbit/s、更快速模式1 Mbit/s、高速模式3.4 Mbit/s和 超快速模式5 Mbit/s。I2C 通信始終按照以下流程進行:

Master主機在總線上產生一個啟動條件;

Master主機發(fā)送Slave從機地址和讀/寫位請求,對應的Slave從機產生ACK應答(低電平),Master主機根據(jù)讀/寫位切換為發(fā)送方或接收方模式;

數(shù)據(jù)在Master主機和被尋址的Slave從機之間按字節(jié)進行數(shù)據(jù)傳輸,相應的接收方通過 ACK 進行應答(低電平);

Master主機在總線上產生一個停止條件。

此外,主機可以發(fā)起另一個啟動條件而非停止條件,從而立即啟動新的數(shù)據(jù)傳輸。此過程稱為重復啟動。I2C在汽車領域常用于MCU與EEPROM、GPIO芯片等集成電路通訊,也會用于觸摸指令傳輸、攝像頭光圈/曝光度控制等交互。

圖9:I2C通訊過程數(shù)據(jù)結構示意圖

CANoe/VT2710對I2C的支持情況:

每塊VT2710支持最多2路I2C總線,可以仿真Master主機或Slave從機;

支持100kb/s、400kb/s、1Mb/s三種典型速率,最低可配置為50kb/s,最高可配置為1.6Mb/s;

高電平電壓(0~6V)、上拉電阻(4.7kΩ)是否接入均可配置。

在Sensor Protocol Configuration窗口,可以添加所需I2C總線通道,對于Slave從機可以配置其尋址長度、Slave從機地址、是否對供應商ID等信息進行響應等,對于I2C報文可以配置其讀/寫長度,以及具體信號的Layout及序列化規(guī)則,方便直接通過系統(tǒng)變量進行數(shù)據(jù)讀/寫。與其他串行總線一樣,除直接通過系統(tǒng)變量進行操作外,也可通過CAPL操作原始幀、FPGA編程開發(fā)指令集等方式進行應用。

CANoe為I2C的應用提供1主2從的示例工程,利用VT2710的兩個通道分別仿真主、從,用戶可以基于該示例工程進行修改,創(chuàng)建符合自身使用場景的項目工程。

責任編輯:haq

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

    關注

    2545

    文章

    50448

    瀏覽量

    751085
  • 測試
    +關注

    關注

    8

    文章

    5103

    瀏覽量

    126340
  • 仿真
    +關注

    關注

    50

    文章

    4023

    瀏覽量

    133338

原文標題:CANoe對SPI、UART和I2C等串行總線的同步仿真與測試

文章出處:【微信號:VectorChina,微信公眾號:Vector維克多】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    詳解I2C總線SPI總線的區(qū)別

    I2C(Inter-Integrated Circuit)表示集成電路互連,是一種用于線路板內部芯片之間通信的總線
    的頭像 發(fā)表于 10-16 15:16 ?1477次閱讀
    詳解<b class='flag-5'>I2C</b><b class='flag-5'>總線</b>與<b class='flag-5'>SPI</b><b class='flag-5'>總線</b>的區(qū)別

    了解I2C總線

    電子發(fā)燒友網(wǎng)站提供《了解I2C總線.pdf》資料免費下載
    發(fā)表于 10-08 11:13 ?1次下載
    了解<b class='flag-5'>I2C</b><b class='flag-5'>總線</b>

    DHT11用的是SPI還是I2C

    DHT11并不使用SPII2C通信協(xié)議,而是采用單總線(1-Wire)協(xié)議進行通信 。單總線協(xié)議是由美國DALLAS達爾斯公司推出的外圍串行
    的頭像 發(fā)表于 09-04 09:11 ?718次閱讀

    UARTI2C橋接器

    電子發(fā)燒友網(wǎng)站提供《UARTI2C橋接器.pdf》資料免費下載
    發(fā)表于 08-28 09:24 ?0次下載
    <b class='flag-5'>UART</b>轉<b class='flag-5'>I2C</b>橋接器

    I2C總線協(xié)議的工作原理和尋址格式

    I2C(Inter-Integrated Circuit)總線協(xié)議,即集成電路總線協(xié)議,是一種用于連接微控制器及其外圍設備的串行總線協(xié)議。
    的頭像 發(fā)表于 05-27 15:47 ?1482次閱讀

    I2CSPI、UART的通信過程還可以這樣理解

    到目前為止,I2C、SPIUART仍然是電子嵌入式設備中最常用的通信協(xié)議,本文,我們將剖析這三種協(xié)議,讓大家清楚、直觀的了解它們的功能、優(yōu)點和局限性,并輔以GIF動圖展示。一、II
    的頭像 發(fā)表于 05-23 08:10 ?6175次閱讀
    <b class='flag-5'>I2C</b>、<b class='flag-5'>SPI</b>、<b class='flag-5'>UART</b>的通信過程還可以這樣理解

    SPII2C通信協(xié)議:應用與區(qū)別

    本文深入解析了SPII2C這兩種通信協(xié)議的特點、工作原理和應用場景。SPI適用于高速數(shù)據(jù)傳輸,常用于存儲器芯片和顯示器驅動領域;I2C
    的頭像 發(fā)表于 04-22 16:45 ?1561次閱讀

    逼真動畫展示I2CSPI、UART的通信過程

    到目前為止,I2C、SPIUART仍然是電子嵌入式設備中最常用的通信協(xié)議,本文,我們將剖析這三種協(xié)議,讓大家清楚、直觀的了解它們的功能、優(yōu)點和局限性,并輔以GIF動圖展示。
    的頭像 發(fā)表于 04-12 08:27 ?885次閱讀
    逼真動畫展示<b class='flag-5'>I2C</b>、<b class='flag-5'>SPI</b>、<b class='flag-5'>UART</b>的通信過程

    總結usart、uarti2c、spi區(qū)別及相關知識

    USART、UART、I2CSPI是四種不同的串行通信協(xié)議,它們各自具有獨特的特點和應用領域
    的頭像 發(fā)表于 04-10 09:47 ?1565次閱讀
    總結usart、<b class='flag-5'>uart</b>、<b class='flag-5'>i2c</b>、<b class='flag-5'>spi</b>區(qū)別及相關知識

    藍牙串口通訊總線——I2C/SPI/UART

    Sensor、Touch、藍牙模塊、WIFI模塊也都兼容這三種通信協(xié)議的1種以上。那么這三條通信總線有什么區(qū)別呢?工業(yè)物聯(lián)網(wǎng)無線通信專業(yè)廠商為您一一細說—— I2C:半雙工、同步、
    的頭像 發(fā)表于 01-22 09:41 ?1384次閱讀
    藍牙串口通訊<b class='flag-5'>總線</b>——<b class='flag-5'>I2C</b>/<b class='flag-5'>SPI</b>/<b class='flag-5'>UART</b>

    i2c接口和spi接口區(qū)別

    I2C(Inter-Integrated Circuit)和SPI(Serial Peripheral Interface)都是用于設備間通信的串行接口標準。它們在很多方面有著相似之處,但也有一些
    的頭像 發(fā)表于 12-25 15:02 ?3645次閱讀

    SPII2C的異同及優(yōu)缺點

    連接微控制器、傳感器、存儲器設備。雖然它們都是串行通信接口,但在很多方面有著明顯的異同點。本文將詳細介紹SPII2C的異同,以及它們的優(yōu)缺點。 首先,我們先來介紹
    的頭像 發(fā)表于 12-07 10:46 ?2922次閱讀

    I2C總線信號與測試案例(二)

    前面一章講解了I2C總線的基本原理,那么在電路設計完成打板回來,肯定要做信號測試來驗證設計
    的頭像 發(fā)表于 11-20 15:49 ?3130次閱讀
    <b class='flag-5'>I2C</b><b class='flag-5'>總線</b>信號與<b class='flag-5'>測試</b>案例(二)

    I2C總線信號與測試案例(一)

    I2C bus是Inter-IC bus的縮寫,意思是IC器件之間的通訊總線;I2C 總線的特點如下
    的頭像 發(fā)表于 11-20 15:45 ?1797次閱讀
    <b class='flag-5'>I2C</b><b class='flag-5'>總線</b>信號與<b class='flag-5'>測試</b>案例(一)

    I2C串行總線組成及工作原理

    電子發(fā)燒友網(wǎng)站提供《I2C串行總線組成及工作原理.ppt》資料免費下載
    發(fā)表于 11-16 09:23 ?1次下載
    <b class='flag-5'>I2C</b><b class='flag-5'>串行</b><b class='flag-5'>總線</b>組成及工作原理