concatenar quatro variaveis int em uma int ( pequeno teclado com quatro botoes)

Amigos

A ideia e a seguinte usar quatro botões

Button 1 = 1

Button 2 = 2

Button 3 = 3

Button 4 = 4

Quero digitar por exemplo

2, 3 e 4 e esse valor ser guardado em uma variavel int.

int resultado = 234

a ideia e fazer um keypad com quadro botoes, essa variavel vou trabalhar no meu codigo.

Abraço a todos

Exibições: 614

Responder esta

Respostas a este tópico

Cara, tá meio dificil de entender o que você quer,  tipo, você diz, "quero digitar 2,3 e 4 "   a pergunta é:  como você pretende fazer isso, tipo:

o botão 1 tem o valor de 1,  o botão 2 tem o valor de 2, etc.

ou

um mesmo botão, se pressionado uma vez tem o valor de 1,  se pressionado 2 vezes tem o valor de dois, e por ai vai?

afinal como você quer fazer ?

Se no caso você tiver 4 botões e o 1 for valor 1, o dois valor 2 , tá aqui um codigo que se pressionado o botão 1(que tá ligado no pino digital 1) ele acende o led no pino 13, se vocÊ soltar  ele apaga o led.

void setup()

{

pinMode(13,OUTPUT);

pinMode(1,INPUT);

}

 

void loop()

{

int buttonState=digitalRead(1);

 if (buttonState==HIGH){

   digitalWrite(13,HIGH);}

 else{

   digitalWrite(13,LOW);   

}

Bom dia, Weider Duarte,

Obrigado pelo retorno! desculpe a falta de clareza, vou tentar explicar,

Bem estou trabalhando em um projeto aonde eu tenho quadro botões ligados a quatro portas, quero usar os mesmos para digitar um valor de quatro digitos, este valor quero usar para implementar o seguinte.

O procedimento seria, caso o valor digitado seja tal executar tal coisa.

Aqui apenas um exemplo

int botao1 = 1;

int botao2 = 2;

int botao3 = 3;

int botao4 = 4;

Se eu pressionar o botao3 depois o botao4 e depois o botao1, quero concatenar os valores 3+4+1 e ter uma variável int com o valor 341, mais quero o valor digitado e a não multiplicativo ex. botao3*100 pois os botas podem ser digitados em ordem diferentes

Se tiver algum codigo com quatro botoes push para fazer coisa parecida eu posso tentar aproveitar, nao sou totalmente leigo mais estou apanhando um pouco. rsss

if (botao3 == high) { valor3 = 3 }

if (botao4 == high) { valor4 = 4 }

if (botao1 == high) { valor1 = 1 }

Quero concatenar 3, 4 e 1 e ter uma int valor com 341

 if ( Valor == 341 ) { Fazer algo )

Minha outra e o seguinte

Tenho um valor guardado em um variavel unsingned long, exemplo

551486205 ( valor guardado )

Quando mando gravar na EEPROM ele grava

55148625

Tira o zero, Porque?

Abraco e obrigado por tentar me ajudar

Olha Hudson,

    Eu criei recentemente um sistema relativamente complexo onde tudo, desde menus a configurações e alterações de variaveis e tudo feito somente com 1 botão,  usei truque de tempo de pressionamento e escolhas na tela do lcd e deu super certo.

   Bem, vamos lá não ficou 100% claro ainda o que você deseja, mas o que entendi é que vocÊ deseja criar um teclado do tipo entrada de senhas utilizando apenas 4 botões, e cada um representaria uma casa do algarismo total.

   Bem, se for isso sei que tem uma tecnica utilizando matrizes(arrays) onde o numero 7 e 8 pode virar 78 e não 7+8 que daria 15, mas nunca mexi com ela e não sei como faz.

   Sinceramente eu usaria o fator de multiplicação sim, pois lembre-se que o valor base da casa é 0 (zero) e se por exemplo você desejar entrar apenas com o valor 11 precisará digitar apenas nos dois ultimos botões, os dois primeiros serão inexpressivos.

   Logo eu faria assim

1- cada botão ao ser pressionado adiciona +1 ao valor anterior, sendo que quando chegar em 9 volta a 0, isso em cada um dos 4 digitos,  faria o resultado aparecer em um lcd.

2- após digitados os 4 digitos, o resultado poderia se dar por um tempo de espera, ou por um 5º botao indicando para prosseguir.

3- O resultado seria assim Primeiro digito x 1000,  segundo x 100,  terceiro x 10, e quarto não multiplicava,  dai se você somar, vai ver que o valor dá certinho.

Pronto, atribuiria o valor final a uma variável e trabalharia com ela.

Weider

Obrigado pelo retorno, sim e uma ideia! vou fazer e ver se fica legal.

Grande abraço

Bom final de semanna

Weider

Sem querem abusar voce teria um codigo para eu usar, acho a idea bacana!

Faco muita coisa mais ainda apanho um pouco, rss

Abraço

Bom dia!

Veja estes links,  http://playground.arduino.cc/code/Keypad

                            http://playground.arduino.cc/KeypadTutorial/EventKeypad

                           http://tronixstuff.com/2011/01/11/tutorial-using-analog-input-for-m...

Abs

Mauricio

Obrigado pelo retorno, eu ja tinha lido estes links da library keypad, mais eu tenho poucas portas sobrando e quero usar os botoes que ja estao em meu projeto para esta funcao de digitar tambem.

Um Abraço vou dar uma olhada no video.

Ate mais

Veja este vídeo ..

É um controle para aquário que eu fiz e utiliza um teclado simples mas funcional.

https://www.youtube.com/watch?v=G3fDKywWU3g&list=UU-739w2fhhan8...

Abs

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço