Warum gehst du hier über die Variable nfcRxGain
? Du kannst doch die drei Blocks direkt von den defines abhängig machen. Vorteil wäre sogar noch, daß Programmspeicher gespart wird, weil nicht zutreffende Blöcke gar nicht erst übersetzt werden.
Anfang:
#define NFCgain_max // Maximale Empfindlichkeit
//#define NFCgain_avg // Mittlere Empfindlichkeit
//#define NFCgain_min // Minimale Empfindlichkeit
In Setup:
#ifdef NFCgain_min
mfrc522.PCD_SetAntennaGain(mfrc522.RxGain_min);
Serial.println(F("=== mfrc522-> RxGain_min === "));
#endif
#ifdef NFCgain_avg
mfrc522.PCD_SetAntennaGain(mfrc522.RxGain_avg);
Serial.println(F("=== mfrc522-> RxGain_avg === "));
#endif
#ifdef NFCgain_max
mfrc522.PCD_SetAntennaGain(mfrc522.RxGain_max);
Serial.println(F("=== mfrc522-> RxGain_max === "));
#endif
PS: Gain schreibt man ohne „e“.