Étape 4: Préparer le programme ARDUINO
BITS & CODE de touche de la télécommande
#define REMOTE_CODE votre code à distance comme renvoyé par l’utilitaire de décodeur IRrecvDump le préfixe « 0 x »
#define REMOTE_BIT votre taille de données de code à distance tel que renvoyé par l’utilitaire de décodeur de IRrecvDump.
Ce programme Arduino fonctionne pour la plupart des télécommandes, mais vous devez lui dire sur votre protocole de contrôle à distance de l’info que vous réunis dans l’étape précédente lorsque vous décoder vos boutons de commande à distance à l’aide d’utilitaire de IRrecvDump. Il est possible de faire la sélection à distance dynamique pendant l’exécution afin que vous n’avez pas à modifier et télécharger code. Je pourrais faire cela dans une version ultérieure de ce gadget.
Niveau de VOLUME Seuil de
#define NOISE_LEVEL plusieurs de 0 à 1024. Commencez avec 500 puis affiner le nombre.
C’est le nombre qui décide à quel moment l’Arduino commence à émettre des codes de baisser le Volume
NOTE : Le capteur de sons je me sers comme un potentiomètre intégré qui contrôle également la sensibilité du capteur.
VITESSE DE CHANGEMENT DE VOLUME
#define REPEAT_TX (à partir de 1 pour autant que vous voulez. Commencez par 3 puis fine tune)
Changer combien de fois vous voulez le code transmis à la télévision. Si vous voulez plus drastique baisse de volume du téléviseur augmenter ce nombre. Si vous voulez un changement progressif plus en volume, réduire ce nombre.
TODO LISTE DES FONCTIONNALITÉS
C’est très simple de programmer plus de fonctionnalités dans ce gadget. Certaines des fonctionnalités qui peuvent être ajoutées :
- Niveau sonore moyen sur une période de temps pour déterminer si l’augmentation du volume est persistant nécessitant une régulation de volume soit momentané et doit être ignorée.
- Lisez le niveau audio après un laps de temps. Si l’audio est trop faible, augmenter le volume d’un certain incrément.
- Rendre le programme y compris les protocoles distants pris en charge
- Ajouter le support Panasonic et JVC
LE CODE DE L’ARDUINO
Coupez et collez le code ci-dessous dans votre IDE Arduino
//=================================================
/*
PROJET : Volume du téléviseur garde
Auteur : Hazim Bitar (techbitar)
DATE: 9 FÉVRIER 2013
CONTACT : techbitar arobase gmail point com
LICENCE : Mon code est dans le domaine public.
IRremote bibliothèque : droit d’auteur par Ken Shirriff http://arcfn.com
*/
#include < IRremote.h >
#define NOISE_LEVEL 350 / / niveau de bruit pour détecter de 0 à 1023
#define REPEAT_TX 3 / / Combien de fois pour transmettre le code de télécommande IR
#define REMOTE_CODE 0x1CE3E817 / / code de télécommande à transmettre. Il s’agit de ma TV. Remplacer avec le vôtre.
#define REMOTE_BIT 32
#define SOUND_SENSOR_PIN A0 / / capteur de sons reliés à cette broche analogique
#define LED13 / / LED utilisé à clignoter quand volume trop élevé
IRsend irsend ; instancier objet IR
void setup()
{
pinMode (LED, sortie) ;
}
void loop()
{
int soundLevel = analogRead(SOUND_SENSOR_PIN) ; lire le capteur sonore
if(soundLevel > NOISE_LEVEL) / / comparer à un seuil de bruit vous décidez
{
digitalWrite(LED,HIGH) ; LED sur
Delay(200) ;
pour (int txCount = 0; txCount < REPEAT_TX ; txCount ++) {/ / combien de fois pour transmettre le code de télécommande IR
irsend.sendNEC (REMOTE_CODE, REMOTE_BIT) ; Changer pour assortir votre protocole distant
Delay(200) ;
Décommentez la fonction qui correspond à votre protocole de contrôle à distance comme indiqué par IRrecvDump
irsend.sendNEC (REMOTE_CODE, REMOTE_BIT) ;
irsend.sendSony (REMOTE_CODE, REMOTE_BIT) ;
irsend.sendRC5 (REMOTE_CODE, REMOTE_BIT) ;
irsend.sendRC6 (REMOTE_CODE, REMOTE_BIT) ;
}
}
digitalWrite(LED,LOW) ; La LED est éteinte
}
===