Menu

Som com joystick

Vamos usar o módulo de joystick para controlar um buzzer e emitir sons.

Primeiramente, conecte o módulo de joystick na placa do Arduino e ligue o Buzzer (no meu exemplo foi ligado na porta 12):

OU, se você não tiver um buzzer, pode ser um pequeno alto falante e um resistor (no exemplo, de 100 ohms, marrom, preto, marrom):

Depois, digite o código:

#define buzzer 12
#define JoystickX 0
#define JoystickY 1
#define K 8

void setup() {
  pinMode(buzzer, OUTPUT);
  pinMode(K, INPUT_PULLUP);
}

void loop() {
  if (digitalRead(K) == LOW){
    int x = analogRead(JoystickX);
    int y = analogRead(JoystickY);
    tone (buzzer, x, y);
  }
  digitalWrite(K, HIGH);
  noTone(buzzer);
}

Conforme o código, quando você pressionar a tecla K poderá ler os valores de posição X e Y do joystick, e será enviado ao buzzer/ altofalante um som correspondente. Você pode alterar os valores lidos e aumentá-los ou diminuí-los (por exemplo multiplicando ou dividindo por um inteiro) para alterar o som.

Depois, altere seu código para fazer com que, a cada tecla pressionada, seja emitido um som diferente.

Por exemplo:

#define botao_A 2
#define botao_C 4
#define buzzer 12

void setup() {
  pinMode(buzzer, OUTPUT);
  pinMode(botao_A, INPUT_PULLUP);
  pinMode(botao_C, INPUT_PULLUP); 
}

void loop() {
  if (digitalRead(botao_A) == LOW){
    tone (buzzer, 200);
    delay(50);
  }
  if (digitalRead(botao_C) == LOW){
    tone (buzzer, 800);
    delay(50);
  }
  noTone(buzzer);
}

 

Faça um pequeno piano, usando as outras teclas.

(A = 2, B = 3,  C = 4, D = 5, E = 6, F = 7, K = 8).

Universidade Federal do Paraná
TI Aplicada – pesquisa e extensão

Av Pref Lothário Meissner, 632
80210-170 | Curitiba |
simao@ufpr.br
(41) 3360-4420
Universidade Federal do Paraná
TI Aplicada – pesquisa e extensão

Av Pref Lothário Meissner, 632
80210-170 | Curitiba |
simao@ufpr.br
(41) 3360-4420

UFPR nas Redes Sociais


UFPR nas Redes Sociais