iT邦幫忙

2021 iThome 鐵人賽

DAY 21
0
Arm Platforms

基於ARM-M0架構MCU之落摔檢測韌體開發系列 第 21

[DAY 21] _SPI協議(1)

SPI協議類似於I2C差別在於是全雙工的,正常有四條線:CLK、MISO、MOSI、SS
先來看這四條線的作用吧

1.CLK

時鐘訊號線,I2C一樣用於數據同步,由Master(主機)產生,不同的設備支持的速度都不太一樣,以STM32的SPI來說最快的速度Fpclk/2,兩個裝置的通訊速度取決於較低的那一方。

2.MISO (Master Input Slave Output)

顧名思義主機輸入從機輸出,MCU為接收資料

3.MOSI (Master Output Slave Input)

顧名思義主機輸出從機輸入,MCU為發送Data

4.SS (Slave Select)

從機選擇線也可以稱為NSS或著CS,有並聯幾個從機就有幾個SS,不管有多少從機連接MCU設備都只會共用以上三條線,SS腳拉Low來選擇當下要跟哪個從機做通訊,所以SS拉高是做為結束信號。
看下圖應該會更好理解,SS為選擇設備的線這樣就不需要像I2C先傳呼叫地址了
https://ithelp.ithome.com.tw/upload/images/20211004/20141979M12LAgUaGj.png


協議介紹

先來看看SPI的時序圖吧
https://ithelp.ithome.com.tw/upload/images/20211004/20141979fdSAOhLaPD.png
可以看到SS訊號為起始信號,SPI有四種模式正緣或是負緣採樣,還有雙數位邊沿採樣或著是奇數邊緣採樣,今天剛看懂不是說很了解,明天會再詳細說明。


上一篇
[DAY 20] _前20天的結語(落摔判斷流程)
下一篇
[DAY 22] _SPI協議(2)
系列文
基於ARM-M0架構MCU之落摔檢測韌體開發32

尚未有邦友留言

立即登入留言