ich würde alle Einzel-Variablen in einen struct type packen,
dann mehrere Variablen von dem struct type davon im aktuellen Sketch erzeugen,
und dann eine beliebige dieser struct-Variablen an eine spezielle Funktion aus der Lib by reference übergeben, die die Einzelwerte ändert,
zB so
Code:
#include "structlib.h"
// das folgende steht in der structlib.h
/*
#pragma once
typedef struct { // struct type
int var1=0;
int var2=0;
int var3=0;
} myBtnStruct;
void modifyStruct(myBtnStruct & Btn) {
// erhält eine Variable vom struct type by reference und gibt deren Werte geändert zurück
Btn.var1=1;
Btn.var2=2;
Btn.var3=3;
}
*/
void setup() {
Serial.begin(115200);
delay(1000);
Serial.println();
Serial.println("Serial() started");
myBtnStruct btn1, btn2, btn3; // erzeuge mehrere Variablen vom struct type
// vor Funktionsaufruf
Serial.println();
Serial.println(btn1.var1);
Serial.println(btn1.var2);
Serial.println(btn1.var3);
Serial.println();
// nach Funktionsaufruf
modifyStruct(btn1);
Serial.println();
Serial.println(btn1.var1);
Serial.println(btn1.var2);
Serial.println(btn1.var3);
Serial.println();
}
void loop() {
}
Lesezeichen