Zitat Zitat von Martorinho Beitrag anzeigen
Hallo zusammen,

ich hoffe ich bin hier richtig mit meiner Frage. Ich versuche gerade eine Aufgabe zu lösen, wo ich aber ehrlich gesagt nicht ganz verstehe, was der Steller von mir möchte. Vielleicht kann mir einer von euch weiterhelfen?

Aufgabe:

Die untenstehenden Programme für die Arduino-Plattform berechnen jeweils Mittelwerte mit unterschiedlichen analogen Eingängen die jede Sekunde ausgelesen werden.
Zukünftig sollen die zu verwendenden analogen Eingänge mit Hilfe von Konstanten konfigurierbar sein, damit man nur ein Programm benötigt:
• Die analogen Pins A0-A3 sollen jeweils so konfiguriert werden, dass sie wahlweise in die Mittelwertrechnung eingehen oder auch nicht.
• Bei Änderung der Konfiguration der zu verwendenden analogen Eingänge, soll der Rest des Programmes nicht geändert werden.

****************************
void setup()
{
Serial.begin(115200);
}

void loop()
{
int a = analogRead(A0);
int a = analogRead(A2);


int m = (a+b)/2;
Serial.println(m);
delay(1000);
}

************************

void setup()
{
Serial.begin(115200);
}

void loop()
{
int a = analogRead(A0);
int a = analogRead(A2); // Fehler! b=...! <<<<<
int a = analogRead(A3); // Fehler! c=...! <<<<<

int m = (a+b+c)/3;
Serial.println(m);
delay(1000);
}
hallo,
ich verstehe das als Aufgabe, jedem Pin einen "Status" zuzuordnen, also z.B.
bool Sa0, Sa1, Sa2;

nur wenn Sa0 true ist, wird A0 in die Summe einbezogen, sonst nicht, das lässt sich im Programm ja wahlweise auf true oder false setzen.
Sa1 und Sa2 analog.
Der Nenner vom Quotienten muss dann ntl von 3 auf 2 oder 1 abgeändert werden.

Da es sich offenbar um eine Hausaufgabe handelt, verrate ich jetzt aber nicht die Lösung.

Dein Code oben enthält 2 Fehler, ich habe sie markiert.

HTH!