Programme pour Activer une LED avec un code via KeyPad

Bonjour,
Nous avons fait un programme pour Arduino Uno.
Lorsque l’on appui sur une touche du Keypad, la LED s’allume.
Et maintenant j’aimerais avoir un peu d’aide afin d’insérer un code.
Lorsque le code est bon, la led s’allume sinon elle s’éteint.
Je n’arrive pas à insérer cette condition.
Merci de bien vouloir m’aider.
Merci d’avance.
Voici le programme :

const int buttonPin = 2;     // the number of the pushbutton pin
const int ledPin =  13;      // the number of the LED pin

// variables will change:
int buttonState = 0;         // variable for reading the pushbutton status
#include <Keypad.h>
#include <SoftwareSerial.h>
SoftwareSerial Serie(10, 11);

const byte ROWS = 4; //four rows
const byte COLS = 3; //three columns
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};
byte rowPins[ROWS] = {5, 4, 3, 2}; //connect to the row pinouts of the kpd
byte colPins[COLS] = {6, 7, 8}; //connect to the column pinouts of the kpd

Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

void setup() {
Serie.begin(9600);
Serie.println("Tapez sur une touche"); 
 
  // initialize the LED pin as an output:
  pinMode(ledPin, OUTPUT);
  // initialize the pushbutton pin as an input:
  pinMode(buttonPin, INPUT);  
}

void loop() {
char customKey = kpd.getKey();

if (customKey) {
Serie.println(customKey);

  // read the state of the pushbutton value:

  buttonState = digitalRead(buttonPin);

  // check if the pushbutton is pressed. If it is, the buttonState is HIGH:
  if (buttonState == HIGH) {
    // turn LED on:
    digitalWrite(ledPin, HIGH);
  } else {
    // turn LED off:
    digitalWrite(ledPin, LOW);

}
}
}

Pour écouter le port série ou gérer un flux asynchrone genre keypad, vous pouvez jeter un oeil à mon petit tuto sur le sujet