SPI總線簡(jiǎn)介
SPI是串行外設(shè)接口(Serial Peripheral Interface)的縮寫(xiě),是一種高速、全雙工、同步的通信總線,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳,同時(shí)為PCB的布局上節(jié)省空間,提供方便。其現(xiàn)已發(fā)展成為一種工業(yè)標(biāo)準(zhǔn),目前,各半導(dǎo)體公司推出了大量的帶有SPI接口的具有各種各樣功能的芯片,如RAM,EEPROM,F(xiàn)lashROM,A/D(D/A)轉(zhuǎn)換器、LED顯示驅(qū)動(dòng)器、I/O接口芯片、實(shí)時(shí)時(shí)鐘、UART收發(fā)器等等,為用戶(hù)的外圍擴(kuò)展提供了極其靈活而經(jīng)濟(jì)的選擇。這也使得對(duì)SPI信號(hào)的測(cè)試分析需求更加廣泛。
SPI總線包含四種輸出方式(SPI0,SPI1,SPI2,SPI3),SPI0和SPI3方式比較常用。SPI模塊為了和外設(shè)進(jìn)行數(shù)據(jù)交換,根據(jù)外設(shè)工作要求,其輸出串行同步時(shí)鐘極性和相位可以進(jìn)行配置,時(shí)鐘極性(CPOL)對(duì)傳輸協(xié)議沒(méi)有重大的影響。如果CPOL=0,串行同步時(shí)鐘的空閑狀態(tài)為低電平;如果CPOL=1,串行同步時(shí)鐘的空閑狀態(tài)為高電平。時(shí)鐘相位(CPHA)能夠配置用于選擇兩種不同的傳輸協(xié)議之一進(jìn)行數(shù)據(jù)傳輸。如果CPHA=0,在串行同步時(shí)鐘的第一個(gè)跳變沿(上升或下降沿)數(shù)據(jù)即被采樣;如果CPHA=1,在串行同步時(shí)鐘的第二個(gè)(上升或下降沿)數(shù)據(jù)才被采樣。
圖1 SPI信號(hào)四種輸出方式時(shí)序圖
SPI總線測(cè)試需求
工程師對(duì)SPI總線測(cè)試和分析的需求主要涵蓋以下兩個(gè)方面:
1.了解總線正在發(fā)生什么:軟件工程師設(shè)計(jì)SPI主設(shè)備發(fā)出的消息內(nèi)容,硬件工程師則需要確定消息是不是被準(zhǔn)確無(wú)誤的傳送到從設(shè)備上。傳統(tǒng)的方法是使用示波器把信號(hào)捕獲下來(lái),然后根據(jù)高低電平特點(diǎn)轉(zhuǎn)換成“1”或“0”,然后再去對(duì)比SPI協(xié)議,將其還原成有意義的消息幀。顯然這種方式費(fèi)時(shí)費(fèi)力,在轉(zhuǎn)換的過(guò)程中還容易出錯(cuò)。SDS3000X系列智能示波器支持SPI總線解碼功能,可以直接對(duì)總線傳輸信號(hào)進(jìn)行觸發(fā)解碼。并以不同的方式動(dòng)態(tài)顯示在示波器屏幕上。不同的顯示方式可以更好地適應(yīng)不同的分析需求:比如硬件工程師可能希望以二進(jìn)制的方式查看SPI消息內(nèi)容,底層驅(qū)動(dòng)工程師希望以16進(jìn)制方式分析波形,而應(yīng)用軟件工程師則希望以ASCII碼的方式去了解總線上實(shí)際運(yùn)行的數(shù)據(jù)內(nèi)容。
2.調(diào)試總線上有故障的節(jié)點(diǎn):SPI設(shè)備可以實(shí)現(xiàn)一個(gè)主設(shè)備連接多個(gè)從設(shè)備的需求,通過(guò)片選信號(hào)(SS/CS)來(lái)選擇需要操作的從設(shè)備。當(dāng)主設(shè)備切換傳輸對(duì)象的時(shí)候,我們需要關(guān)注總線所發(fā)送的信息是否與所選擇的從設(shè)備一致。有可能出現(xiàn)所發(fā)送的信息與當(dāng)前所選擇的從設(shè)備并不一致的狀況。
SPI總線模擬測(cè)試方法
本例中我們使用SDS3000X系列智能示波器以及STB-3信號(hào)演示板進(jìn)行單向SPI總線測(cè)試模擬。
圖2 實(shí)驗(yàn)連接圖
單向的SPI總線信號(hào)包括一根時(shí)鐘線SCLK、一根片選信號(hào)線CS和一根數(shù)據(jù)線SDA,可由鼎陽(yáng)的STB-3板模擬輸出,其輸出信號(hào)速率為1Mbps,數(shù)據(jù)內(nèi)容為:(XX為隨機(jī)字符)96'h53_49_47_4C_45_4E_54_5F_XX_XX_XX_XX。
SPI觸發(fā)
SPI 總線是為芯片間的數(shù)據(jù)通信而設(shè)計(jì)的,因此,在大多數(shù)情況下,由于傳輸數(shù)據(jù)的不同使得信號(hào)并非周期性信號(hào)。這就要求在對(duì)該總線進(jìn)行測(cè)試時(shí),要能準(zhǔn)確地觸發(fā)到數(shù)據(jù)幀的“頭”,并將其“穩(wěn)定”顯示在儀器上,便于觀察和分析。
SDS3000X系列智能示波器支持串行總線觸發(fā)功能,按下前面板上側(cè)菜單欄區(qū)域的“觸發(fā)–觸發(fā)設(shè)置”喚出觸發(fā)設(shè)置對(duì)話(huà)框,設(shè)定好信號(hào)對(duì)應(yīng)的探頭(本例設(shè)置為CH1:SDA;CH2: SCLK;CH3:CS),就可以直接對(duì)SPI信號(hào)進(jìn)行觸發(fā)。
圖3 SPI信號(hào)觸發(fā)功能
在模擬測(cè)試前,我們已知STB-3演示板所輸出的SPI信號(hào)輸出方式為SPI3(在實(shí)際測(cè)試中,SPI從設(shè)備的工作模式也會(huì)在數(shù)據(jù)手冊(cè)里標(biāo)明,或者在時(shí)序圖中給出)。因此我們?cè)谟|發(fā)的時(shí)候就要進(jìn)行相應(yīng)的配置。SDS3000X智能示波器支持在觸發(fā)和解碼時(shí)對(duì)SPI輸出方式進(jìn)行選擇。
圖4 SPI觸發(fā)信號(hào)設(shè)置
PS:SDS3000X系列智能示波器支持串行總線觸發(fā)解碼功能,支持的協(xié)議有IIC、IIS、SPI、UART/RS232、LIN、CAN、CAN-FD、FlexRay、MIL 1553、USB 2.0。
SPI解碼
在成功捕獲到待測(cè)試的SPI總線信號(hào)后,接下來(lái)我們關(guān)注的問(wèn)題是對(duì)SPI總線信號(hào)進(jìn)行解碼。
如圖5所示,選擇“分析-串行解碼”選項(xiàng),進(jìn)行相應(yīng)設(shè)置,即可獲得解碼的結(jié)果,并可以列表顯示出來(lái),便于查看。(解碼的結(jié)果可以二進(jìn)制、16進(jìn)制以及ASCALL碼的形式顯示)
圖5 SPI解碼設(shè)置
圖6 SPI解碼結(jié)果(十六進(jìn)制)
解碼的結(jié)果與輸入信號(hào)一致。
以上只是簡(jiǎn)單的使用SDS3000X系列智能示波器對(duì)SPI信號(hào)進(jìn)行觸發(fā)和解碼。在實(shí)際應(yīng)用中,SDS3000X系列智能示波器的串行總線觸發(fā)解碼功能可以快速的使我們獲得“總線上正在發(fā)生什么”;并可根據(jù)示波器界面所呈現(xiàn)的解碼結(jié)果分析總線所傳輸?shù)牡男畔⑹欠窈臀覀冾A(yù)想的一致,從而精準(zhǔn)快速地發(fā)現(xiàn)故障點(diǎn)并進(jìn)行調(diào)試。
關(guān)于鼎陽(yáng)
鼎陽(yáng)科技(SIGLENT)是一家專(zhuān)注于通用電子測(cè)試測(cè)量?jī)x器及相關(guān)解決方案的公司。
從2005推出第一款數(shù)字示波器產(chǎn)品至今,10余年來(lái)鼎陽(yáng)科技一直是全球發(fā)展速度最快的數(shù)字示波器制造商。歷經(jīng)多年發(fā)展,鼎陽(yáng)產(chǎn)品已擴(kuò)展到數(shù)字示波器、手持示波表、函數(shù)/任意波形發(fā)生器、頻譜分析儀、臺(tái)式萬(wàn)用表、直流電源等通用測(cè)試測(cè)量?jī)x器產(chǎn)品。2007年,鼎陽(yáng)與高端示波器領(lǐng)導(dǎo)者美國(guó)力科建立了全球戰(zhàn)略合作伙伴關(guān)系。2011年,鼎陽(yáng)發(fā)展成為中國(guó)銷(xiāo)量領(lǐng)先的數(shù)字示波器制造商。2014年,鼎陽(yáng)發(fā)布了中國(guó)首款智能示波器SDS3000系列,引領(lǐng)“人手一臺(tái)”型實(shí)驗(yàn)室使用示波器由功能示波器向智能示波器過(guò)渡的趨勢(shì)。2017年,鼎陽(yáng)發(fā)布打破行業(yè)壟斷,多項(xiàng)參數(shù)突破國(guó)內(nèi)技術(shù)瓶頸的SDG6000X系列脈沖/任意波形發(fā)生器,其輸出帶寬高達(dá)500MHz。目前,鼎陽(yáng)已經(jīng)在美國(guó)克利夫蘭和德國(guó)漢堡成立分公司,產(chǎn)品遠(yuǎn)銷(xiāo)全球70多個(gè)國(guó)家,SIGLENT正逐步成為全球知名的測(cè)試測(cè)量?jī)x器品牌。
關(guān)于鼎陽(yáng)硬件設(shè)計(jì)與測(cè)試智庫(kù)
鼎陽(yáng)硬件設(shè)計(jì)與測(cè)試智庫(kù)(簡(jiǎn)稱(chēng)鼎陽(yáng)硬件智庫(kù))由深圳市鼎陽(yáng)科技有限公司領(lǐng)銜創(chuàng)辦,是中國(guó)第一家“智力眾籌”模式的硬件智庫(kù)。
鼎陽(yáng)硬件智庫(kù)順時(shí)順勢(shì),倡導(dǎo)“連接-分享-協(xié)作-創(chuàng)造”的理念,高舉志愿者服務(wù)的大旗,相信互聯(lián)網(wǎng)是“愛(ài)”的大本營(yíng),相信人們都有發(fā)自?xún)?nèi)心分享的愿望。
鼎陽(yáng)硬件智庫(kù)選擇硬件領(lǐng)域最普遍的七類(lèi)問(wèn)題:電源,時(shí)鐘,DDR,低速總線,高速總線,EMC,測(cè)試測(cè)量進(jìn)行聚焦。尋找“最針尖”的問(wèn)題進(jìn)行研討,針對(duì)“最針尖”的問(wèn)題組織專(zhuān)家答疑,將硬件大師積累的寶貴知識(shí)和經(jīng)驗(yàn)變成公眾財(cái)富,惠及更多硬件人。
鼎陽(yáng)硬件智庫(kù),群策群力,連接所有硬件人。
有硬件問(wèn)題,找鼎陽(yáng)硬件智庫(kù)。