Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: 4DGL-uLCD-SE FATFileSystem
Fork of SDFileSystem by
Diff: SDFileSystem.cpp
- Revision:
- 1:25f4ba436b81
- Parent:
- 0:2a6d8a096edc
- Child:
- 2:eec1db773e7d
--- a/SDFileSystem.cpp Tue Jul 29 20:12:23 2014 +0000
+++ b/SDFileSystem.cpp Wed Jul 30 15:36:56 2014 +0000
@@ -19,7 +19,7 @@
#include "CRC7.h"
#include "CRC16.h"
-SDFileSystem::SDFileSystem(PinName mosi, PinName miso, PinName sclk, PinName cs, PinName cd, const char* name, int hz) : FATFileSystem(name), m_SPI(mosi, miso, sclk), m_CS(cs, 1), m_CD(cd)
+SDFileSystem::SDFileSystem(PinName mosi, PinName miso, PinName sclk, PinName cs, PinName cd, const char* name, SwitchType cdtype, int hz) : FATFileSystem(name), m_SPI(mosi, miso, sclk), m_CS(cs, 1), m_CD(cd), m_CD_ASSERT((int)cdtype)
{
//Initialize the member variables
m_SpiFreq = hz;
@@ -31,7 +31,10 @@
//Configure the card detect pin
m_CD.mode(PullUp);
- m_CD.fall(this, &SDFileSystem::checkSocket);
+ if (cdtype == SWITCH_NO)
+ m_CD.rise(this, &SDFileSystem::checkSocket);
+ else
+ m_CD.fall(this, &SDFileSystem::checkSocket);
}
SDFileSystem::CardType SDFileSystem::card_type()
@@ -347,7 +350,7 @@
void SDFileSystem::checkSocket()
{
//Check if a card is in the socket
- if (m_CD) {
+ if (m_CD == m_CD_ASSERT) {
//The socket is occupied, clear the STA_NODISK flag
m_Status &= ~STA_NODISK;
} else {
