Então o touch não interfere na contagem do tempo do arduíno?
Então o que é que tenho mal na parte da programação? É que não mostra as linhas de código durante 4 segundos no ecrã, o que faz é mostra as linhas de código e passa logo para a outra parte do código, não dando para ver o que está escrito. é de referir que a inicializei a variavel valor_millis, da seguinte forma: unsigned long valor_millis = 0;
void loop()
{
if (estado_menu == 0)
{
tft.fillScreen(PRETO);
pag_inicial();
tft.setFont();
TSPoint p = waitTouch();
if ((p.x > 20) && (p.x <= 300) && (p.y > 80) && (p.y <= 160))
{
estado_menu = 1;
Stepper_porta.step(300);
}
}
if (estado_menu == 1)
{
while((millis() - valor_millis) >= 4000)
{
tft.fillScreen(PRETO);
tft.setFont(&FreeSansBold9pt7b);
tft.setCursor(50, 120);
tft.setTextColor(VERMELHO);
tft.setTextSize(2);
tft.print("Para que piso\n\n");
tft.setCursor(40, 160);
tft.setTextColor(VERMELHO);
tft.setTextSize(2);
tft.print("Que deseja ir?");
valor_millis = millis();
}
tft.fillScreen(PRETO);
botoes_pisos();
TSPoint p = waitTouch();
if ((p.x > 20) && (p.x <= 290) && (p.y > 40) && (p.y <= 110))//se clicar no botao1
{
if (piso_elevador == ler_microswitch0)
{
while((millis() - valor_millis) <= 4000)
{
tft.fillScreen(PRETO);
tft.setFont(&FreeSansBold9pt7b);
tft.setCursor(55, 120);
tft.setTextColor(VERMELHO);
tft.setTextSize(2);
tft.print("Encontra-se\n\n");
tft.setCursor(67, 160);
tft.setTextColor(VERMELHO);
tft.setTextSize(2);
tft.print("Nesse piso!");
tft.setFont();
valor_millis = millis();
}
}