Hallo,
es wird sicherlich mehrere Wege geben. Wenn man 12 Objekte hat, kann man diese in einem Array zusammenfassen und zack kann man mittels for Schleife arbeiten.
Bsp.: 6 Objekte im Array und dessen Parameter.
Die Klasse SpeedMeasurement stellt jedem Objekt die Methode calc(), getName() und getSpeed() zur Verfügung.
SpeedMeasurement speedMeas [] {
{sensor.SA1, sensor.SC1, 1080, "SA1-SC1"}, // Sensorabstand in mm
{sensor.SA1, sensor.SD1, 1160, "SA1-SD1"},
{sensor.SC3, sensor.SA1, 1110, "SC3-SA1"},
{sensor.SD3, sensor.SA1, 1110, "SD3-SA1"},
{sensor.SC1, sensor.SC3, 335, "SC1-SC3"},
{sensor.SD1, sensor.SD3, 355, "SD1-SD3"},
};
for (auto &s : speedMeas) {
if(s.calc(hallSensor)) {
cout << s.getName() << " " << s.getSpeed() << endl;
}
}
Es kommt nun darauf an, was für die Ansteuerung am praktischsten ist. Da sollte man paar Dinge durchspielen. Was die NeoPixel Lib so bietet weiß ich nicht.