Sistema de senha com Teclado de membrana 3x4 - P2 - Curso de Arduino #61

Поделиться
HTML-код
  • Опубликовано: 29 дек 2024

Комментарии • 21

  • @gustavopolastrini3336
    @gustavopolastrini3336 4 года назад +11

    Ta aqui o código inteiro pronto:
    #include
    #define linhas 4
    #define colunas 3
    #define led_vermelho 2
    #define led_verde 3
    #define led_amarelo 4
    char mapaTeclas[linhas][colunas]=[['1','2','3'],['4','5','6'],['7','8','9'],['*','0','#']];
    String senha="123";
    String digitada
    int estado=0;
    bytepinos_linha[linhas]=[6,7,8,9,];
    byte pinos_colunas[colunas]=[10,11,12];
    Keypad teclado = Keypad(makeKeypad)(mapateclas),pinos_linha,pinos_coluna,linhas,colunas);
    void setup() {
    pinmode(led_vermelho,OUTPUT);
    pinmode(led_amarelo,OUTPUT);
    pinmode(led_verde,OUTPUT);
    }


    void loop() {
    char tecla-teclado.getKey();
    if(tecla !=NO_KEY){
    estado=1;
    if(tecla=='#'){
    if(verificasenha(senha,digiada)){
    estado=3;
    leds(estado);
    delay(3000);
    estado=0;
    }else{
    estado=2;
    leds(estado);
    delay(3000);
    estado=0;
    }
    digitada="";
    }else{
    digitada+=tecla;
    }
    led(estado);
    }
    }
    bool verificaSenha(String sa, String sd) {
    bool resultado=false;
    if(sa.compareTo(sd)==0){
    resultado=true;
    }else{
    resultado=false;
    }
    return resultado;
    }

    void leds(int e){//0=Aguardando / 1=Digitando / 2=Negado / 3=Aceito
    if(e==o){
    digitalWrite(led_vermelho,LOW);
    digitalWrite(led_verde,LOW);
    digitalWrite(led_amarelo,LOW);
    }else if(e==1){
    digitalWrite(led_vermelho,LOW);
    digitalWrite(led_verde,LOW);
    digitalWrite(led_amarelo,HIGH);
    }
    }else if(e==2){
    digitalWrite(led_vermelho,HIGH);
    digitalWrite(led_verde,LOW);
    digitalWrite(led_amarelo,LOW);
    }
    else if(e==3{
    digitalWrite(led_vermelho,LOW);
    digitalWrite(led_verde,HIGH);
    digitalWrite(led_amarelo,LOW);
    }

  • @ruamvictor9584
    @ruamvictor9584 2 года назад

    Top! ajudou muito!

  • @ivoneideduarte1648
    @ivoneideduarte1648 6 лет назад

    Adorei, muito bom! parabéns pela aula!

  • @j_explica
    @j_explica 5 лет назад

    parabens, excelente video

  • @boaventurazita3885
    @boaventurazita3885 4 года назад

    Parabens e muito obrigado, essa video aula foi muito util pra mim,, o que me falta e imprimir o valor de cada tela no display, pois no meu projecto tenho que usar um display 16 por 2.

  • @Chiquitomusic
    @Chiquitomusic Год назад +1

    professor o meu apareceu leds was not declared on this scope
    oq faço?

  • @Neneribeiraopreto
    @Neneribeiraopreto 6 лет назад

    Bacana!

  • @Enzomartin3
    @Enzomartin3 2 года назад

    oi , eu fui escrever a programação no ide do arduino e depois baixar fala toda hora que a programação esta errada tem como vc mandar o link para mim acessar a programação que as vez eu que fiz errado

  • @emanoelcosta2185
    @emanoelcosta2185 4 года назад

    Primeiramente parabéns pela aula, gostaria de saber como fasso esse sistema de senha usando a plaquinha dtmf.pois ja tentei adaptar e nao consegui.

  • @rodrigobq8132
    @rodrigobq8132 4 года назад

    Bom dia.
    Poderia me dar um suporte?
    Tenho um sketch de leitor de teclado e outro sketch de RFID, ambos para controle de acesso. Juntei os dois, porém não lê o teclado daí.
    Sabe alguma maneira onde posso fazer ler o teclado e depois o RFID?
    Obrigado

  • @liviamarinagambamuller4271
    @liviamarinagambamuller4271 3 года назад

    professor, ou outra pessoa que se souber, como se define a tan senha (para o maximo de digitos no teclado)? obrigada desde já quem puder me ajudar

  • @moneymoney4128
    @moneymoney4128 6 лет назад

    Fessor bruno sera q e obrigatorio eu ver todos os videos de c++ pois queria aprender unity

    • @cfbcursos
      @cfbcursos  6 лет назад +1

      Cara, obrigatório não é não, mas vendo todas as aulas você vai adquirir uma base melhor

  • @marceellaaraujo311
    @marceellaaraujo311 4 года назад

    Boa noite, como faço para fazer uma programação com um buzzer para poder avisa cada vez que eu aperta um botão?

  • @angelaramos8638
    @angelaramos8638 3 года назад

    Boa tarde, muito bom!!
    Peço uma ajuda se possível!
    Esta aparecendo pra min que não foi declarado em scope isto:
    if(verifcaSenha(senha, digitada)). Como devo fazer? está igualzinho oque foi feito, mas não sei porque esta acontecendo isto, pode me ajudar por favor?

    • @nayarasouza9139
      @nayarasouza9139 2 года назад +1

      olá, nesse (if) você vai fazer o seguinte, você apaga e vai reescrever assim: if(senha==digitada)
      se lhe ajudar taí o sketch que funcionou no meu projeto.
      #include
      #define linhas 4
      #define colunas 4
      #define led_vermelho 2
      #define led_verde 3
      #define led_amarelo 4
      char mapaTeclas[linhas][colunas]={{'1','2','3','A'},
      {'4','5','6','B'},
      {'7','8','9','C'},
      {'*','0','#','D'}};
      String senha="2251";
      String digitada;
      int estado=0;
      byte pinos_linhas[linhas]={6,7,8,9};
      byte pinos_colunas[colunas]={10,11,12,13};
      Keypad teclado = Keypad(makeKeymap(mapaTeclas),pinos_linhas,pinos_colunas,linhas,colunas);
      void setup() {
      Serial.begin(9600);
      Serial.println();
      pinMode(led_vermelho,OUTPUT);
      pinMode(led_verde,OUTPUT);
      pinMode(led_amarelo,OUTPUT);
      }
      void loop() {
      char tecla=teclado.getKey();
      if (tecla != NO_KEY){
      estado=1;
      if(tecla=='#'){
      if(senha==digitada){
      estado=3;
      leds(estado);
      delay(3000);
      estado=0;
      }else{
      estado=2;
      leds(estado);
      delay(3000);
      estado=0;
      }
      digitada="";
      }else{
      digitada+=tecla;
      }
      leds(estado);
      Serial.print("Tecla: ");
      Serial.println(tecla);
      }
      }
      bool verificaSenha(String sa, String sd){
      bool resultado=false;
      if(sa.compareTo(sd)==0){
      resultado=true;
      }else{
      resultado=false;
      }
      return resultado;
      }
      void leds(int e){//0=Aguardando / 1=Digitando / 2=Negado 3=Aceito
      if(e==0){
      digitalWrite(led_vermelho,LOW);
      digitalWrite(led_verde,LOW);
      digitalWrite(led_amarelo,LOW);
      }
      else if(e==1){
      digitalWrite(led_vermelho,LOW);
      digitalWrite(led_verde,LOW);
      digitalWrite(led_amarelo,HIGH);
      }
      else if(e==2){
      digitalWrite(led_vermelho,HIGH);
      digitalWrite(led_verde,LOW);
      digitalWrite(led_amarelo,LOW);
      }
      else if(e==3){
      digitalWrite(led_vermelho,LOW);
      digitalWrite(led_verde,HIGH);
      digitalWrite(led_amarelo,LOW);
      }
      }

    • @jf1579ytt
      @jf1579ytt Год назад

      @@nayarasouza9139 vlw, ajudou mt

  • @dedesosoares
    @dedesosoares 5 лет назад

    se alguém, algum dia conseguir baixar esses arquivos poderia colocar disponivel em algum site onde não se pegue 350 virus tentando baixar?

  • @deathnote7563
    @deathnote7563 6 лет назад

    first