Objective:

In this tutorial we will discuss how to interface SD CARD with lpc1768 to read and write the fat32 files.


References

Thanks Mr. C.C. Dharmani for the SD Card driver libararies.
The original SD card library for AVR controllers can be downloaded from http://www.dharmanitech.com/.
These libraries have been modified to provide the standard interfaces like File_Write/File_read and also supports multiple file access.
Check the below links for fat32 basics:
https://www.win.tue.nl/~aeb/linux/fs/fat/fat-1.html
http://www.tavi.co.uk/phobos/fat.html

File Handling Functions

The below table shows the list of functions to access the sd card.
Refer fat32.c/fat32.h for more info.

Function Description
FILE_Open This functions opens the specified file in requested mode(READ/WRITE/APPEND).
FILE_Close This functions closes the file and releases the memory used by the file.
FILE_Delete This functions deletes the file from SD card.
FILE_GetCh This functions reads a byte of data from the file, Once the End of File is reached it returns EOF(26)
FILE_PutCh This functions writes a byte of data to the file, EOF(26) needs to be passed to mark the end of file and save it to SD card.
FILE_GetList This functions traverses through the SD card and lists the available files with their size.
FILE_GetMemoryStatics This functions calculates the total and free memory of the SD card. It takes upto 10secs(for 32GB) to calculate the memory statics depending on the size of CARD





Formatting SD Card

Connection Diagram

code

0SdCardInterface.gif