Índice:

Arduino Jazz Improviser: 4 etapas (com imagens)
Arduino Jazz Improviser: 4 etapas (com imagens)

Vídeo: Arduino Jazz Improviser: 4 etapas (com imagens)

Vídeo: Arduino Jazz Improviser: 4 etapas (com imagens)
Vídeo: Nando moura faz Carinho em Nikolas Ferreira(Inteligencia limitada) 2024, Novembro
Anonim
Arduino Jazz Improviser
Arduino Jazz Improviser

Este design não reproduz uma "música". Em vez disso, ele usa uma escala de blues para criar sua própria música enquanto toca - semelhante a um músico de jazz real. Cada vez que você o liga, ele toca algo diferente; mas você ainda pode controlar o tempo, tom e volume com os dials. Ouça um exemplo dele tocando abaixo:

Etapa 1: O que é Jazz?

Image
Image

Se você quiser a definição oficial, pode olhar esses links, mas acho que a melhor maneira de descrevê-la é apenas mostrar como ela soa.

  • https://en.wikipedia.org/wiki/Jazz
  • https://en.wikipedia.org/wiki/Jazz_improvisation

Etapa 2: construir o circuito

Construa o Circuito
Construa o Circuito
Construa o Circuito
Construa o Circuito

Construí um suporte para meu alto-falante com canudinhos e fita adesiva, mas isso é opcional. Siga o diagrama para construir o resto deste design.

Etapa 3: faça upload do código

Este código segue um algoritmo pseudo-aleatório para tocar infinitamente as notas da escala de blues Bb em um ritmo sincopado jazzístico.

Use este código no IDE do Arduino:

nota int = 1;

nota int 2 = 1; void setup () {pinMode (3, OUTPUT); } void loop () {int tonecontrol = map (analogRead (A0), 0, 1023, 1, 4); controle de velocidade int = map (analogRead (A1), 0, 1023, 1, 20); int tonecontrol2 = map (analogRead (A2), 0, 1023, 1, 4); nota de jogo int; switchval int = aleatório (1, 5); switch (switchval) {case 1: note = note; pausa; caso 2: nota = nota + 1; pausa; caso 3: nota = nota - 1; pausa; caso 4: nota = nota + 2; pausa; caso 5: nota = nota - 2; pausa; } switch (note) {case 1: playnote = 262; pausa; caso 2: nota de jogo = 294; pausa; caso 3: nota de jogo = 311; pausa; caso 4: nota de jogo = 349; pausa; caso 5: nota de jogo = 392; pausa; caso 6: nota de jogo = 440; pausa; caso 7: nota de jogo = 466; pausa; caso 8: nota de jogo = 523; pausa; padrão: nota = 1; pausa; } playnote = playnote * tonecontrol; int playnote2; int switchval2 = aleatório (1, 5); switch (switchval2) {case 1: note2 = note2; pausa; caso 2: nota2 = nota2 + 1; pausa; caso 3: nota2 = nota2 - 1; pausa; caso 4: nota2 = nota2 + 2; pausa; caso 5: nota2 = nota2 - 2; pausa; } switch (note2) {case 1: playnote2 = 262; pausa; caso 2: playnote2 = 294; pausa; caso 3: playnote2 = 311; pausa; caso 4: playnote2 = 349; pausa; caso 5: playnote2 = 392; pausa; caso 6: playnote2 = 440; pausa; caso 7: playnote2 = 466; pausa; caso 8: playnote2 = 523; pausa; padrão: note2 = 1; pausa; } playnote2 = playnote2 * tonecontrol2; tom (3, nota de jogo, 30 * controle de velocidade); atraso (31 * controle de velocidade); if (random (1, 4) == 3) {delay (21 * speedcontrol); } else {tone (3, playnote2, 20 * speedcontrol); atraso (21 * controle de velocidade); }}

Etapa 4: como controlá-lo

Como controlar
Como controlar

Da esquerda para a direita, cada dial faz o seguinte:

  • Volume
  • Tom do primeiro tom
  • Tempo
  • Tom do 2º tom

Mexa com eles até conseguir um som de que goste.

Recomendado: