Arduino : code metronome
georges97 Messages postés 13776 Date d'inscription Statut Contributeur Dernière intervention -
Salut tt le monde,
je suis en besoin d'aide sur un projet dans lequel je dois réaliser un métronome (pour un synthé) à l'aide d'un buzzer, sa fréquence doit être réglable avec un potentiomètre et s'afficher sur un écran OLED.
Pour le montage c'est bon, c'est au niveau du code que je galère.
#include <Adafruit_GFX.h> // Bibliothèque graphique pour l'écran OLED
#include <Adafruit_SSD1306.h> // Bibliothèque pour l'écran OLED
#include <Wire.h> // Bibliothèque pour la communication I2C avec l'écran OLED
#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET); // Initialisation de l'écran OLED
int potPin = A0; // Broche analogique pour le potentiomètre
int buzzPin = 10 ; // Broche digitale pour le métronome
void setup() {
pinMode(buzzPin, OUTPUT); // Configuration de la broche du métronome en sortie
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // Initialisation de l'écran OLED
display.clearDisplay(); // Effacement de l'écran OLED
display.setTextSize(2); // Taille du texte
display.setTextColor(WHITE); // Couleur du texte
display.setCursor(0,0); // Position du curseur pour le texte
}
void loop() {
int potVal = analogRead(potPin); // Lecture de la valeur du potentiomètre
float freq = map(potVal, 0, 1023, 100, 1000); // Mapping de la valeur du potentiomètre à une fréquence en Hz
display.clearDisplay(); // Effacement de l'écran OLED
display.setCursor(0,0); // Position du curseur pour le texte
display.print("Freq: "); // Texte à afficher
display.print(freq); // Affichage de la fréquence sur l'écran OLED
display.print(" Hz");
display.display(); // Affichage du texte sur l'écran OLED
tone(buzzPin, freq); // Activation du métronome avec la fréquence correspondante
delay(500); // Durée d'activation du métronome
noTone(buzzPin); // Désactivation du métronome
delay(500); // Durée de pause entre chaque battement du métronome
}
J'ai trouvé ce code sur internet, il ne fonctionne pas et je ne sais pas pourquoi.
Si jamais vous avez des suggestions de codes ou de l'aide je suis preneur. Merci
- Arduino metronome
- Metronome gratuit - Télécharger - Création musicale
- GiveMe Tac ! Métronome - Télécharger - Création musicale
- Metronome virtuel - Télécharger - Création musicale
- Metronome visual - Télécharger - Création musicale
- Sanguino arduino - Forum Logiciels
4 réponses
Bonjour,
Sans jugement de valeur "il ne fonctionne pas" n'a pas de signification pour un code, sachant qu'il y a toujours un ou des messages d'erreur pour signaler la nature et l'emplacement de la première erreur provoquant un blocage, ce qui ne veut pad dire que d'autres ne seront pas signalées après correction.
Ce peut être :
- un problème d'alimentation de l'écran
- un problème de connexion (i2c)
- un problème de compilation
- un problème d'installation des bibliothèques (avez-vous vérifié leur présence dans le module "bibliothèques"?)
Je suppose que les bibliothèque d'adafruit sont compatibles avec votre modèle d'arduino (non-désigné).
Bonjiur,
Va donc voir là--->: https://forum.arduino.cc/c/international/francais/49
Tu y trouvera des experts en la matière.