Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void setup()
- {
- //Start communications radio
- //Serial.begin(9600);
- SPI.begin();
- radio.begin();
- network.begin(/*channel*/ 90, /*node address*/ this_node);
- analogReference(DEFAULT);
- //delay(1000);
- pinMode(2, INPUT);
- //attachInterrupt(0, messageReceived, FALLING);
- //Sleep the NRF24L01
- //radio.powerDown();
- //Sleep the MCU
- //LowPower.powerDown(SLEEP_FOREVER, ADC_OFF, BOD_OFF);
- }
- void(* resetFunc) (void) = 0; //declare reset function @ address 0
- void loop()
- {
- attachInterrupt(0, messageReceived, FALLING);
- //radio.powerDown();
- LowPower.powerDown(SLEEP_FOREVER, ADC_OFF, BOD_OFF);
- //radio.powerUp();
- detachInterrupt(0);
- network.update();
- if(network.available())
- {
- // If so, grab it and print it out
- RF24NetworkHeader header;
- payload_t payload;
- network.read(header, &payload, sizeof(payload));
- //Interrogation de toutes les données
- if((payload.value == 0) && (header.from_node == edams_server))
- {
- int chk = dht22.read22(DHT22_PIN);
- if(chk == DHTLIB_OK)
- {
- dht22_temperature_data_send();
- dht22_humidity_data_send();
- }
- battery_level_send();
- }
- //Interrogation d'une donnée précise
- else if ((payload.value == 1) && (header.from_node == edams_server))
- {
- if(payload.id == 301 || payload.id == 302)
- {
- int chk = dht22.read22(DHT22_PIN);
- if(chk == DHTLIB_OK)
- {
- if(payload.id == 301)
- dht22_temperature_data_send();
- else if(payload.id == 302)
- dht22_humidity_data_send();
- }
- }
- else if(payload.id == 303)
- {
- battery_level_send();
- }
- }
- //Interrogation du firmware du noeud
- else if ((payload.value == 9) && (header.from_node == edams_server))
- {
- }
- //resetFunc(); //call reset
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement