Commit a96fea806eed840b9c0020c415975106a3cf59a5

Authored by omahieux
2 parents 6bba404a a66eb1b5

Mise à jour de LORA_terrestre

Showing 1 changed file with 0 additions and 136 deletions   Show diff stats
LORA_nacelle.ino deleted
@@ -1,136 +0,0 @@ @@ -1,136 +0,0 @@
1 -// Code contenu dans le module Lora Feather EMBARQUE dans la nacelle  
2 -  
3 -  
4 -#include <SPI.h>  
5 -#include <RH_RF95.h>  
6 -  
7 -/* for feather m0 */  
8 -#define RFM95_CS 8  
9 -#define RFM95_RST 4  
10 -#define RFM95_INT 3  
11 -  
12 -#define TAILLE_RADIOPACKET 20  
13 -#define LED 13  
14 -  
15 -// Change to 434.0 or other frequency, must match RX's freq!  
16 -#define RF95_FREQ 434.0  
17 -// Singleton instance of the radio driver  
18 -RH_RF95 rf95(RFM95_CS, RFM95_INT);  
19 -  
20 -//Fonction vidage de buffer série  
21 -void serialFlush(){  
22 - pinMode(LED, OUTPUT);  
23 - while(Serial.available() > 0) {  
24 - char t = Serial.read();  
25 - }  
26 -}  
27 -  
28 -void setup()  
29 -{  
30 - pinMode(RFM95_RST, OUTPUT);  
31 - digitalWrite(RFM95_RST, HIGH);  
32 - while (!Serial); // peut être à enlever avec rasp..  
33 - Serial.begin(9600);  
34 - delay(100);  
35 - //Serial.println("Feather LoRa TX Test!");  
36 - // manual reset  
37 - digitalWrite(RFM95_RST, LOW);  
38 - delay(10);  
39 - digitalWrite(RFM95_RST, HIGH);  
40 - delay(10);  
41 - while (!rf95.init()) {  
42 - //Serial.println("LoRa radio init failed");  
43 - while (1);  
44 - }  
45 - //Serial.println("LoRa radio init completed");  
46 - // Defaults after init are 434.0MHz, modulation GFSK_Rb250Fd250, +13dbM  
47 - if (!rf95.setFrequency(RF95_FREQ)) {  
48 - //Serial.println("setFrequency failed");  
49 - while (1);  
50 -  
51 - serialFlush();  
52 - }  
53 -  
54 - //Serial.print("Set Freq to: "); Serial.println(RF95_FREQ);  
55 - // Defaults after init are 434.0MHz, 13dBm, Bw = 125 kHz, Cr = 4/5, Sf = 128chips/symbol, CRC on  
56 - // The default transmitter power is 13dBm, using PA_BOOST.  
57 - // If you are using RFM95/96/97/98 modules which uses the PA_BOOST transmitter pin, then  
58 - // you can set transmitter powers from 5 to 23 dBm:  
59 - rf95.setTxPower(23, false);  
60 -}  
61 -  
62 -int nb_envoi;  
63 -uint8_t radiopacket[TAILLE_RADIOPACKET]="null"; //Chaîne contenant la requête à envoyer à la nacelle  
64 -uint8_t radiopacket_tmp[TAILLE_RADIOPACKET]="null";  
65 -  
66 -void loop()  
67 -{  
68 - //DECLARATION VARIABLES et INITIALISATION  
69 - char caractere_lu = 0; //caractere à lire  
70 - int caractere_dispo =0; // nombre de caracteres dispo dans le buffer  
71 - int i_chaine = 0; //indique l'endroit où on doit écrire dans la chaîne  
72 -  
73 - memcpy(radiopacket_tmp,radiopacket,TAILLE_RADIOPACKET);  
74 -  
75 - //LECTURE DES DONNEES A ENVOYER AU SOL  
76 - caractere_dispo = Serial.available();  
77 -  
78 - while(caractere_dispo > 0) //tant qu'il y a des caractères à lire  
79 - {  
80 - caractere_lu = Serial.read(); //on lit le caractère  
81 - radiopacket[i_chaine] = caractere_lu;  
82 - //Serial.print(caractere_lu); //puis on le renvoi à l’expéditeur tel quel  
83 - caractere_dispo = Serial.available(); //on relit le nombre de caractères dispo  
84 - i_chaine++;  
85 - }  
86 - radiopacket[TAILLE_RADIOPACKET-1] = 0; // marquage fin du packet  
87 -  
88 - //si la donnée reçu est différente de la précédente  
89 - if(memcmp(radiopacket,radiopacket_tmp,TAILLE_RADIOPACKET)!=0){  
90 - nb_envoi = 0;  
91 - }  
92 -  
93 -  
94 - //Serial.println("Sending..."); delay(10);  
95 -  
96 - //ENVOI DES DONNEES AU SOL  
97 - if (nb_envoi==0){  
98 - rf95.send((uint8_t *)radiopacket, TAILLE_RADIOPACKET);  
99 - rf95.waitPacketSent();  
100 - //Serial.println("TX done"); delay(10);  
101 - digitalWrite(LED, HIGH);  
102 - nb_envoi++;  
103 - }  
104 -  
105 -  
106 - //RECEPTION DES REQUETES PROVENANT DU SOL  
107 - uint8_t buf[RH_RF95_MAX_MESSAGE_LEN];  
108 - uint8_t len = sizeof(buf);  
109 - //Serial.println("Waiting for reply..."); delay(10);  
110 - if (rf95.waitAvailableTimeout(1000))  
111 - {  
112 - // Should be a reply message for us now  
113 - if (rf95.recv(buf, &len))  
114 - {  
115 - //ENVOI DE LA REQUETE VERS LA RASPBERRY  
116 - Serial.println((char*)buf);  
117 -  
118 - //Serial.print("RSSI: ");  
119 - //Serial.println(rf95.lastRssi(), DEC);  
120 -  
121 - }  
122 - else  
123 - {  
124 - //Serial.println("Receive failed");  
125 - }  
126 - }  
127 - else  
128 - {  
129 - //Serial.println("No reply");  
130 - }  
131 - digitalWrite(LED, LOW);  
132 -  
133 - delay(200);  
134 -}  
135 -  
136 -