microSDカードの読み書きをstm32のSPI通信で行う。

この動画が非常に参考になった。

自分の場合、このリンク先の「UPDATE 2」に該当した。
https://controllerstech.com/sd-card-using-spi-in-stm32/

回路は、以下の画像に注意して、
必ずSCLK以外のDO、DI、CSは必ずプルアップし、電源はマイコン以外のものを用意する。

画像18

FATFSを追加。

画像1

画像2

SPIを追加。
通信速度は、10Mを超えるとダメになることが多いらしいです。

画像3

画像17

SPI通信のSS(CS)用のピンを割り当てた。

画像5

ここからfatfs_sd.cとfatfs_sd.hを入手し、それぞれ自分のSrcとIncに入れて、リフレッシュする。
https://controllerstech.com/wp-content/uploads/2020/07/SDCARD_SPI_OLD_F103.zip

画像6

以下3つのファイルを開いて、下記のコードを追加。

画像17

画像18

画像18

画像19

画像19

画像17

画像17

画像17

最後にmain.cを実装する。

画像21

画像17

画像17

自分はこれで動いた。
ファイルが書き込めているか否かは、パソコンで確認できる。

画像19

画像20













この記事が気に入ったらサポートをしてみませんか?