19 #include "DCCpp_Uno.h" 22 #ifdef USE_TEXTCOMMAND 23 #include "TextCommand.h" 34 #if defined(USE_EEPROM) || defined(USE_TEXTCOMMAND) 35 #if defined(USE_EEPROM) && defined(DCCPP_DEBUG_MODE) 36 if (strncmp(
EEStore::data.
id, EESTORE_ID,
sizeof(EESTORE_ID)) != 0) {
37 INTERFACE.println(F(
"Turnout::begin() must be called BEFORE DCCpp.begin() !"));
43 else if (
get(
id) == NULL) {
51 this->
set(id, add, subAdd);
53 #ifdef USE_TEXTCOMMAND 54 INTERFACE.print(
"<O>");
55 #if !defined(USE_ETHERNET) 56 INTERFACE.println(
"");
74 DCCpp::mainRegs.setAccessory(this->
data.
address, this->data.subAddress, this->data.tStatus);
83 #ifdef USE_TEXTCOMMAND 84 INTERFACE.print(
"<H");
87 INTERFACE.print(
" 0>");
89 INTERFACE.print(
" 1>");
90 #if !defined(USE_ETHERNET) 91 INTERFACE.println(
"");
96 #if defined(USE_EEPROM) || defined(USE_TEXTCOMMAND) 114 #ifdef USE_TEXTCOMMAND 115 INTERFACE.print(
"<X>");
116 #if !defined(USE_ETHERNET) 117 INTERFACE.println(
"");
130 #ifdef USE_TEXTCOMMAND 131 INTERFACE.print(
"<O>");
132 #if !defined(USE_ETHERNET) 133 INTERFACE.println(
"");
161 #if defined(USE_TEXTCOMMAND) 165 #ifdef DCCPP_DEBUG_MODE 167 INTERFACE.println(F(
"Turnout::begin() must be called BEFORE Turnout::load() !"));
172 tt->data.tStatus = data.
tStatus;
202 #if defined(USE_TEXTCOMMAND) 209 switch(sscanf(c,
"%d %d %d",&n,&s,&m)){
215 #ifdef USE_TEXTCOMMAND 218 INTERFACE.print(
"<X>");
219 #if !defined(USE_ETHERNET) 220 INTERFACE.println(
"");
234 #ifdef DCCPP_PRINT_DCCPP 246 #ifdef USE_TEXTCOMMAND 247 INTERFACE.print(
"<X>");
248 #if !defined(USE_ETHERNET) 249 INTERFACE.println(
"");
255 tt->
begin(
id, add, subAdd);
260 #endif USE_TEXTCOMMAND 262 #if defined(USE_EEPROM) || defined(USE_TEXTCOMMAND) 263 #ifdef DCCPP_PRINT_DCCPP 267 void Turnout::show() {
271 INTERFACE.print(
"<X>");
272 #if !defined(USE_ETHERNET) 273 INTERFACE.println(
"");
279 INTERFACE.print(
"<H");
280 INTERFACE.print(tt->
data.
id);
281 INTERFACE.print(
" ");
283 INTERFACE.print(
" ");
286 INTERFACE.print(
" 0>");
288 INTERFACE.print(
" 1>");
289 #if !defined(USE_ETHERNET) 290 INTERFACE.println(
"");
static void parse(char *c)
static void advance(int inIncrement)
static Turnout * create(int id, int add, int subAdd)
static void remove(int id)
static Turnout * get(int id)
void set(int id, int add, int subAdd)
static Turnout * firstTurnout
void begin(int id, int add, int subAdd)