Portas Digitais e Analógicas | Semelhanças, diferenças, descrição e exemplo de códigos.

Portas Digitais e Analógicas

         Olá pessoal!! Nesse post eu irei falar um pouco sobre as portas digitais e analógicas. "Quem são?" "Como são?" "Para quem serve?" São algumas perguntas que eu irei responder nesse post, então se você quer saber essas respostas continue lendo!!


  --------------
   PORTAS DIGITAIS

    As portas digitais são pequenos "furinhos" , elas estão numeradas de 0 a 13, porém a 0 e 1 tem funções "especiais", (se quiserem que eu faça um post delas comenta aí) elas processam apenas duas respostas "sim" e "não",
"ligado" ou "desligado" digamos que não existe meio termo, por isso, sensores não podem ser conectadas nelas.

        
    Nelas conectamos LEDs, botões, interruptores, motores, entre outros componentes, para facilitar a compreensão uma dica é fazer a seguinte relação, as portas digitais são como esportes radicais, ou você sabe e vai super bem, ou você perde!

---------------

   PORTAS ANALÓGICAS
    As portas analógicas também são pequenos furinhos, essas são numeradas de 0 a 5, elas podem processar diversos valores , são nelas que conectaríamos um sensor de temperatura, por exemplo, pois ele traz diversas informações para a porta ler (12°C, 25°C, 30°C), se conectamos ela em uma porta digital, a porta não compreenderia as informações e "enlouqueceria".


    Nelas conectamos sensores principalmente. Para entender melhor o que é uma porta analógica a dica é fazer a seguinte relação, as portas analógicas, são como pessoas meditando, você dá os problemas ou informações e ela, como está relaxada, interpreta e dá uma reposta, independentemente de qual a informação ela sempre responderá em vez de "enlouquecer".

------------

   DIFERENÇAS
    A diferença mais marcante são as informações que você pode dar para elas para processar. Para as digitais, apenas "Sim" ou "Não" ("PD6 o seu LED está ligado") e para as analógicas ("PA3 seu sensor de temperatura está passando 12°C").
    Também são diferenciados os componentes que podemos conectar nela, nas Portas Digitais componentes que não passem informações variadas; como LEDs, botões, motores, buzzer, entre outros; já as analógicas podemos usar sensores (temperatura, luz e distância por exemplo) e potenciômetros.
    Suas numerações também são diferentes, as portas analógicas são numeradas de A0 a A5, as digitais tem apenas números que vão de 0 a 13 (lembrando que a 0 e 1 são especiais).

---------------

   SEMELHANÇAS
    A semelhança mais marcante são suas "funções", ambas tem a função de ler a informação e interpretá-la, por mais que sejam informações diferentes.
    Outra semelhança é que em ambos componentes conectados nelas, além dessa conexão conectamos no GND.

--------------

   EXEMPLO DE CIRCUITO
    
 PORTAS DIGITAIS
     O exemplo que eu irei usar será um semáforo, observe o circuito.









    Agora observe o código desse farol:

int ledVermelho = 13;//------|
int ledVerde = 11;//           | variáveis de conexao positiva dos LEDs
int ledAmarelo = 12;//-------|

void setup()
{
  pinMode(ledVermelho, OUTPUT);//----|
  pinMode(ledVerde, OUTPUT);//       |------> declara que os leds são componentes OUTPUTS 
  pinMode(ledAmarelo, OUTPUT);//-----|
}
void loop()
{
  digitalWrite(ledVermelho, LOW);//------|
  digitalWrite(ledAmarelo, LOW);//        |---> SIGA!
  digitalWrite(ledVerde, HIGH); //----------|
  delay(5000);
  
  
  digitalWrite(ledVermelho, LOW);//------|
  digitalWrite(ledAmarelo, HIGH);//        |---> DIMINUA A VELOCIDADE!
  digitalWrite(ledVerde, LOW); //----------|
  delay(5000);
  
  
  digitalWrite(ledVermelho, HIGH);//------|
  digitalWrite(ledAmarelo, LOW);//        |---> PARE!
  digitalWrite(ledVerde, LOW); //----------|
  delay(5000); 
  
}
--------------


PORTAS ANALÓDICAS

    Como exemplo eu usarei um projeto que os LEDs vão acendendo de acordo com o a luminosidade captada pelo sensor. Veja o circuito:

      Agora veja os códigos:
        
int pino[3] = {9, 10, 11};
int pinLed;

float minimo = 85;
float maximo = 1020;
float valorLDR;
float luminosidade;  

 void setup(){ 
     for(pinLed = 0; pinLed <= 8; pinLed++){
        pinMode(pino [pinLed], OUTPUT);
  }
      pinMode(A0, INPUT);
}

void loop()
{
  valorLDR = analogRead(A0);
  luminosidade = ((valorLDR - minimo)/(maximo - minimo)) *10;
  luminosidade = (luminosidade - 10) * -1;
  
   for(pinLed = 0; pinLed <= 8; pinLed++){
     if(pinLed < luminosidade){
       digitalWrite (pino[pinLed], HIGH);
     }else{
           digitalWrite (pino[pinLed], LOW);
     }
   }
}
-----------------------    
    Esse foi o post de hoje!! Espero que tenham gostado!! Comentem ideias para os próximos posts!! Até mais!!
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

 

Comentários

Postagens mais visitadas deste blog

Portas RX e TX ou PD1 e PD2 | o que é, para que serve e muito mais!

Buzzer| para que serve, exemplo de projeto, descrição, e muito mais!!