Con STM32F103C8T6 có 64KB bộ nhớ Flash. Khi cần lưu trữ lượng lớn dữ liệu thì 64KB rõ ràng là không đủ, lúc này cần sử dụng bộ nhớ lưu trữ khác, trong các phương án thì sử dụng thẻ nhớ là phương án khá đơn giản và rẻ tiền. Giao tiếp STM32 với thẻ nhớ dùng SPI theo sơ đồ phía dưới:
Thẻ nhớ mặc định được định dạng FAT. Và may mắn là cơ bản mọi thứ đã có thư viện sẵn.
Fat Driver sử dụng thư viện FatFs:
http://elm-chan.org/fsw/ff/00index_e.html
SD Driver sử dụng thư viện cung cấp theo ví dụ:
http://elm-chan.org/fsw/ff/ffsample.zip
Công việc còn lại chỉ là viết SPI Driver
Mình sẽ lần lượt giới thiệu qua về SPI của STM32F103C8T6 và cuối cùng là sử dụng SPI để giao tiếp với thẻ nhớ.