Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Jogo Interativo com Joystick e Arduino – Feedback com LEDs

Componentes e Materiais

Jogo Interativo com Joystick e Arduino – Feedback com LEDs Protoboard × 1
Jogo Interativo com Joystick e Arduino – Feedback com LEDs Jumpers × 1
Jogo Interativo com Joystick e Arduino – Feedback com LEDs LED × 1
Jogo Interativo com Joystick e Arduino – Feedback com LEDs Arduino UNO × 1
Jogo Interativo com Joystick e Arduino – Feedback com LEDs Cabo USB-A para B × 1
Joystick Analógico (Genérico) × 1

Sobre o Projeto

Este projeto usa um joystick genérico. O Arduino lê os valores dos eixos X e Y (pinos analógicos) e, através de estruturas condicionais, acende um dos 5 LEDs correspondente à direção inclinada (cima, baixo, esquerda, direita, centro). Se o joystick possuir botão, um LED adicional acende quando pressionado.

Código

#define joyX A0
#define joyY A1

int button = 2;
int buttonState = 0;
int buttonState1 = 0;

void setup() {
  pinMode(7, OUTPUT); // LED do botão
  pinMode(button, INPUT);
  digitalWrite(button, HIGH); // pull-up interno
  Serial.begin(9600);
  pinMode(8, OUTPUT); // LED cima
  pinMode(9, OUTPUT); // LED direita
  pinMode(10, OUTPUT); // LED esquerda
  pinMode(11, OUTPUT); // LED baixo
}

void loop() {
  int xValue = analogRead(joyX);
  int yValue = analogRead(joyY);
  Serial.print(xValue);
  Serial.print("\t");
  Serial.println(yValue);

  buttonState = digitalRead(button);
  Serial.println(buttonState);

  // Esquerda (x baixo, y centro)
  if (xValue >= 0 && yValue <= 10) digitalWrite(10, HIGH);
  else digitalWrite(10, LOW);

  // Baixo (x centro, y alto)
  if (xValue <= 10 && yValue >= 500) digitalWrite(11, HIGH);
  else digitalWrite(11, LOW);

  // Direita (x alto, y centro)
  if (xValue >= 1020 && yValue >= 500) digitalWrite(9, HIGH);
  else digitalWrite(9, LOW);

  // Cima (x centro, y muito alto)
  if (xValue >= 500 && yValue >= 1020) digitalWrite(8, HIGH);
  else digitalWrite(8, LOW);

  // Centro (ambos altos) - apaga direita e cima
  if (xValue >= 1020 && yValue >= 1020) {
    digitalWrite(9, LOW);
    digitalWrite(8, LOW);
  }

  // Botão do joystick
  if (buttonState == LOW) {
    Serial.println("Switch = High");
    digitalWrite(7, HIGH);
  } else {
    digitalWrite(7, LOW);
  }

  buttonState1 = digitalRead(7);
  Serial.println(buttonState1);
  delay(100);
}

Esquemático

Jogo Interativo com Joystick e Arduino – Feedback com LEDs

Processo de manufatura

  1. Xadrez: Das Origens Antigas à Fabricação Moderna — Visão de Especialista
  2. Pinball: História, Design e Fabricação de um Clássico dos Fliperamas
  3. A Bola de Futebol: Dos Jogos Antigos à Inovação Moderna
  4. A Evolução e Artesanato do Futebol Americano: De Jogos Antigos aos Padrões Modernos da NFL
  5. Construa um Jogo em Tempo Real com Giroscópio: Arduino Nano + Sensor MPU-6050
  6. Construa seu Próprio Jogo UFO Attack com Arduino UNO e Display MAX7219
  7. Construa Seu Próprio Jogo de Roleta com 37 LEDs e Arduino Nano
  8. Relógio 3D RGB Arduclock – Bluetooth, LEDs Endereçáveis e RTC
  9. Monitor de Saúde de Rios: Sistema de Qualidade da Água Baseado em Arduino
  10. Construa um Homem de Ferro com Arduino: Componentes, Sensores e Guia Passo a Passo