optimize power consumtion

This commit is contained in:
Harald Pichler 2016-08-11 23:49:45 +02:00
parent 6a2d13216a
commit c42a75d9d6
3 changed files with 10 additions and 5 deletions

View file

@ -57,7 +57,7 @@
#include "hw-arduino.h" #include "hw-arduino.h"
#include "contiki.h" #include "contiki.h"
#define DEBUG 1 #define DEBUG 0
#if DEBUG #if DEBUG
#include <stdio.h> #include <stdio.h>
#define PRINTF(...) printf(__VA_ARGS__) #define PRINTF(...) printf(__VA_ARGS__)
@ -124,6 +124,7 @@ PROCESS_THREAD(arduino_sketch, ev, data)
PROCESS_WAIT_EVENT(); PROCESS_WAIT_EVENT();
#if PLATFORM_HAS_BUTTON #if PLATFORM_HAS_BUTTON
if(ev == sensors_event && data == &button_sensor) { if(ev == sensors_event && data == &button_sensor) {
mcu_sleep_off();
PRINTF("*******BUTTON*******\n"); PRINTF("*******BUTTON*******\n");
/* Call the event_handler for this application-specific event. */ /* Call the event_handler for this application-specific event. */
@ -131,6 +132,7 @@ PROCESS_THREAD(arduino_sketch, ev, data)
/* Also call the separate response example handler. */ /* Also call the separate response example handler. */
res_separate.resume(); res_separate.resume();
mcu_sleep_on();
} }
#endif /* PLATFORM_HAS_BUTTON */ #endif /* PLATFORM_HAS_BUTTON */

View file

@ -36,10 +36,15 @@
#define PLATFORM_HAS_BUTTON 1 #define PLATFORM_HAS_BUTTON 1
#define PLATFORM_HAS_BATTERY 1 #define PLATFORM_HAS_BATTERY 1
#define LOOP_INTERVAL (10 * CLOCK_SECOND)
/* For Debug: Dont allow MCU sleeping between channel checks */ /* For Debug: Dont allow MCU sleeping between channel checks */
//#undef RDC_CONF_MCU_SLEEP //#undef RDC_CONF_MCU_SLEEP
//#define RDC_CONF_MCU_SLEEP 0 //#define RDC_CONF_MCU_SLEEP 0
/* Save energy */
//#define RDC_CONF_PT_YIELD_OFF
/* Disabling RDC for demo purposes. Core updates often require more memory. */ /* Disabling RDC for demo purposes. Core updates often require more memory. */
/* For projects, optimize memory and enable RDC again. */ /* For projects, optimize memory and enable RDC again. */
//#undef NETSTACK_CONF_RDC //#undef NETSTACK_CONF_RDC

View file

@ -46,12 +46,10 @@ void setup (void)
rest_activate_resource(&res_event, "s/button"); rest_activate_resource(&res_event, "s/button");
// rest_activate_resource (&res_battery, "p/server"); // rest_activate_resource (&res_battery, "p/server");
NETSTACK_MAC.off(1); // NETSTACK_MAC.off(1);
} }
void loop (void) void loop (void)
{ {
mcu_sleep_off();
mcu_sleep_on();
} }