1.說在前面:最近嘗試操作vs1053音訊模組 使用的資料傳輸方法使用spi協議,打算學一下spi的配置方式
2.spi
2-1:spi(secial periperal inte***ce),作為四線的通訊介面,有著miso mosi sclk和cs
miso:主進從出
mosi:主出從進
sclk: 時間訊號
cs:片選訊號
2-2:cpha和cpol
cpha為時鐘相位,可以配置為1/0,控制資料的取樣方式,設定為0的時候,控制在時鐘週期的第乙個跳變沿進行資料採集,設定為1的時候在第二個跳變沿進行採集
cpol為時鐘極性,可以配置為1/0,控制空閒狀態的時鐘極性,設定為0的時候空閒狀態為低電平,設定為1空閒狀態為高電平
時序圖:
3.配置思路
3-1:設定spi1的時鐘和復用引腳時鐘(spi_clock apb2enr的12位)
在設定設定pa5 6 7(sck miso mosi)為復用模式
3-2:設定工作模式(說實話 庫函式設定採用結構體方式看起來很清晰,暫存器直接對spi->cr1進行設定)
設定主/從機模式 資料的位數和時間記性和相位以及spi時鐘的時鐘頻率
oid spi1_init(void)
3-3:spi的速度設定以及使能(對spi->cr1配置)使能位:spi1->cr1|=1<<6;
//spi1 速度設定函式
//speedset:0~7
//spi速度=fapb2/2^(speedset+1)
//apb2時鐘一般為72mhz
void spi1_setspeed(u8 speedset)
3-4:傳送資料配置(檢查傳送區的資料是否進行傳送(傳送區是否為空)spi1->sr的最低位是否為0)
u8 spi1_readwritebyte(u8 txdata)
spi1->dr=txdata; //傳送乙個byte
retry=0;
while((spi1->sr&1<<0)==0) //等待接收完乙個byte
return spi1->dr; //返**到的資料
}
3-5:spi的作用範圍為eeprom flash rtc ad等 是一種高速全雙工,同步的通訊匯流排 STM32學習 SPI筆記 暫存器版
1.介紹 2.模擬spi 3.硬體spi 一 介紹簡述 1 通常 spi 通訊要求 4 根線,分別是 mosi 主機輸出從機輸入 miso 主機輸入從機輸出 clk 時鐘線 cs 片選線 2 當傳送和接受資料的工作都準備好了,只要有時鐘 clk,就傳送資料,沒有時鐘就不傳送,而且乙個時鐘週期傳送一位...
STM32 SPI主從通訊
分享乙個大神的人工智慧教程。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到人工智慧的隊伍中來!我的 我的知乎 獲取更多資訊。主機 訪問密碼 7bb6 從機 訪問密碼 fd5a 訪問密碼 ca90 測試原理及現象 主機間隔500ms傳送10個字元 0 9 從機開啟spi中斷接收資料,接收滿10...
STM32 SPI傳送波形
三 實測波形總結 根據spi協議,stm32傳送的波形有四種可能,如圖所示,主要分為兩種時鐘相位 cpha 和時鐘極性 cpol 關於時鐘極性,也有很多人把它理解為第乙個邊沿,第二個邊沿 也有人覺得cpha 0時,時鐘是從第乙個邊沿啟動,這樣理解不是很準確。其實還有第二種理解方式,那就是它們都是 第...