It serves as a low-level driver for the higher level modules such as partition and file system access.
Files | |
file | sd_raw.c |
MMC/SD raw access implementation. | |
file | sd_raw.h |
MMC/SD raw access header. | |
file | sd_raw_config.h |
MMC/SD support configuration. | |
Modules | |
MMC/SD configuration | |
Preprocessor defines to configure the MMC/SD support. | |
Functions | |
uint8_t | sd_raw_init () |
Initializes memory card communication. | |
uint8_t | sd_raw_available () |
Checks wether a memory card is located in the slot. | |
uint8_t | sd_raw_locked () |
Checks wether the memory card is locked for write access. | |
uint8_t | sd_raw_read (uint32_t offset, uint8_t *buffer, uint16_t length) |
Reads raw data from the card. | |
uint8_t | sd_raw_read_interval (uint32_t offset, uint8_t *buffer, uint16_t interval, uint16_t length, sd_raw_interval_handler callback, void *p) |
Continuously reads units of interval bytes and calls a callback function. | |
uint8_t | sd_raw_write (uint32_t offset, const uint8_t *buffer, uint16_t length) |
Writes raw data to the card. | |
uint8_t | sd_raw_sync () |
Writes the write buffer's content to the card. |
uint8_t sd_raw_available | ( | ) |
Checks wether a memory card is located in the slot.
uint8_t sd_raw_init | ( | ) |
Initializes memory card communication.
uint8_t sd_raw_locked | ( | ) |
Checks wether the memory card is locked for write access.
uint8_t sd_raw_read | ( | uint32_t | offset, | |
uint8_t * | buffer, | |||
uint16_t | length | |||
) |
Reads raw data from the card.
[in] | offset | The offset from which to read. |
[out] | buffer | The buffer into which to write the data. |
[in] | length | The number of bytes to read. |
uint8_t sd_raw_read_interval | ( | uint32_t | offset, | |
uint8_t * | buffer, | |||
uint16_t | interval, | |||
uint16_t | length, | |||
sd_raw_interval_handler | callback, | |||
void * | p | |||
) |
Continuously reads units of interval
bytes and calls a callback function.
This function starts reading at the specified offset. Every interval
bytes, it calls the callback function with the associated data buffer.
By returning zero, the callback may stop reading.
This function only works if the following conditions are met:
[in] | offset | Offset from which to start reading. |
[in] | buffer | Pointer to a buffer which is at least interval bytes in size. |
[in] | interval | Number of bytes to read before calling the callback function. |
[in] | length | Number of bytes to read altogether. |
[in] | callback | The function to call every interval bytes. |
[in] | p | An opaque pointer directly passed to the callback function. |
uint8_t sd_raw_sync | ( | ) |
Writes the write buffer's content to the card.
uint8_t sd_raw_write | ( | uint32_t | offset, | |
const uint8_t * | buffer, | |||
uint16_t | length | |||
) |
Writes raw data to the card.
[in] | offset | The offset where to start writing. |
[in] | buffer | The buffer containing the data to be written. |
[in] | length | The number of bytes to write. |