Confirmando com botão

Boa noite pessoal,

estou avançando com um projeto onde eestarei usando arduino para realizar atividades e com ele terá um botão de confirmação.

O projeto tem:

2 botão de escolha de velocidade
2 LED de velocidade
2 botão de escolha de tempo
2 LED de tempo
1 botão start
1 LED Start

A sequencia a ser executada
escolher 1 velocidade - escolher 1 tempo - START

Cada botão ao selecionar irá ligar um led indicado a seleção

No final, ao escolher uma velocidade e depois escolher o tempo, apertar o botão start para iniciar confirmando a escolha e acender um LED indicando que iniciou o processo.

Porém, eu não estou conseguindo trabalhar com while e nem com o if, quando eu faço o comando eles iniciam de foram independente, sem seguir como deve ser. Sendo que eu ainda não consegui nem colocar o botão de START

Segue o código que estou desenvolvendo, quem puder ajudar agradeço muito!!!

int botao1 = A1, Led1 = 23;
int botao2 = A9, Led2 = 9;;
bool estadoLed1 = 0;
bool estadoLed2 = 0;
int estadoreset = 0;

void setup()
{
pinMode(botao1, INPUT_PULLUP); // define o pino do botao1 como entrada "INPUT"
pinMode(botao2, INPUT_PULLUP); // define o pino do botao2 como entrada "INPUT"
pinMode(Led1, OUTPUT);
pinMode(Led2, OUTPUT);
}

void loop()
{
if(digitalRead(botao1) == LOW) // Se o botão for pressionado
{
estadoLed1 = !estadoLed1; // troca o estado do LED
digitalWrite(Led1, estadoLed1);
while(digitalRead(botao1) == LOW);
delay(100);

if(digitalRead(botao1) == LOW) // Se o botão for pressionado
{
estadoLed1 = !estadoLed1; // troca o estado do LED
digitalWrite(Led1, estadoLed1);
while(digitalRead(botao1) == LOW);
delay(100);

}
}
}