[導讀]SPI是時鐘單片機外設電路中常用的一種通訊方式,適用于近距離通信,相位性通常用于芯片間的鐘極
通訊,有四根線。時鐘 在SPI通訊中總線時鐘和總線相位也兩個比較重要的相位性概念,一般在使用SPI通信時都使用默認設置,鐘極所以容易把這兩個參數忽略。時鐘 和大家分享一下SPI通訊、相位性時鐘極性以及時鐘相位的鐘極
基礎知識。
SPI是時鐘單片機外設電路中常用的一種通訊方式,適用于近距離通信,相位性通常用于芯片間的鐘極通訊,有四根線。時鐘 在SPI通訊中總線時鐘和總線相位也兩個比較重要的相位性概念,一般在使用SPI通信時都使用默認設置,鐘極所以容易把這兩個參數忽略。 和大家分享一下SPI通訊、時鐘極性以及時鐘相位的基礎知識。
SPI總線的英文全稱為S“Serial Periphral Interface”,意思是串行外設接口,由于通訊距離比較短,適用于芯片級別的短距離通訊。SPI的通訊分為主機和從機,屬于高速全雙工的總線通訊方式,SPI有四根線,分別為: SPI的時鐘極性用CPOL來表示。SPI總線通訊的時基基準是時鐘信號線SCK,SCK既有高電平,又有低電平,SPI的時鐘極性用來表示時鐘信號在空閑時是高電平還是低電平。情況說明如下:
時鐘的相位用CPHA來表示,用來決定何時進行信號采樣,在第一個跳變沿還是第二個跳變沿,至于是上升沿還是下降沿則由CPOL相位極性來表示。下面分兩種情況來介紹。如下圖所示。 上圖表示CPHA=1時的情形,即在SCK時鐘的第二個邊沿進行數據的采樣,至于是上升沿采樣還是下降沿采樣取決于時鐘極性CPOL的值。如果CPHA=1,CPOL=1,則在SCK時鐘的第二個邊沿為上升沿時進行數據采樣。如果CPHA=1,CPOL=0,則在SCK時鐘的第二個邊沿為下降沿時進行數據采樣。
上圖表示CPHA=0時的情形,即在SCK時鐘的第一個邊沿進行數據的采樣,至于是上升沿采樣還是下降沿采樣取決于時鐘極性CPOL的值。如果CPHA=0,CPOL=1,則在SCK時鐘的第一個邊沿為下降沿時進行數據采樣。如果CPHA=0,CPOL=0,則在SCK時鐘的第一個邊沿為上升沿時進行數據采樣。
總結一下,SPI的時鐘極性決定了SCK在空閑時是低電平還是高電平;而相位極性則決定了在第一個邊沿還是第二個邊沿進行數據采樣。SPI的時鐘極性CPOL和相位極性CPHA是相互影響相互決定的,以上概念可能很繞口難以理解,但是對SPI進行一次編程之后,所有的內容都好理解了。 -END-
來源 | 玩轉嵌入式
作者|劉小舒
|?整理文章為傳播相關技術,版權歸原作者所有?|
|?如有侵權,請聯系刪除?|
【1】國內MCU能替代國外產品嗎?MCU的未來又將如何?
【2】35歲真的是程序員的坎兒嗎?
【3】不同編程語言能耗不同?看這27種語言對比!
【4】超長干貨為你解析:從串口驅動到Linux驅動模型,嵌入式必會!
【5】本文把TCP/IP講絕了!
免責聲明:本文內容由21ic獲得授權后發布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯系我們,謝謝!