mirror of
https://git.mirrors.martin98.com/https://github.com/luc-github/ESP3D.git
synced 2025-08-15 12:05:53 +08:00
Add some sanity checks
This commit is contained in:
parent
5a5a2e77ec
commit
73ccc7932d
@ -24,7 +24,6 @@
|
|||||||
|
|
||||||
#include "esp_sd.h"
|
#include "esp_sd.h"
|
||||||
|
|
||||||
|
|
||||||
#define ESP_MAX_SD_OPENHANDLE 4
|
#define ESP_MAX_SD_OPENHANDLE 4
|
||||||
#if (SD_DEVICE == ESP_SD_NATIVE) && defined(ARDUINO_ARCH_ESP8266)
|
#if (SD_DEVICE == ESP_SD_NATIVE) && defined(ARDUINO_ARCH_ESP8266)
|
||||||
#define FS_NO_GLOBALS
|
#define FS_NO_GLOBALS
|
||||||
@ -64,10 +63,22 @@ File tSDFile_handle[ESP_MAX_SD_OPENHANDLE];
|
|||||||
bool ESP_SD::_enabled = false;
|
bool ESP_SD::_enabled = false;
|
||||||
|
|
||||||
bool ESP_SD::enableSharedSD() {
|
bool ESP_SD::enableSharedSD() {
|
||||||
|
log_esp3d("Enable Shared SD if possible");
|
||||||
if (_enabled) {
|
if (_enabled) {
|
||||||
|
log_esp3d("Already enabled, skip");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
_enabled = true;
|
_enabled = true;
|
||||||
|
#if defined(ESP3D_CS_SD_SENSE)
|
||||||
|
log_esp3d("Setup SD sense pin %d", ESP3D_CS_SD_SENSE);
|
||||||
|
pinMode(ESP3D_CS_SD_SENSE, INPUT_PULLUP);
|
||||||
|
#endif // defined(ESP3D_CS_SD_SENSE)
|
||||||
|
#if defined(ESP3D_POWER_SD_PIN) && ESP3D_POWER_SD_PIN != -1
|
||||||
|
log_esp3d("Setup SD power pin %d", ESP3D_POWER_SD_PIN);
|
||||||
|
pinMode(ESP3D_POWER_SD_PIN, OUTPUT);
|
||||||
|
// digitalWrite(ESP3D_POWER_SD_PIN, ESP3D_POWER_SD_VALUE);
|
||||||
|
#endif // defined(ESP3D_POWER_SD_PIN)
|
||||||
|
|
||||||
#if defined(ESP_FLAG_SHARED_SD_PIN) && ESP_FLAG_SHARED_SD_PIN != -1
|
#if defined(ESP_FLAG_SHARED_SD_PIN) && ESP_FLAG_SHARED_SD_PIN != -1
|
||||||
// need to check if SD is in use ?
|
// need to check if SD is in use ?
|
||||||
// Method : TBD
|
// Method : TBD
|
||||||
@ -76,6 +87,7 @@ bool ESP_SD::enableSharedSD() {
|
|||||||
log_esp3d("SD shared enabled PIN %d with %d", ESP_FLAG_SHARED_SD_PIN,
|
log_esp3d("SD shared enabled PIN %d with %d", ESP_FLAG_SHARED_SD_PIN,
|
||||||
ESP_FLAG_SHARED_SD_VALUE);
|
ESP_FLAG_SHARED_SD_VALUE);
|
||||||
digitalWrite(ESP_FLAG_SHARED_SD_PIN, ESP_FLAG_SHARED_SD_VALUE);
|
digitalWrite(ESP_FLAG_SHARED_SD_PIN, ESP_FLAG_SHARED_SD_VALUE);
|
||||||
|
Hal::wait(100);
|
||||||
#endif // ESP_FLAG_SHARED_SD_PIN
|
#endif // ESP_FLAG_SHARED_SD_PIN
|
||||||
#if defined(ESP3DLIB_ENV)
|
#if defined(ESP3DLIB_ENV)
|
||||||
// check if card is not currently in use
|
// check if card is not currently in use
|
||||||
@ -86,6 +98,7 @@ bool ESP_SD::enableSharedSD() {
|
|||||||
card.release();
|
card.release();
|
||||||
}
|
}
|
||||||
#endif // ESP3DLIB_ENV
|
#endif // ESP3DLIB_ENV
|
||||||
|
|
||||||
return _enabled;
|
return _enabled;
|
||||||
}
|
}
|
||||||
#endif // SD_DEVICE_CONNECTION == ESP_SHARED_SD
|
#endif // SD_DEVICE_CONNECTION == ESP_SHARED_SD
|
||||||
@ -113,7 +126,7 @@ bool ESP_SD::accessFS(uint8_t FS) {
|
|||||||
}
|
}
|
||||||
#if SD_DEVICE_CONNECTION == ESP_SHARED_SD
|
#if SD_DEVICE_CONNECTION == ESP_SHARED_SD
|
||||||
if (ESP_SD::enableSharedSD()) {
|
if (ESP_SD::enableSharedSD()) {
|
||||||
log_esp3d("Access SD");
|
log_esp3d("Access SD ok");
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
log_esp3d("Enable shared SD failed");
|
log_esp3d("Enable shared SD failed");
|
||||||
@ -132,7 +145,7 @@ void ESP_SD::releaseFS(uint8_t FS) {
|
|||||||
_enabled = false;
|
_enabled = false;
|
||||||
#if defined(ESP_FLAG_SHARED_SD_PIN) && ESP_FLAG_SHARED_SD_PIN != -1
|
#if defined(ESP_FLAG_SHARED_SD_PIN) && ESP_FLAG_SHARED_SD_PIN != -1
|
||||||
log_esp3d("SD shared disabled PIN %d with %d", ESP_FLAG_SHARED_SD_PIN,
|
log_esp3d("SD shared disabled PIN %d with %d", ESP_FLAG_SHARED_SD_PIN,
|
||||||
ESP_FLAG_SHARED_SD_VALUE);
|
!ESP_FLAG_SHARED_SD_VALUE);
|
||||||
digitalWrite(ESP_FLAG_SHARED_SD_PIN, !ESP_FLAG_SHARED_SD_VALUE);
|
digitalWrite(ESP_FLAG_SHARED_SD_PIN, !ESP_FLAG_SHARED_SD_VALUE);
|
||||||
#endif // ESP_FLAG_SHARED_SD_PIN
|
#endif // ESP_FLAG_SHARED_SD_PIN
|
||||||
#if defined(ESP3DLIB_ENV)
|
#if defined(ESP3DLIB_ENV)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user