Created
April 30, 2013 14:31
-
-
Save maditnerd/5489108 to your computer and use it in GitHub Desktop.
Récupérateur de codes 433.92Mhz Auteur: Sarrailh Rémi (maditnerd) License : Gplv3 Description: Ce code permet de récupérer le code renvoyé par une télécommande en 433.92Mhz puis de l'enregistrer dans un fichier texte Ce code ne marchera pas si le code est protégé contre le "Replay" c.a.d le plus souvent, les télécommandes de garage/portail et d…
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Récupérateur de codes 433.92Mhz | |
Auteur: Sarrailh Rémi (maditnerd) | |
License : Gplv3 | |
Description: | |
Ce code permet de récupérer le code renvoyé par une télécommande en 433.92Mhz | |
puis de l'enregistrer dans un fichier texte | |
Ce code ne marchera pas si le code est protégé contre le "Replay" | |
c.a.d le plus souvent, les télécommandes de garage/portail | |
et de voiture (Heuresement!) | |
Arduino: | |
Ce code nécessite de programmer l'Arduino avec ce code (à mettre) | |
et d'y brancher un récepteur 433.92Mhz sur la pin (broche) 2 | |
*/ | |
import processing.serial.*; //Bibliothèque de communication en série | |
PFont police; //Police d'écriture | |
Serial Serial_arduino; // Connexion au port série | |
String readString = ""; // Texte récupéré sur le port Série | |
int nbcode = 0; | |
String code_actuel = ""; | |
String[] liste_code = new String[100]; | |
void setup() { | |
//On connecte au démarrage l'arduino avec l'ordinateur (On part du principe que l'arduino sera sur le dernière port série connecté) | |
Serial_arduino = new Serial(this, Serial.list()[Serial.list().length-1], 9600); | |
size(420, 200); | |
//Création de la police d'écriture | |
police = createFont("Arial", 19, true); | |
textFont(police); | |
//Aligne le texte au centre | |
textAlign(CENTER); | |
//Création de l'interface | |
//Titre | |
fill(0); | |
text("Récupération des codes des télécommandes", width/2, 20); | |
line(10, 30, 400, 30); | |
//Boite de texte de l'id | |
fill(255); | |
rect(height/2, 40, 220, 40); | |
fill(255, 0, 0); | |
text("ID:", width/2, 65); //Voit ce qui a été récupéré | |
//Texte explication | |
fill(0); | |
text("Appuyer sur ENTREE pour enregistrer ce code", width/2, 110); | |
//Boite du nombre de code enregistrées | |
fill(255); | |
rect(height/2+90, 120, 40, 40); | |
fill(255, 0, 0); | |
text("0", width/2, 145); | |
} | |
void draw() { | |
//On lit sur le port série de l'arduino | |
while (Serial_arduino.available () > 0) { | |
lire_serie(); | |
} | |
//Si le code est fini d'être envoyer alors on l'affiche | |
if (readString.length() > 0) { | |
//Efface le texte du code sur l'écran | |
fill(255); | |
rect(height/2, 40, 220, 40); | |
code_actuel = readString; | |
//Affiche le code récupéré | |
fill(255, 0, 0); | |
text("ID:" + readString, width/2, 65); //Voit ce qui a été récupéré | |
//Efface le code en mémoire | |
readString = ""; | |
//Son par défaut de l'OS | |
java.awt.Toolkit.getDefaultToolkit().beep(); | |
} | |
} | |
void keyReleased() { | |
if (keyCode == 10) | |
{ | |
if (code_actuel != "") | |
{ | |
//Enregistrement des codes dans un tableau | |
liste_code[nbcode] = code_actuel; | |
nbcode++; | |
//Boite du nombre de code enregistrées | |
fill(255); | |
rect(height/2+90, 120, 40, 40); | |
fill(255, 0, 0); | |
text(nbcode, width/2, 145); | |
java.awt.Toolkit.getDefaultToolkit().beep(); | |
//Effacement de la Boite de texte de l'id | |
fill(255); | |
rect(height/2, 40, 220, 40); | |
fill(255, 0, 0); | |
text("ID:", width/2, 65); //Voit ce qui a été récupéré | |
code_actuel = ""; | |
} | |
} | |
if(key == 's') | |
{ | |
String[] sauvegarde_code = new String[nbcode]; | |
for(int i = 0; i < nbcode; i++) | |
{ | |
sauvegarde_code[i] = liste_code[i]; | |
} | |
saveStrings("codes.txt", sauvegarde_code); | |
} | |
} | |
//Cette fonction lit les données envoyées par l'Arduino | |
void lire_serie() { | |
delay(10); | |
// Récupère les données | |
if (Serial_arduino.available() > 0) { | |
char c = Serial_arduino.readChar(); | |
readString += c; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment