Table des matières:
Vidéo: Arduino - Piano Piezo à trois boutons : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Le piano à trois boutons est un projet pour les débutants ayant une certaine expérience de l'utilisation de l'Arduino.
J'ai été entraîné par inadvertance à essayer de créer cela en jouant avec le buzzer piézo pour la première fois. C'était SI fort ! En essayant de trouver différentes méthodes pour rendre le buzzer plus silencieux et en essayant différentes fréquences à l'aide des fonctions tone() et noTone(), j'ai réalisé qu'il pourrait être amusant d'essayer de mélanger le buzzer piézo avec mes autres composants préférés de mon Arduino kit: les boutons et le potentiomètre.
Les matériaux nécessaires comprennent:
- 1 Arduino
- 1 planche à pain
- 1 câble USB
- Fils de cavalier (différentes couleurs)
- 1 résistance de 330 kilo-ohms
- 1 buzzer piézo
- 3 boutons poussoirs
- 1 potentiomètre
Étape 1: Buzzer piézo
Pour commencer, installez le piezo sur la maquette de l'Arduino. Un côté de celui-ci (le côté de la jambe la plus courte) doit courir jusqu'au sol. L'autre côté (le côté de la jambe le plus long) doit être connecté à une broche d'entrée numérique. J'ai choisi de le connecter à 8.
Étape 2: Boutons poussoirs
Ensuite, il est temps de configurer les boutons poussoirs. Comme le piézo, les boutons poussoirs doivent se connecter à la terre et à une broche d'entrée numérique.
Étape 3: Potentiomètre
La dernière étape de la construction physique est le potentiomètre. Les potentiomètres se présentent sous différentes formes. Nous utiliserons le potentiomètre comme diviseur de tension, donc ses trois pattes doivent être connectées.
Jambe droite: barre négative (sol)
Jambe du milieu: broche analogique 0
Jambe gauche: barre positive
Étape 4: Codez
Lors de l'écriture du code pour ce projet, j'ai référencé des informations sur quelques types spécifiques de fonctions:
Ton()
noTone() (Je n'ai pas fini par utiliser celui-ci. J'ai plutôt réglé la fréquence sur "0".)
carte()
Une autre référence merveilleuse pour les utilisateurs novices des Piezo Buzzers peut être trouvée ici. Bien que l'idée de changer le son du buzzer piézo semble simple, cela peut être un peu écrasant au début !
La fonction tone() peut être décomposée en trois parties:
- Broche (la broche à laquelle le buzzer piézo est connecté)
- Fréquence (la fréquence du son en hertz)
- Durée (la durée du son donnée en millisecondes)
Fondamentalement, cela ressemble à ceci: tonalité (pin, fréquence, durée). La troisième composante (durée) est facultative, tandis que les deux autres sont nécessaires au fonctionnement du buzzer. La composante "fréquence" de la fonction de tonalité est ce que l'on peut considérer comme "le son" produit par le buzzer.
Vous remarquerez également que le code comporte deux autres morceaux de code. Il existe des instructions if/else configurées pour indiquer à l'Arduino ce qu'il doit faire si différents boutons sont enfoncés, ainsi que pour le configurer avec "fréquence = 0" dans les situations où aucun des boutons n'est enfoncé. Dans les instructions if/else, les fonctions map() sont utilisées pour mapper l'échelle du potentiomètre sur un ensemble de fréquences. Ceux-ci peuvent être modifiés ! Jouez avec différentes valeurs de fréquence pour voir quels sons différents vous pouvez obtenir du piézo.
Découvrez le code que j'ai utilisé pour créer le piano à trois boutons ici ou vérifiez ci-dessous.
int piezoPin = 8; // Configurer la broche connectée à Piezo.
int capteurPin = 0; //Configurer la broche connectée au capteur (le potentiomètre). int sensorValue = 0;
int bouton1 = 5; // Configurez les broches d'entrée connectées aux boutons.
int bouton2 = 4; int bouton3 = 3;
int fréquence = 0;
const int delayTime = 500; //Configurez une constante pour la variable de temps de retard dans la fonction tone().
void setup() {
pinMode(bouton1, INPUT_PULLUP); pinMode(bouton2, INPUT_PULLUP); pinMode(bouton3, INPUT_PULLUP); }
boucle vide() {
sensorValue = analogRead(sensorPin); //Lire le capteur. //Mappez les différentes valeurs du potentiomètre à un ensemble de fréquences pour chacun des trois boutons. if (digitalRead(button1) == LOW) { fréquence = map(sensorValue, 0, 1023, 400, 499); } else if (digitalRead(button2) == LOW) { fréquence = map(sensorValue, 0, 1023, 500, 599); } else if (digitalRead(button3) == LOW) { Frequency = map(sensorValue, 0, 1023, 600, 699); } else { fréquence = 0; } tone(piezoPin, fréquence, delayTime); // Configurez les fonctions tone() avec des variables. }
Conseillé:
Dépanneuse à trois axes (cnc) - PLC : 4 étapes
Trois Axial Tow Truck (cnc) - PLC: BonjourLa présente thèse traite de la programmation du PLC-PS3 de KLOKNER MOELLER, avec à la fois la fonctionnalité d'un modèle mécanique, la grue de transport à trois axes et dans notre cas la transport de charges métalliques. C'est esse
Trois poules françaises dans la boîte (avec Micro:bit) : 10 étapes
Trois poules françaises dans la boîte (avec Micro:bit): Surprenez (ou effrayez) les gens avec trois poules sautant d'une boîte. Une touche de vacances avec de l'électronique sur le Jack-in-the-box classique. Ces trois poules sont françaises, bien sûr
Trois circuits de haut-parleurs -- Tutoriel pas à pas : 3 étapes
Trois circuits de haut-parleurs || Tutoriel pas à pas : le circuit de haut-parleur renforce les signaux audio reçus de l'environnement sur le micro et l'envoie au haut-parleur à partir duquel l'audio amplifié est produit. Ici, je vais vous montrer trois façons différentes de créer ce circuit de haut-parleur en utilisant :
Souris Doodler RVB à trois boutons Sun. : 11 étapes (avec photos)
Souris Sun Three Button RGB Light Doodler.: Je rencontre Lori Stotko et Stuart Nafey http://lightdoodles.com/ lors des auditions Makers Faire de cette année. Ils avaient ces super stylos Light qu'ils avaient faits pour griffonner. J'ai décidé d'en faire quand je suis rentré à la maison, et je me suis souvenu de la vieille souris à trois boutons Sun que j'ai
Trois boutons en tissu : 6 étapes (avec photos)
Trois boutons en tissu : ces boutons en tissu super simples sont doux, amusants à pousser et peuvent être utiles lors de la construction de divers prototypes. Ils partagent tous le même terrain ou plus, selon ce à quoi vous vous connectez. Je vends également ces boutons en tissu faits à la main via