configuration definitions More...
#include <stdint.h>
Macros | |
#define | AVR_SOFT_SPI 0 |
#define | DESTRUCTOR_CLOSES_FILE 0 |
#define | DUE_SOFT_SPI 0 |
#define | ENABLE_SPI_TRANSACTION 0 |
#define | ENABLE_SPI_YIELD 0 |
#define | ENDL_CALLS_FLUSH 0 |
#define | FAT12_SUPPORT 0 |
#define | LEONARDO_SOFT_SPI 0 |
#define | MEGA_SOFT_SPI 0 |
#define | SD_FILE_USES_STREAM 0 |
#define | TEENSY3_SOFT_SPI 0 |
#define | USE_ARDUINO_SPI_LIBRARY 0 |
#define | USE_MULTI_BLOCK_IO 1 |
#define | USE_MULTIPLE_SPI_TYPES 0 |
#define | USE_SD_CRC 0 |
#define | USE_SEPARATE_FAT_CACHE 0 |
Variables | |
uint8_t const | SOFT_SPI_MISO_PIN = 12 |
uint8_t const | SOFT_SPI_MOSI_PIN = 11 |
uint8_t const | SOFT_SPI_SCK_PIN = 13 |
const uint8_t | SPI_SCK_INIT_DIVISOR = 128 |
configuration definitions
#define AVR_SOFT_SPI 0 |
Set AVR_SOFT_SPI nonzero to use software SPI in the SdFat class on all AVR Arduinos. Set the soft SPI pins below.
#define DESTRUCTOR_CLOSES_FILE 0 |
Set DESTRUCTOR_CLOSES_FILE nonzero to close a file in its destructor.
Causes use of lots of heap in ARM.
#define DUE_SOFT_SPI 0 |
Set DUE_SOFT_SPI nonzero to use software SPI in the SdFat class on Due Arduinos. Set the soft SPI pins below.
#define ENABLE_SPI_TRANSACTION 0 |
Set ENABLE_SPI_TRANSACTION nonzero to enable the SPI transaction feature of the standard Arduino SPI library. You must include SPI.h in your sketches when ENABLE_SPI_TRANSACTION is nonzero.
#define ENABLE_SPI_YIELD 0 |
Set ENABLE_SPI_YIELD nonzero to enable release of the SPI bus during SD card busy waits.
This will allow interrupt routines to access the SPI bus if ENABLE_SPI_TRANSACTION is nonzero.
Setting ENABLE_SPI_YIELD will introduce some extra overhead and will slightly slow transfer rates. A few older SD cards may fail when ENABLE_SPI_YIELD is nonzero.
#define ENDL_CALLS_FLUSH 0 |
Call flush for endl if ENDL_CALLS_FLUSH is nonzero
The standard for iostreams is to call flush. This is very costly for SdFat. Each call to flush causes 2048 bytes of I/O to the SD.
SdFat has a single 512 byte buffer for SD I/O so it must write the current data block to the SD, read the directory block from the SD, update the directory entry, write the directory block to the SD and read the data block back into the buffer.
The SD flash memory controller is not designed for this many rewrites so performance may be reduced by more than a factor of 100.
If ENDL_CALLS_FLUSH is zero, you must call flush and/or close to force all data to be written to the SD.
#define FAT12_SUPPORT 0 |
Set FAT12_SUPPORT nonzero to enable use if FAT12 volumes. FAT12 has not been well tested and requires additional flash.
#define LEONARDO_SOFT_SPI 0 |
Set LEONARDO_SOFT_SPI nonzero to use software SPI in the SdFat class on Leonardo Arduinos. Set the soft SPI pins below.
LEONARDO_SOFT_SPI allows an unmodified 328 Shield to be used on Leonardo Arduinos.
#define MEGA_SOFT_SPI 0 |
Set MEGA_SOFT_SPI nonzero to use software SPI in the SdFat class on Mega Arduinos. Set the soft SPI pins below.
MEGA_SOFT_SPI allows an unmodified 328 Shield to be used on Mega Arduinos. Set the soft SPI pins below.
#define SD_FILE_USES_STREAM 0 |
#define TEENSY3_SOFT_SPI 0 |
Set TEENSY3_SOFT_SPI nonzero to use software SPI in the SdFat class on Teensy 3.x boards. Set the soft SPI pins below.
#define USE_ARDUINO_SPI_LIBRARY 0 |
Set USE_ARDUINO_SPI_LIBRARY nonzero to force use of the Arduino Standard SPI library in the SdFat class. This will override native and software SPI for all boards.
#define USE_MULTI_BLOCK_IO 1 |
Set USE_MULTI_BLOCK_SD_IO nonzero to use multi-block SD read/write.
Don't use mult-block read/write on small AVR boards.
#define USE_MULTIPLE_SPI_TYPES 0 |
Set USE_MULTIPLE_SPI_TYPES nonzero to enable the SdFatSoftSpi and SdFatLibSpi classes. SdFatSoftSpi uses software SPI and SdFatLibSpi uses the standard Arduino SPI library.
#define USE_SD_CRC 0 |
To enable SD card CRC checking set USE_SD_CRC nonzero.
Set USE_SD_CRC to 1 to use a smaller slower CRC-CCITT function.
Set USE_SD_CRC to 2 to used a larger faster table driven CRC-CCITT function.
#define USE_SEPARATE_FAT_CACHE 0 |
Set USE_SEPARATE_FAT_CACHE nonzero to use a second 512 byte cache for FAT table entries. Improves performance for large writes that are not a multiple of 512 bytes.
uint8_t const SOFT_SPI_MISO_PIN = 12 |
Software SPI Master In Slave Out pin
uint8_t const SOFT_SPI_MOSI_PIN = 11 |
Define software SPI pins. Default allows Uno shields to be used on other boards.Software SPI Master Out Slave In pin
uint8_t const SOFT_SPI_SCK_PIN = 13 |
Software SPI Clock pin
const uint8_t SPI_SCK_INIT_DIVISOR = 128 |
SPI SCK divisor for SD initialization commands. or greater