Created
March 23, 2013 16:28
-
-
Save maditnerd/5228316 to your computer and use it in GitHub Desktop.
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
/* | |
emetteur.c | |
Ce programme permet de controler des prises SCS | |
Copyright (c) 2013 Sarrailh Remi | |
Ce programme est sous licence GPLv3 pour plus de detail: | |
http://www.gnu.org/licenses/gpl.html | |
Vous devez installer WiringPi avant pour cela tapez ces commandes: | |
------------------------------------------------------------------- | |
wget -O wiringpi_install smarturl.it/wiringpi | |
chmod wiringpi_install | |
./wiringpi_install | |
Pour compiler le code voici la commande: | |
----------------------------------------- | |
gcc -o emetteur emetteur.c -I/usr/local/include -L/usr/local/lib -lwiringPi | |
*/ | |
#include <stdio.h> | |
#include <string.h> | |
#include <wiringPi.h> | |
/* Configuration ----------------------------------------------------*/ | |
int transmetteur = 7; //GPIO du transmetteur | |
int repetition_total = 10; //Repetition de l'envoi du code | |
int delaiParBinaire = 550; //Delai en millisecondes par binaire | |
int delaiParCode = 10; //Delai en millisecondes par code | |
/*------------------------------------------------------------------*/ | |
//Variable | |
int repetition_code; | |
int repetition_binaire; | |
char code[79]; // Taille du code | |
char list_code[79][79]; // liste des codes a appeller | |
// Prototype des fonctions | |
void SendCode(char* code); | |
int main(int argc, char **argv) | |
{ | |
// Active la gestion des GPIO | |
if(wiringPiSetupGpio() == -1) | |
{ | |
printf("Impossible d'activer les gpios!"); | |
} | |
//Met le transmetteur en OUTPUT | |
pinMode (transmetteur,OUTPUT); | |
strcpy(code,"0001001001001101001101001101001101001101001101001101001001001101001001101001000"); | |
//Envoi le message | |
SendCode(code); | |
digitalWrite(transmetteur,0); | |
} | |
// | |
// Envoie le code | |
// | |
void SendCode(char* code) | |
{ | |
//Repetition du code entier | |
for (repetition_code = 1; repetition_code <= repetition_total ; repetition_code++) | |
{ | |
//Repetition par chiffre binaire | |
for (repetition_binaire = 0 ; repetition_binaire <= 79 ; repetition_binaire++) | |
{ | |
if (code[repetition_binaire] == '1') | |
{ | |
digitalWrite(transmetteur,1); | |
} | |
else | |
{ | |
digitalWrite(transmetteur,0); | |
} | |
delayMicroseconds(delaiParBinaire); | |
} | |
delay(delaiParCode); | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment