This commit is contained in:
2025-05-13 02:03:18 +03:00
parent 72860c7968
commit 90ef6120fd
463 changed files with 380758 additions and 2 deletions
+42
View File
@@ -0,0 +1,42 @@
/* vim: set ai et ts=4 sw=4: */
#ifndef __SDCARD_H__
#define __SDCARD_H__
#include "stm32h7xx_hal.h"
#define SDCARD_SPI_PORT hspi3
#define SDCARD_CS_Pin GPIO_PIN_15 // Arduino shield: D4
#define SDCARD_CS_GPIO_Port GPIOA
#ifdef __cplusplus
extern "C" {
#endif
// call before initializing any SPI devices
void SDCARD_Unselect();
// all procedures return 0 on success, < 0 on failure
int SDCARD_Init();
int SDCARD_GetBlocksNumber(uint32_t* num);
int SDCARD_ReadSingleBlock(uint32_t blockNum, uint8_t* buff); // sizeof(buff) == 512!
int SDCARD_WriteSingleBlock(uint32_t blockNum, const uint8_t* buff); // sizeof(buff) == 512!
// Read Multiple Blocks
int SDCARD_ReadBegin(uint32_t blockNum);
int SDCARD_ReadData(uint8_t* buff); // sizeof(buff) == 512!
int SDCARD_ReadEnd();
// Write Multiple Blocks
int SDCARD_WriteBegin(uint32_t blockNum);
int SDCARD_WriteData(const uint8_t* buff); // sizeof(buff) == 512!
int SDCARD_WriteEnd();
// TODO: read lock flag? CMD13, SEND_STATUS
#ifdef __cplusplus
}
#endif
#endif // __SDCARD_H__