Realizado

Projeto Arduino - Básico

Publicado em 11 de Agosto de 2018 dias na TI e Programação

Sobre este projeto

Aberto

Está de boa nesse sabadão e quer faturar um trocado?
Então basta elaborar programação para arduino do seguinte projeto:
- brinquedo interativo do tipo "labirinto elétrico"  (aquele das feiras de ciências da escola, onde vc tem que percorrer um labirinto de arame sem encostar nele)
Requisitos:
- criar uma variável contador que vai contar quantas vezes a pessoa encosta no arame
- cada vez que ela encosta no arame toca um som no buzzer
- quando o contador chegar no número de vezes especificada toca o buzzer com um som diferente (pra pessoa saber que chegou no numero máximo de tentativas)
- no final do arame teremos um ponto onde quando for encostado aciona um relê e liga uma fita de led colorida pra mostrar que chegou ao final.
- Se possivel utilizar a biblioteca bounce2.h para que possamos regular o ruído ao encostar no arame (tipo o filtro usado em pushbottons)
IMPORTANTE: preciso entregar o prototipo na segunda feira, por isso o scketh tem que ser elaborado entre hoje e amanhã cedo.
Suerte muchachos!

Seria mais ou menos isso aqui: (na real o projeto é só fazer isso aqui funcionar)
#include <Bounce2.h>

Bounce debouncer = Bounce();

int CONTADOR = 0;
int ESTADO_ANTERIOR = 0;

void setup() {
pinMode(9, OUTPUT);
pinMode (10, INPUT_PULLUP); // pino no final do arame que aciona a fita led
pinMode (11, OUTPUT); // saida para relê e fita led
pinMode(8, INPUT_PULLUP); // Configura pino 8 como entrada e habilita pull up interno;
debouncer.attach(8); // Informa que o tratamento de debouce será feito no pino 8;
debouncer.interval(200); // Seta o intervalo de trepidação;
}

void loop() {
debouncer.update(); // Executa o algorítimo de tratamento;

int value = debouncer.read(); // Lê o valor tratado do botão;

if(value!=ESTADO_ANTERIOR)
{
if(value == LOW)
{
CONTADOR++;
}
}
ESTADO_ANTERIOR = value;
switch (CONTADOR) {
  case 0:
      //fazer algo quando valor == 0
  break;
  case 1:
      digitalWrite(9, HIGH);
      delay(200);
      digitalWrite(9, LOW);
      delay(1000);
  break;
  case 2:
      digitalWrite(9, HIGH);
      delay(200);
      digitalWrite(9, LOW);
      delay(500);
  case 3:
      digitalWrite(9, HIGH);
      delay(200);
      digitalWrite(9, LOW);
      delay(300);
  break;

if (10, HIGH){
  digitalWrite (11, HIGH);
  delay (400);
  digitalWrite (11, LOW);
}
}}

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Integrações de API Outros (Outras APIs)
Funções necessárias Desenvolvedor, Outro
Outras funções necessárias Programador C++ Arduino

Prazo de Entrega: 12 de Agosto de 2018

Habilidades necessárias