Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Cette conception ne joue pas une "chanson". Au lieu de cela, il utilise une gamme de blues pour créer sa propre musique pendant qu'il joue - semblable à un vrai musicien de jazz. Chaque fois que vous l'allumez, il jouera quelque chose de différent; mais vous pouvez toujours contrôler le tempo, la hauteur et le volume avec les cadrans. Écoutez un exemple de jeu ci-dessous:
Étape 1: Qu'est-ce que le jazz ?
Si vous voulez la définition officielle, vous pouvez regarder ces liens, mais je pense que la meilleure façon de la décrire est simplement de vous montrer à quoi cela ressemble.
- https://en.wikipedia.org/wiki/Jazz
- https://en.wikipedia.org/wiki/Jazz_improvisation
Étape 2: Construire le circuit
J'ai construit un support pour mon haut-parleur avec des pailles et du ruban adhésif, mais c'est facultatif. Suivez le diagramme pour construire le reste de cette conception.
Étape 3: Téléchargez le code
Ce code suit un algorithme pseudo-aléatoire pour jouer à l'infini les notes de la gamme Bb blues dans un rythme jazzy syncopé.
Utilisez ce code dans l'IDE Arduino:
note int = 1;
int note2 = 1; void setup() { pinMode(3, OUTPUT); } void loop() { int tonecontrol = map(analogRead(A0), 0, 1023, 1, 4); int speedcontrol = map(analogRead(A1), 0, 1023, 1, 20); int tonecontrol2 = map(analogRead(A2), 0, 1023, 1, 4); note de lecture int; int switchval = random(1, 5); switch (switchval) { cas 1: note = note; Pause; cas 2: note = note + 1; Pause; cas 3: note = note - 1; Pause; cas 4: note = note + 2; Pause; cas 5: note = note - 2; Pause; } switch (note) { cas 1: playnote = 262; Pause; cas 2: note de lecture = 294; Pause; cas 3: note de lecture = 311; Pause; cas 4: note de lecture = 349; Pause; cas 5: note de lecture = 392; Pause; cas 6: note de lecture = 440; Pause; cas 7: note de lecture = 466; Pause; cas 8: note de lecture = 523; Pause; par défaut: note = 1; Pause; } playnote = playnote * tonecontrol; int playnote2; int switchval2 = aléatoire(1, 5); switch (switchval2) { cas 1: note2 = note2; Pause; cas 2: note2 = note2 + 1; Pause; cas 3: note2 = note2 - 1; Pause; cas 4: note2 = note2 + 2; Pause; cas 5: note2 = note2 - 2; Pause; } switch (note2) { cas 1: playnote2 = 262; Pause; cas 2: playnote2 = 294; Pause; cas 3: playnote2 = 311; Pause; cas 4: playnote2 = 349; Pause; cas 5: playnote2 = 392; Pause; cas 6: playnote2 = 440; Pause; cas 7: playnote2 = 466; Pause; cas 8: playnote2 = 523; Pause; par défaut: note2 = 1; Pause; } playnote2 = playnote2 * tonecontrol2; ton (3, playnote, 30 * speedcontrol); retard (31 * contrôle de vitesse); if (random(1, 4) == 3) { delay(21 * speedcontrol); } else { tone(3, playnote2, 20 * speedcontrol); retard (21 * contrôle de vitesse); } }
Étape 4: Comment le contrôler
De gauche à droite, chaque cadran fonctionne comme suit:
- Le volume
- hauteur du 1er ton
- Tempo
- hauteur du 2e ton
Jouez avec eux jusqu'à ce que vous obteniez un son que vous aimez.