int lastButtonState = 0;

const int theButtonPin = A0;

int currentButtonState = 0;
unsigned long lastButtonTime = 0;
unsigned long debounceDelay = 50;  // generouis. 20 would do for most switches

void setup() {
  Serial.begin(115200);
  Serial.println("All Hail King RAJ!\n");
}

void loop() {
  unsigned long now = millis();

  currentButtonState = digitalRead(theButtonPin);

  if (now - lastButtonTime > debounceDelay) {
    if (currentButtonState != lastButtonState) {
      Serial.print(char('A'+currentButtonState));
      lastButtonState = currentButtonState;
      
      lastButtonTime = now;
    }
  }
}

/*
void loop0() {
  currentButtonState = analogRead(AnalogPin) > 250;

  if (currentButtonState != lastButtonState) {
    Serial.print(char('A'+currentButtonState));
    lastButtonState = currentButtonState;
  }

  delay(50);    // Ya Ya, delay. Get over it for now, it's OK.
}
*/