// Definição dos pinos dos LEDs e do sensor ultrassônico
#define am 11
#define vd 12
#define vm 10
#define echo 4
#define trig 5

// Variáveis para armazenar o tempo e a distância
long tempo = 0;
int dist = 0;

void setup()
{
    // Configuração dos pinos dos LEDs como saídas
    pinMode(vd, OUTPUT);
    pinMode(am, OUTPUT);
    pinMode(vm, OUTPUT);

    // Configuração dos pinos do sensor ultrassônico
    pinMode(trig, OUTPUT);
    pinMode(echo, INPUT);

    // Inicializa a comunicação serial a 9600 bps
    Serial.begin(9600);
}
void loop()
{

    // Gera um pulso no pino 'trig'
    digitalWrite(trig, HIGH);
    delay(1);
    digitalWrite(trig, LOW);
    
    // Mede o tempo de resposta do pino 'echo'
    long tempo = pulseIn(echo, HIGH);
    // Calcula a distância com base no tempo medido
    int dist = tempo / 58;

    // Imprime a distância no monitor serial
    Serial.println(dist);
    delay(50);

    // Verifica a distância e aciona os LEDs apropriados
    if (dist <= 100)
    {
        digitalWrite(vm, HIGH);  // Liga o LED 'vm'
        digitalWrite(am, LOW);   // Desliga o LED 'am'
        digitalWrite(vd, LOW);   // Desliga o LED 'vd'
    }
    else if (dist > 100 && dist <= 150)
    {
        digitalWrite(vm, LOW);   // Desliga o LED 'vm'
        digitalWrite(am, HIGH);  // Liga o LED 'am'
        digitalWrite(vd, LOW);   // Desliga o LED 'vd'
    }
    else if (dist > 200 && dist <= 250)
    {
        digitalWrite(vm, LOW);   // Desliga o LED 'vm'
        digitalWrite(am, LOW);   // Desliga o LED 'am'
        digitalWrite(vd, HIGH);  // Liga o LED 'vd'
    }

    delay(10);  // Pequeno atraso para estabilização
}
$abcdeabcde151015202530fghijfghij