aboutsummaryrefslogtreecommitdiffstats
path: root/src/gfile/fatfs/doc/img/app1.c
diff options
context:
space:
mode:
authorJoel Bodenmann <joel@unormal.org>2014-06-27 19:01:59 +0200
committerJoel Bodenmann <joel@unormal.org>2014-06-27 19:01:59 +0200
commit65ea8205b577ef40ad738f265082f40edf462100 (patch)
tree360d5da7a4acdd350313abe255e2dd9245989787 /src/gfile/fatfs/doc/img/app1.c
parentb55fa551e367ec4ce927970fd551b5055bc80c25 (diff)
parenta9f1520e02ed5425abbfb7e621f103053c2e3799 (diff)
downloaduGFX-65ea8205b577ef40ad738f265082f40edf462100.tar.gz
uGFX-65ea8205b577ef40ad738f265082f40edf462100.tar.bz2
uGFX-65ea8205b577ef40ad738f265082f40edf462100.zip
Merge branch 'fatfs'
Diffstat (limited to 'src/gfile/fatfs/doc/img/app1.c')
-rw-r--r--src/gfile/fatfs/doc/img/app1.c43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/gfile/fatfs/doc/img/app1.c b/src/gfile/fatfs/doc/img/app1.c
new file mode 100644
index 00000000..c7e690be
--- /dev/null
+++ b/src/gfile/fatfs/doc/img/app1.c
@@ -0,0 +1,43 @@
+/*------------------------------------------------------------/
+/ Open or create a file in append mode
+/------------------------------------------------------------*/
+
+FRESULT open_append (
+ FIL* fp, /* [OUT] File object to create */
+ const char* path /* [IN] File name to be opened */
+)
+{
+ FRESULT fr;
+
+ /* Opens an existing file. If not exist, creates a new file. */
+ fr = f_open(fp, path, FA_WRITE | FA_OPEN_ALWAYS);
+ if (fr == FR_OK) {
+ /* Seek to end of the file to append data */
+ fr = f_lseek(fp, f_size(fp));
+ if (fr != FR_OK)
+ f_close(fp);
+ }
+ return fr;
+}
+
+
+int main (void)
+{
+ FRESULT fr;
+ FATFS fs;
+ FIL fil;
+
+ /* Open or create a log file and ready to append */
+ f_mount(&fs, "", 0);
+ fr = open_append(&fil, "logfile.txt");
+ if (fr != FR_OK) return 1;
+
+ /* Append a line */
+ f_printf(&fil, "%02u/%02u/%u, %2u:%02u\n", Mday, Mon, Year, Hour, Min);
+
+ /* Close the file */
+ f_close(&fil);
+
+ return 0;
+}
+