Ir ao conteúdo
  • Cadastre-se

Arduino Cadeia de ações a partir de comando no teclado


Visitante

Posts recomendados

Boa noite membros do fórum, estou desenvolvendo um projeto onde preciso executar uma série de ações em função de um determinado código inserido no sistema através de um teclado. Não tenho prática com programação e isso está me travando muito.

 

Preciso que o sistema realize os seguintes passos:

 

Pressionar uma tecla X para ativar o recebimento do código;

Digitar o código;

Pressionar uma tecla Y para confirmar que o código foi digitado;

Executar uma função específica para o código digitado

 

*são vários códigos diferentes com comandos diferentes associados

*a princípio cada código tem 3 dígitos numéricos

 

Se conseguirem me ajudar com a programação, agradeço desde já.

Link para o comentário
Compartilhar em outros sites

Quero fazer uma coisa parecida com isso

 

#include <Keypad.h>

byte pinosLinhas[] = {0, 1, 2, 3};
byte pinosColunas[] = {4, 5, 6, 7};
char teclas[4][4] = {
  {'1', '2', '3', 'A'},
  {'4', '5', '6', 'B'},
  {'7', '8', '9', 'C'},
  {'*', '0', '#', 'D'}
};
Keypad teclado1 = Keypad(makeKeymap(teclas), pinosLinhas, pinosColunas, 4, 4);

void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.println("Seleção do modo de operação");
  char modo =  teclado1.waitForKey();
  Serial.print("Modo de operação: ");
  Serial.println(modo);

  if (modo = 'A'); {
    Serial.println("Seleção da configuração");
    char C1 = teclado1.waitForKey(); //Primeiro número
    Serial.print("Código da configuração: ");
    Serial.print(C1);
    char C2 = teclado1.waitForKey(); //Segundo número
    Serial.print(C2);
    char C3 = teclado1.waitForKey(); //Terceiro número
    Serial.println(C3);

    char C[] = {C1, C2, C3};

    if (C == {1, 2, 3}) {
      Serial.println("Configuração 123 selecionada");
    }
    if (C == {4, 5, 6}) {
      Serial.println("Configuração 456 selecionada");
    }
    if (C == {7, 8, 9}) {
      Serial.println("Configuração 789 selecionada");
    }
  }
  if (modo != 'A') {
    Serial.println("Modo não reconhecido");
  }
}

Mas estou com um problema na programação (principalmente na definição das variáveis) por conta do meu conhecimento 0 no assunto.

 

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...