GPS Device
Loading...
Searching...
No Matches
sd.h
Go to the documentation of this file.
1
34
40
41#ifndef SD_H__
42#define SD_H__
43
44#include "err.h"
45#include "stm32f401re.h"
46#include "stm32f401re_gpio.h"
47#include "configuration.h"
48
55
100
110
112
119
135
147
159
168
191ERR_te sd_init_handle(SD_CFG_ts *sd_cfg, SD_HANDLE_ts **sd_handle_o);
192
204
215ERR_te sd_get_handle_init(SD_HANDLE_ts *sd_handle, bool *handle_init_o);
216
230ERR_te sd_get_sector_count(SD_HANDLE_ts *sd_handle, uint32_t *sector_count_o);
231
245ERR_te sd_get_sector_size(SD_HANDLE_ts *sd_handle, uint32_t *sector_size_o);
246
269ERR_te sd_read(SD_HANDLE_ts *sd_handle, uint8_t *read_buf, uint32_t start_sector, uint32_t num_sectors);
270
293ERR_te sd_write(SD_HANDLE_ts *sd_handle, uint8_t *write_buf, uint32_t start_sector, uint32_t num_sectors);
294
308
310
311#endif
312
System-wide error code definitions.
ERR_te
Standard return type used by all public API functions.
Definition err.h:35
ERR_te sd_start_subsys(void)
Starts the SD card subsystem.
Definition sd.c:386
ERR_te sd_stop_subsys(void)
Stops the SD card subsystem.
Definition sd.c:410
ERR_te sd_deinit_handle(SD_HANDLE_ts *sd_handle)
Deinitializes an SD card handle and resets the SPI peripheral.
Definition sd.c:727
ERR_te sd_ioctl(SD_HANDLE_ts *sd_handle)
Executes an IOCTL control command on the SD card handle.
ERR_te sd_init_subsys(void)
Initializes the SD card subsystem.
Definition sd.c:325
ERR_te sd_read(SD_HANDLE_ts *sd_handle, uint8_t *read_buf, uint32_t start_sector, uint32_t num_sectors)
Reads one or more sectors from the SD card.
Definition sd.c:805
ERR_te sd_write(SD_HANDLE_ts *sd_handle, uint8_t *write_buf, uint32_t start_sector, uint32_t num_sectors)
Writes one or more sectors to the SD card.
Definition sd.c:933
ERR_te sd_init_handle(SD_CFG_ts *sd_cfg, SD_HANDLE_ts **sd_handle_o)
Initializes an SD card handle and performs the full SPI-mode power-up sequence.
Definition sd.c:434
ERR_te sd_deinit_subsys(void)
Deinitializes the SD card subsystem.
Definition sd.c:361
ERR_te sd_get_sector_size(SD_HANDLE_ts *sd_handle, uint32_t *sector_size_o)
Retrieves the sector (block) size of the SD card in bytes.
Definition sd.c:798
ERR_te sd_get_sector_count(SD_HANDLE_ts *sd_handle, uint32_t *sector_count_o)
Retrieves the total sector (block) count of the SD card.
Definition sd.c:791
ERR_te sd_get_handle_init(SD_HANDLE_ts *sd_handle, bool *handle_init_o)
Retrieves the initialization state of an SD card handle.
Definition sd.c:784
struct sd_handle_s SD_HANDLE_ts
Opaque handle representing an SD card instance.
Definition sd.h:109
GPIO_PIN_te
GPIO pin number within a port (0–15).
GPIO_ALTERNATE_FUNCTION_te
GPIO alternate function mapping (AF0–AF15).
STM32F401RE MCU-specific peripheral register definitions and bit position enumerations.
STM32F401RE GPIO driver public API.
GPIO peripheral register map.
Definition stm32f401re.h:95
Configuration structure for initializing an SD card handle.
Definition sd.h:66
GPIO_REGDEF_ts * miso_gpio_port
Definition sd.h:80
GPIO_PIN_te sclk_gpio_pin
Definition sd.h:86
GPIO_PIN_te cs_gpio_pin
Definition sd.h:89
GPIO_REGDEF_ts * mosi_gpio_port
Definition sd.h:83
char name[CONFIG_SD_MAX_NAME_LEN]
Definition sd.h:68
GPIO_REGDEF_ts * cs_gpio_port
Definition sd.h:77
SPI_REGDEF_ts * spi_instance
Definition sd.h:71
GPIO_PIN_te mosi_gpio_pin
Definition sd.h:95
GPIO_ALTERNATE_FUNCTION_te gpio_alternate_function
Definition sd.h:98
GPIO_REGDEF_ts * sclk_gpio_port
Definition sd.h:74
GPIO_PIN_te miso_gpio_pin
Definition sd.h:92
SPI peripheral register map.
Internal structure representing a single SD card handle instance.
Definition sd.c:214