SPI總線簡介
SPI是串行外設接口(Serial Peripheral Interface)的縮寫,是一種高速、全雙工、同步的通信總線,并且在芯片的管腳上只占用四根線,節約了芯片的管腳,同時為PCB的布局上節省空間,提供方便。其現已發展成為一種工業標準,目前,各半導體公司推出了大量的帶有SPI接口的具有各種各樣功能的芯片,如RAM,EEPROM,FlashROM,A/D(D/A)轉換器、LED顯示驅動器、I/O接口芯片、實時時鐘、UART收發器等等,為用戶的外圍擴展提供了極其靈活而經濟的選擇。這也使得對SPI信號的測試分析需求更加廣泛。
SPI總線包含四種輸出方式(SPI0,SPI1,SPI2,SPI3),SPI0和SPI3方式比較常用。SPI模塊為了和外設進行數據交換,根據外設工作要求,其輸出串行同步時鐘極性和相位可以進行配置,時鐘極性(CPOL)對傳輸協議沒有重大的影響。如果CPOL=0,串行同步時鐘的空閑狀態為低電平;如果CPOL=1,串行同步時鐘的空閑狀態為高電平。時鐘相位(CPHA)能夠配置用于選擇兩種不同的傳輸協議之一進行數據傳輸。如果CPHA=0,在串行同步時鐘的第一個跳變沿(上升或下降沿)數據即被采樣;如果CPHA=1,在串行同步時鐘的第二個(上升或下降沿)數據才被采樣。
圖1 SPI信號四種輸出方式時序圖
SPI總線測試需求
工程師對SPI總線測試和分析的需求主要涵蓋以下兩個方面:
1.了解總線正在發生什么:軟件工程師設計SPI主設備發出的消息內容,硬件工程師則需要確定消息是不是被準確無誤的傳送到從設備上。傳統的方法是使用示波器把信號捕獲下來,然后根據高低電平特點轉換成“1”或“0”,然后再去對比SPI協議,將其還原成有意義的消息幀。顯然這種方式費時費力,在轉換的過程中還容易出錯。SDS3000X系列智能示波器支持SPI總線解碼功能,可以直接對總線傳輸信號進行觸發解碼。并以不同的方式動態顯示在示波器屏幕上。不同的顯示方式可以更好地適應不同的分析需求:比如硬件工程師可能希望以二進制的方式查看SPI消息內容,底層驅動工程師希望以16進制方式分析波形,而應用軟件工程師則希望以ASCII碼的方式去了解總線上實際運行的數據內容。
2.調試總線上有故障的節點:SPI設備可以實現一個主設備連接多個從設備的需求,通過片選信號(SS/CS)來選擇需要操作的從設備。當主設備切換傳輸對象的時候,我們需要關注總線所發送的信息是否與所選擇的從設備一致。有可能出現所發送的信息與當前所選擇的從設備并不一致的狀況。
SPI總線模擬測試方法
本例中我們使用SDS3000X系列智能示波器以及STB-3信號演示板進行單向SPI總線測試模擬。
圖2 實驗連接圖
單向的SPI總線信號包括一根時鐘線SCLK、一根片選信號線CS和一根數據線SDA,可由鼎陽的STB-3板模擬輸出,其輸出信號速率為1Mbps,數據內容為:(XX為隨機字符)96'h53_49_47_4C_45_4E_54_5F_XX_XX_XX_XX。
SPI觸發
SPI 總線是為芯片間的數據通信而設計的,因此,在大多數情況下,由于傳輸數據的不同使得信號并非周期性信號。這就要求在對該總線進行測試時,要能準確地觸發到數據幀的“頭”,并將其“穩定”顯示在儀器上,便于觀察和分析。
SDS3000X系列智能示波器支持串行總線觸發功能,按下前面板上側菜單欄區域的“觸發–觸發設置”喚出觸發設置對話框,設定好信號對應的探頭(本例設置為CH1:SDA;CH2: SCLK;CH3:CS),就可以直接對SPI信號進行觸發。
圖3 SPI信號觸發功能
在模擬測試前,我們已知STB-3演示板所輸出的SPI信號輸出方式為SPI3(在實際測試中,SPI從設備的工作模式也會在數據手冊里標明,或者在時序圖中給出)。因此我們在觸發的時候就要進行相應的配置。SDS3000X智能示波器支持在觸發和解碼時對SPI輸出方式進行選擇。
圖4 SPI觸發信號設置
PS:SDS3000X系列智能示波器支持串行總線觸發解碼功能,支持的協議有IIC、IIS、SPI、UART/RS232、LIN、CAN、CAN-FD、FlexRay、MIL 1553、USB 2.0。
SPI解碼
在成功捕獲到待測試的SPI總線信號后,接下來我們關注的問題是對SPI總線信號進行解碼。
如圖5所示,選擇“分析-串行解碼”選項,進行相應設置,即可獲得解碼的結果,并可以列表顯示出來,便于查看。(解碼的結果可以二進制、16進制以及ASCALL碼的形式顯示)
圖5 SPI解碼設置
圖6 SPI解碼結果(十六進制)
以上只是簡單的使用SDS3000X系列智能示波器對SPI信號進行觸發和解碼。在實際應用中,SDS3000X系列智能示波器的串行總線觸發解碼功能可以快速的使我們獲得“總線上正在發生什么”;并可根據示波器界面所呈現的解碼結果分析總線所傳輸的的信息是否和我們預想的一致,從而精準快速地發現故障點并進行調試。
-
SPI
+關注
關注
17文章
1709瀏覽量
91740 -
總線
+關注
關注
10文章
2891瀏覽量
88162
發布評論請先 登錄
相關推薦
評論