Port of Petit FatFs module for MSP430G2553.
|
1 year ago | |
---|---|---|
LICENSE | 1 year ago | |
PORTING.md | 1 year ago | |
README.md | 1 year ago | |
diskio.c | 1 year ago | |
diskio.h | 1 year ago | |
pff.c | 1 year ago | |
pff.h | 1 year ago | |
pffconf.h | 1 year ago | |
spi.c | 1 year ago | |
spi.h | 1 year ago |
Library for MSP430G2553 that helps to interact with SD cards with the FAT file system.
This is port of Petit FatFs module (0.03a) with applied patch. All functions that are hard-conected to hardware are located in spi.c file. If you want to port this library for your MSP430 model (or maybe for another general-purpose MCU), you need to edit this file. By default, code uses B0 USI module and P1.3 as CS.
#include <msp430g2553.h>
#include "pff.h"
int main(void) {
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= BIT0; // set pin to output
P1OUT &= ~BIT0; // disable LED initially
FATFS fs; // Work area (file system object) for the volume
BYTE buff[16]; // File read buffer
UINT br; // File read count
FRESULT res; // Petit FatFs function common result code
// Mount the volume
res = pf_mount(&fs);
if (res != FR_OK) {
while (1); // don't continue after an error
}
// Open a file
res = pf_open("/TEST.TXT");
if (res != FR_OK) {
while (1); // don't continue after an error
}
// Read data to the memory
res = pf_read(buff, 16, &br); // read 16 bytes from file
P1OUT |= BIT0; // enable LED on finish
while (1);
return 0;
}
#include <msp430g2553.h>
#include <string.h>
#include "pff.h"
int main(void) {
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= BIT0; // set pin to output
P1OUT &= ~BIT0; // disable LED initially
FATFS fs; // Work area (file system object) for the volume
BYTE *buff = "test"; // File write buffer
UINT bw; // File write count
FRESULT res; // Petit FatFs function common result code
// Mount the volume
res = pf_mount(&fs);
if (res != FR_OK) {
while (1); // don't continue after an error
}
// Open a file
res = pf_open("/TEST.TXT");
if (res != FR_OK) {
while (1); // don't continue after an error
}
pf_write(buff, 5, &bw); // initiate write operation, write data to the file
pf_write(0, 0, &bw); // finalize the current write operation.
P1OUT |= BIT0; // enable LED on finish
while (1);
return 0;
}
/*----------------------------------------------------------------------------/
/ Petit FatFs - FAT file system module R0.03a
/-----------------------------------------------------------------------------/Copyright (C) 2019, ChaN, all right reserved.
Petit FatFs module is an open source software. Redistribution and use of
Petit FatFs in source and binary forms, with or without modification, are
permitted provided that the following condition is met:
- Redistributions of source code must retain the above copyright notice,
this condition and the following disclaimer.This software is provided by the copyright holder and contributors "AS IS"
and any warranties related to this software are DISCLAIMED.
The copyright owner or contributors be NOT LIABLE for any damages caused
by use of this software.
GNU GPLv3 license (see LICENSE file for details).
Original ChaN’s Petit Fat FileSystem module
Port of version R0.03 by RickKimbal
rjhcoding’s tutorial about interface of the SD card