Allumer une led en tapant dans les mains a l'aide d'un micro
xml74
Messages postés
161
Date d'inscription
Statut
Membre
Dernière intervention
-
xml74 Messages postés 161 Date d'inscription Statut Membre Dernière intervention -
xml74 Messages postés 161 Date d'inscription Statut Membre Dernière intervention -
Bonjour, étant débutant, je vous demande de l'aide, mon but est de pouvoir allumer une LED a l'aide l'un micro, en tapent dans mes main, puis la reteindre en retapant dans mes mains, comment est-ce possible de faire cela ?
Merci d'avance.
Merci d'avance.
A voir également:
- Lampe qui s'allume en frappant dans les mains
- Lampe de chevet claquement de main - Meilleures réponses
- Led qui s'allume en frappant dans les mains - Meilleures réponses
- Mon pc s'allume mais ne démarre pas windows 10 - Guide
- Mon pc s'allume mais lécran reste noir sans bip - Guide
- Pc qui s'allume et s'éteint en boucle - Forum Matériel & Système
- Installer lampe torche sur mon téléphone - Télécharger - Vie quotidienne
- Tele qui s'allume toute seule signification - Forum TV & Vidéo
3 réponses
'lut, tout dépend de la plate-forme que tu utilises, ainsi que du matériel que tu as à ta disposition...
Au fait, rebonjour! Ça faisait longtemps ;)
Au fait, rebonjour! Ça faisait longtemps ;)
Bon, premièrement tu mets ta LED sur l'Arduino (évidemment), connectée à un pin (ex: le 13) et au GND -- avec une résistance appropriée pour pas faire péter la diode.
Pour ton micro, il faut le mettre sur un pin ANALOG IN ainsi que le Gnd;
Toutefois, nous n'avons aucune indication quant à l'amplitude de tension qu'il peut fournir, et il faudra sûrement l'amplifier.
Coté code, il faudra:
- paramétrer l'ADC pour qu'on puisse lire les données audio, idéalement à 22kHz (ou +)
- avoir une variable pour savoir si on doit allumer ou éteindre la LED
- en boucle, lire les données analogiques, et si on détecte un pic, alterner l'état de la LED
Pour la variable d'état, c'est trivial:
Pour l'initialisation de l'ADC, ça l'est moins... car analogRead ne permet que maxi 10 000 lectures à la seconde.
Il faudra aussi déterminer quelle est la tension envoyée lors d'un clap, qui devrait être bien supérieure à celle du bruit ambiant.
Pour ton micro, il faut le mettre sur un pin ANALOG IN ainsi que le Gnd;
Toutefois, nous n'avons aucune indication quant à l'amplitude de tension qu'il peut fournir, et il faudra sûrement l'amplifier.
Coté code, il faudra:
- paramétrer l'ADC pour qu'on puisse lire les données audio, idéalement à 22kHz (ou +)
- avoir une variable pour savoir si on doit allumer ou éteindre la LED
- en boucle, lire les données analogiques, et si on détecte un pic, alterner l'état de la LED
Pour la variable d'état, c'est trivial:
bool ledAllumee = false;
Pour l'initialisation de l'ADC, ça l'est moins... car analogRead ne permet que maxi 10 000 lectures à la seconde.
Il faudra aussi déterminer quelle est la tension envoyée lors d'un clap, qui devrait être bien supérieure à celle du bruit ambiant.
Oki, Alors moi, pour l'instant, j'ai fait ce code:
Il n'allume pas une LED mais un relais (Pour un projet domotique).
Ce que je pense devoir faire dans un premier temps:
Et mettre des conditions:
Mais je ne sais pas comment m'y prendre.. Après je doit savoir que le code, tourne en boucle, donc se rafraîchie automatiquement, et doit savoir a la seconde près dès que le micro envoie quelque chose..
const int m1 = 7; void setup() { //contenu de l'initialisation pinMode(m1, OUTPUT); } void loop() { digitalWrite(m1, HIGH);}
Il n'allume pas une LED mais un relais (Pour un projet domotique).
Ce que je pense devoir faire dans un premier temps:
const int m1 = 7; const int mic =8; void setup() { pinMode(mic, INPUT); pinMode(m1, OUTPUT); } void loop() digitalWrite(m1, HIGH);}
Et mettre des conditions:
if&
else
Mais je ne sais pas comment m'y prendre.. Après je doit savoir que le code, tourne en boucle, donc se rafraîchie automatiquement, et doit savoir a la seconde près dès que le micro envoie quelque chose..
Oui je dispose que d'un Arduino UNO.... Mais j'ai un micro (obligatoire..)