Hallo,
Ich bin mehrere Schritte weiter und möchte zum Schalten der Ausgänge aus einem Vector mit eigener Struktur mit Hilfe des Namens die jeweilige Pinnummer abrufen bzw. als Substitution in den Funktionen nutzen. Dafür habe ich auch schon eine Anleitung gefunden [1], allerdings klappt es nicht bzw. ich verstehe die Funktionsweise nicht.
Ich habe folgenden Vector:
----------------------------------------
struct config_values { int config_number; string config_name; };
std::vector<config_values> config_vec
----------------------------------------
Als Beispieldaten habe ich folgende Werte:
----------------------------------------
config_vec[1].config_number = 4;
config_vec[1].config_name = led_alarm;
config_vec[2].config_number = 17;
config_vec[2].config_name = led_normal;
config_vec[3].config_number = 18;
config_vec[3].config_name = valve_1;
// usw.........
----------------------------------------
Nun möchte ich z.B. die Funktion "gpioWrite(GPIO_NO,Value)" nutzen, um die LED aus- bzw. einzuschalten. Dafür mochte ich die GPIO-Nummer "4" durch eine Variable ersetzen, in der die Nummer mit dem Suchstring "led_alarm" gefunden wird, da ich per csv-Datei die Nummer neu zuordnen kann, ohne das Programm neu zu kompilieren.
Das tollste wäre nat., wenn ich den Befehl "gpioWrite(config_vec{"led_alarm"},0}" (das ist nat. kein funktionierender Befehl!) aufrufen könnte und der GPIO-Ausgang mit der Nummer "4" geschaltet würde.
Könnt ihr mir da noch mal auf die Sprünge helfen? Eine einigermaßen verständliche Anleitung würde mir schon reichen.
----
[1] https://stackoverflow.com/questions/14225932/search-for-a-struct-item-in-a-v...