mbed OS SDCard Driver for GR-PEACH.

Dependencies:   sd-driver-hs

Dependents:   mbed-os-storage-access GR-PEACH_Digital_Signage GR-PEACH-mbed-os-storage-access

You can access it faster than using sd-driver as it is.

Committer:
dkato
Date:
Thu Mar 23 08:34:43 2017 +0000
Revision:
1:98b088c91edd
Parent:
0:4bc3a3f17825
Changed sd-driver to high-speed access version.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dkato 0:4bc3a3f17825 1 #ifndef MBED_SDFILESYSTEM_GR_PEACH_H
dkato 0:4bc3a3f17825 2 #define MBED_SDFILESYSTEM_GR_PEACH_H
dkato 0:4bc3a3f17825 3
dkato 0:4bc3a3f17825 4 #include "SDBlockDevice.h"
dkato 0:4bc3a3f17825 5
dkato 0:4bc3a3f17825 6 /**
dkato 0:4bc3a3f17825 7 * A class to communicate a SD
dkato 0:4bc3a3f17825 8 */
dkato 0:4bc3a3f17825 9 class SDBlockDevice_GR_PEACH : public SDBlockDevice {
dkato 0:4bc3a3f17825 10 public:
dkato 0:4bc3a3f17825 11
dkato 0:4bc3a3f17825 12 /**
dkato 0:4bc3a3f17825 13 * Constructor
dkato 0:4bc3a3f17825 14 *
dkato 0:4bc3a3f17825 15 * @param rootdir mount name
dkato 0:4bc3a3f17825 16 */
dkato 0:4bc3a3f17825 17 SDBlockDevice_GR_PEACH() : SDBlockDevice(P8_5, P8_6, P8_3, P8_4), _sd_cd(P7_8), _connect(false) {
dkato 0:4bc3a3f17825 18 // Set SPI clock rate to 20MHz for data transfer
dkato 1:98b088c91edd 19 _transfer_sck = 20000000;
dkato 0:4bc3a3f17825 20 }
dkato 0:4bc3a3f17825 21
dkato 0:4bc3a3f17825 22 /**
dkato 0:4bc3a3f17825 23 * Check if a SD is connected
dkato 0:4bc3a3f17825 24 *
dkato 0:4bc3a3f17825 25 * @return true if a SD is connected
dkato 0:4bc3a3f17825 26 */
dkato 0:4bc3a3f17825 27 bool connected() {
dkato 0:4bc3a3f17825 28 if (_sd_cd.read() != 0) {
dkato 0:4bc3a3f17825 29 _connect = false;
dkato 0:4bc3a3f17825 30 }
dkato 0:4bc3a3f17825 31 return _connect;
dkato 0:4bc3a3f17825 32 }
dkato 0:4bc3a3f17825 33
dkato 0:4bc3a3f17825 34 /**
dkato 0:4bc3a3f17825 35 * Try to connect to a SD
dkato 0:4bc3a3f17825 36 *
dkato 0:4bc3a3f17825 37 * @return true if connection was successful
dkato 0:4bc3a3f17825 38 */
dkato 0:4bc3a3f17825 39 bool connect() {
dkato 0:4bc3a3f17825 40 if (_sd_cd.read() == 0) {
dkato 0:4bc3a3f17825 41 _connect = true;
dkato 0:4bc3a3f17825 42 } else {
dkato 0:4bc3a3f17825 43 _connect = false;
dkato 0:4bc3a3f17825 44 }
dkato 0:4bc3a3f17825 45 return _connect;
dkato 0:4bc3a3f17825 46 }
dkato 0:4bc3a3f17825 47
dkato 0:4bc3a3f17825 48
dkato 0:4bc3a3f17825 49 private:
dkato 0:4bc3a3f17825 50 DigitalIn _sd_cd;
dkato 0:4bc3a3f17825 51 bool _connect;
dkato 0:4bc3a3f17825 52 };
dkato 0:4bc3a3f17825 53
dkato 0:4bc3a3f17825 54 #endif