Sortie :

A.Signal d'interverrouillage (Verrouillé)----connecter 1 et 2 ;
B.Signal à auto-verrouillage (Bascule) ---- connecter 2 et 3 ;
C.Signal sans verrouillage (Momentané ) ---- déconnecter le cavalier ;
Interverrouillage (Verrouillé) : relais à 4 voies s'interverrouillant, lorsque le relais A est actif et verrouillé , les relais B C D correspondants s'éteignent ; lorsque B est actif et verrouillé, les relais correspondants A C D s'éteignent ; Un seul relais est allumé parmi les 4 relais A B C D;
Type sans verrouillage (Momentané): Appuyez sur A et maintenez-le, puis A est allumé.Même chose pour les relais B C D ;
Type à auto-verrouillage (Bascule): 4 canaux s'ouvrent et se ferment indépendamment, 4 canaux peuvent fonctionner ensemble, ils n'affectent pas les uns les autres. appuyez sur le bouton A, le relais A s'active et se verrouille, appuyez à nouveau puis déconnecté; Même chose pour B C D.
Méthode et étapes d'apprentissage
1. Appuyez sur n'importe quelle touche de la télécommande pendant 5 secondes, la LED clignote 3 fois puis s'allume, puis il a réussi à apprendre .
Effacer les informations de dépôt
Continuez à appuyer sur la touche d'apprentissage, la LED s'éteint, attendez 10 secondes, la LED s'allume, les informations déposées ont été effacées avec succès ;
arduino core fragment(code complet via ebay message Demande):
//Auteur: cantone-electonics
//Arduino 1.0
//Arduino uno R3
//Création d'une télécommande sans fil avec arduino
const int data_out = 2;//encoder DOUT
//Pin LED,lorsque la touche est reçue depuis le port série, la LED clignote
const int ledPin = 13; //Pin LED
//La résistance OSC est de 3.3M
const int Osc_4xCycle = 359; //4 périodes d'oscillation
const int Osc_12xCycle = 1078;//12 périodes d'oscillation
unsigned long Temporary[3];//Unité de stockage temporaire
...
//send:8 bits d'adresse, 4 bits de données, bit de synchronisation
void send_data()
void setup() {
// initialiser le pin LED comme sortie :
pinMode(ledPin, OUTPUT);
// initialiser le pin DOUT de l'encodeur comme sortie
pinMode(data_out, OUTPUT);
Serial.begin(9600);
}
void loop()
{
...
while(1)
{
//obtenir la touche depuis le port série du pc
while (Serial.available() > 0)
{
keydata = Serial.read();
receive_flag = 1;
delay(2);
}
if(receive_flag == 1)//si touche reçue, envoyer la touche
{
receive_flag = 0;
if((keydata == 'a') || (keydata == 'A'))//déclencher le relais du canal A.
{
Temporary[2] = 0xC0;// 0xC0 est la touche du bouton A
digitalWrite(ledPin, HIGH);//Allumer la led
send_data();//envoyer le mot de code
Serial.println(".....déclencher le relais du canal A.....");
}
else if((keydata == 'b') || (keydata == 'B'))//déclencher le relais du canal B.
{
Temporary[2] = 0x30;// 0x30 est la touche du bouton B
digitalWrite(ledPin, HIGH);//Allumer la led
send_data();//envoyer le mot de code
Serial.println(".....déclencher le relais du canal B.....");
}
else if((keydata == 'c') || (keydata == 'C'))//déclencher le relais du canal C.
{
Temporary[2] = 0x0C;// 0x0C est la touche du bouton C
digitalWrite(ledPin, HIGH);//Allumer la led
send_data();//envoyer le mot de code
Serial.println(".....déclencher le relais du canal C.....");
}
else if((keydata == 'd') || (keydata == 'D'))//déclencher le relais du canal D.
{
Temporary[2] = 0x03;// 0x03 est la touche du bouton D
digitalWrite(ledPin, HIGH);//Allumer la led
send_data();//envoyer le mot de code
Serial.println(".....déclencher le relais du canal D.....");
}
...
}
}