Modified SDCardManager : added new methods and changed constructor
This commit is contained in:
parent
b272ab0f22
commit
6da0671121
@ -1,7 +1,8 @@
|
||||
#include "SDCardManager.h"
|
||||
|
||||
SDCardManager::SDCardManager()
|
||||
SDCardManager::SDCardManager(const Pin csPin, SPISettings cfg) : _csPin(csPin), _spiCfg(cfg), _mounted(false)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
double SDCardManager::getSize(const SizeUnit sizeUnit)
|
||||
@ -9,6 +10,8 @@ double SDCardManager::getSize(const SizeUnit sizeUnit)
|
||||
uint64_t numberOf512BytesChunks = blocksPerCluster() * totalClusters();//cardSize();
|
||||
double result = 0;
|
||||
|
||||
if(!isMounted()) return 0;
|
||||
|
||||
switch(sizeUnit)
|
||||
{
|
||||
case KBIT:
|
||||
@ -32,6 +35,22 @@ double SDCardManager::getSize(const SizeUnit sizeUnit)
|
||||
default:
|
||||
result = (double)numberOf512BytesChunks/2.0/1024.0/1024.0;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
boolean SDCardManager::mountSD()
|
||||
{
|
||||
_mounted = this->begin(_csPin, _spiCfg);
|
||||
return _mounted;
|
||||
}
|
||||
|
||||
void SDCardManager::unMountSD()
|
||||
{
|
||||
_mounted = false;
|
||||
this->end();
|
||||
}
|
||||
|
||||
boolean SDCardManager::isMounted()
|
||||
{
|
||||
return _mounted;
|
||||
}
|
||||
|
@ -7,10 +7,20 @@ class SDCardManager : public SDClass
|
||||
{
|
||||
friend class SAB;
|
||||
public:
|
||||
double getSize(const SizeUnit sizeUnit = GBYTE);
|
||||
SDCardManager(const Pin csPin, SPISettings cfg);
|
||||
|
||||
double getSize(const SizeUnit sizeUnit = GBYTE);
|
||||
boolean mountSD();
|
||||
void unMountSD();
|
||||
|
||||
boolean isMounted();
|
||||
|
||||
protected:
|
||||
SDCardManager();
|
||||
private:
|
||||
const Pin _csPin;
|
||||
SPISettings _spiCfg;
|
||||
boolean _mounted;
|
||||
};
|
||||
|
||||
#endif //SDCARDMANAGER_H
|
||||
|
Loading…
Reference in New Issue
Block a user