Spektrumanalysator

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.