基於 SemiDrive E3640 Gateway SSDK3.0 Sent 測試

一、 前言

        SENT 全稱:Single Edge Nibble Transmission,中文名稱為:單邊半字傳輸協議,是 SAE 推出的一種點對點的、單向傳輸的方案,被用於車載傳感器和電子控制單元(ECU)之間的數據傳輸。SENT(SAE J2716) 作為一種汽車傳感器的新型接口標準,較 AD 和 PWM 輸出相比,具有很好的 EMC 特性並節省線束和插針結頭,且能傳輸故障代碼從而使傳感器系統具有很強的故障診斷能力。基於協議簡單和上述優勢,SENT 可作為 Analog Input 的替代品,並可在局部系統中取代 CAN 和 Lin。但卻不能替代 CAN 或是 Lin 因為 SENT 是連續單向傳輸的,CAN 和 Lin 都是雙向傳輸。

         E3 SSDK 提供了專門 的 IAR 測試工程,用於對 Sent 信號的採集做測試,以下內容為該測試 demo 的原理與測試方法講解。

 

 

二、測試環境

硬體: E3 Gateway A02 開發板,圖(1)


                                                                                                                                         圖(1)

軟體:E3 SSDK3.0 e3_ref_gateway 工程。

 

 

 三、 demo說明

      1. E3 SSDK Sent 的 IAR demo 工程位於 ssdk\boards\e3_gateway\driver_demo\sent\IAR\sent.eww,雙擊該文件即可 打開。


      2. 配置文件 ssdk\boards\e3_gateway\driver_demo\sent\configs\sent_cfg.c 中定義了 2 路 Sent 信號,如圖(2),這些 參數必須和 Sent 的信號源保持一致,在本次測試中,我們將採用 Sent 信號盒子,設置出和文件中的參數相匹配的信號。

圖(2)

  1. main 函數中定義了一個數組 channel_recv_message,當上位機設置參數是,發送數據必須和該數組中的數據一致。當接收回調函數 sent_recv_callback ()從接收 Buffer 中讀取到的數據和該數組中的數據一致時,認為 Sent 傳輸正確。函數原型見圖(3)。


圖(3)

  1. 代碼運行流程在 main 函數中,依次初始化 E3,綁定 GPIO 到 etimer 的 capture 通道,啟動etimer,等待捕獲信號並觸發解析函數將數據保存在 buf 中,停止捕獲。圖(4)所示為這些流程的具體代碼實現。


圖(4)

 

 

四、 測試方法

1. 根據原理圖所示,按照圖(5)的方法連接好開發板和 Sent 盒子(圖莫斯 UTA0503)。

        圖(5)

2. 打開 sent 盒子上位機軟體,按照第二章的代碼中的參數設置,見圖(6)

圖(6)

數據設置方法見圖(7)

圖(7)

3. 啟動開發板,並點擊 Sent 上位機數據發送,觀察log,見圖(8)。

圖(8)

 

 



五、 參考文獻:

  1. E3400_E3600_MCU_Technical_Reference_Manual_Rev00.12.pdf
  2. SemiDrive_E3_SSDK_User_Guide_Rev1.0.pdf

 

 歡迎在博文下方留言評論,我們會及時回復您的問題。如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com
     
 作者:Sim Guo / 郭夕峰


更多資訊,請掃碼關注我們!:


★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論