mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-11-26 17:46:14 +01:00
D EEPROM command
This commit is contained in:
parent
75d7547f11
commit
6dc4bcdb71
|
@ -11,7 +11,6 @@
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "DCCEX.h"
|
#include "DCCEX.h"
|
||||||
#include "EEStore.h"
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
|
@ -68,13 +67,6 @@ void setup()
|
||||||
// This is normally Serial but uses SerialUSB on a SAMD processor
|
// This is normally Serial but uses SerialUSB on a SAMD processor
|
||||||
Serial.begin(115200);
|
Serial.begin(115200);
|
||||||
|
|
||||||
// Responsibility 1b ;-) Load stuff from EEprom
|
|
||||||
(void)EEPROM; // tell compiler not to warn this is unused
|
|
||||||
EEStore::init();
|
|
||||||
#ifdef EESTOREDEBUG
|
|
||||||
EEStore::dump(128);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Start the WiFi interface on a MEGA, Uno cannot currently handle WiFi
|
// Start the WiFi interface on a MEGA, Uno cannot currently handle WiFi
|
||||||
// NOTE: References to Serial1 are for the serial port used to connect
|
// NOTE: References to Serial1 are for the serial port used to connect
|
||||||
// your wifi chip/shield.
|
// your wifi chip/shield.
|
||||||
|
|
7
DCC.cpp
7
DCC.cpp
|
@ -20,7 +20,7 @@
|
||||||
#include "DCC.h"
|
#include "DCC.h"
|
||||||
#include "DCCWaveform.h"
|
#include "DCCWaveform.h"
|
||||||
#include "DIAG.h"
|
#include "DIAG.h"
|
||||||
|
#include "EEStore.h"
|
||||||
|
|
||||||
// This module is responsible for converting API calls into
|
// This module is responsible for converting API calls into
|
||||||
// messages to be sent to the waveform generator.
|
// messages to be sent to the waveform generator.
|
||||||
|
@ -45,6 +45,11 @@ __FlashStringHelper* DCC::shieldName=NULL;
|
||||||
|
|
||||||
void DCC::begin(const __FlashStringHelper* motorShieldName, MotorDriver * mainDriver, MotorDriver* progDriver, byte timerNumber) {
|
void DCC::begin(const __FlashStringHelper* motorShieldName, MotorDriver * mainDriver, MotorDriver* progDriver, byte timerNumber) {
|
||||||
shieldName=(__FlashStringHelper*)motorShieldName;
|
shieldName=(__FlashStringHelper*)motorShieldName;
|
||||||
|
|
||||||
|
// Load stuff from EEprom
|
||||||
|
(void)EEPROM; // tell compiler not to warn this is unused
|
||||||
|
EEStore::init();
|
||||||
|
|
||||||
DCCWaveform::begin(mainDriver,progDriver, timerNumber);
|
DCCWaveform::begin(mainDriver,progDriver, timerNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -46,6 +46,7 @@ const int HASH_KEYWORD_ON = 2657;
|
||||||
const int HASH_KEYWORD_DCC = 6436;
|
const int HASH_KEYWORD_DCC = 6436;
|
||||||
const int HASH_KEYWORD_SLOW = -17209;
|
const int HASH_KEYWORD_SLOW = -17209;
|
||||||
const int HASH_KEYWORD_PROGBOOST = -6353;
|
const int HASH_KEYWORD_PROGBOOST = -6353;
|
||||||
|
const int HASH_KEYWORD_EEPROM = -7168;
|
||||||
|
|
||||||
int DCCEXParser::stashP[MAX_PARAMS];
|
int DCCEXParser::stashP[MAX_PARAMS];
|
||||||
bool DCCEXParser::stashBusy;
|
bool DCCEXParser::stashBusy;
|
||||||
|
@ -608,6 +609,11 @@ bool DCCEXParser::parseD(Print *stream, int params, int p[])
|
||||||
DCC::setProgTrackBoost(true);
|
DCC::setProgTrackBoost(true);
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
case HASH_KEYWORD_EEPROM:
|
||||||
|
if (params >= 1)
|
||||||
|
EEStore::dump(p[1]);
|
||||||
|
return true;
|
||||||
|
|
||||||
default: // invalid/unknown
|
default: // invalid/unknown
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,9 +2,7 @@
|
||||||
#include "Turnouts.h"
|
#include "Turnouts.h"
|
||||||
#include "Sensors.h"
|
#include "Sensors.h"
|
||||||
#include "Outputs.h"
|
#include "Outputs.h"
|
||||||
#ifdef EESTOREDEBUG
|
|
||||||
#include "DIAG.h"
|
#include "DIAG.h"
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(ARDUINO_ARCH_SAMD)
|
#if defined(ARDUINO_ARCH_SAMD)
|
||||||
ExternalEEPROM EEPROM;
|
ExternalEEPROM EEPROM;
|
||||||
|
@ -74,15 +72,14 @@ int EEStore::pointer(){
|
||||||
}
|
}
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifdef EESTOREDEBUG
|
|
||||||
void EEStore::dump(int num) {
|
void EEStore::dump(int num) {
|
||||||
byte b;
|
byte b;
|
||||||
|
DIAG(F("\nAddr 0x char\n"));
|
||||||
for (int n=0 ; n<num; n++) {
|
for (int n=0 ; n<num; n++) {
|
||||||
EEPROM.get(n, b);
|
EEPROM.get(n, b);
|
||||||
DIAG(F("%d %x %c\n"),n,b,isascii(b) ? b : ' ');
|
DIAG(F("%d %x %c\n"),n,b,isascii(b) ? b : ' ');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
EEStore *EEStore::eeStore=NULL;
|
EEStore *EEStore::eeStore=NULL;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user