X-Git-Url: https://git.rohieb.name/wsn-p.git/blobdiff_plain/0d2c500d5f41640cab98d352b1c2c0a11e58cb34..ac90b067a9353bc7eb577cc48e9dea57c07b220a:/tutorial/ledbuttontest/ledbuttontest.c diff --git a/tutorial/ledbuttontest/ledbuttontest.c b/tutorial/ledbuttontest/ledbuttontest.c new file mode 100644 index 0000000..719de36 --- /dev/null +++ b/tutorial/ledbuttontest/ledbuttontest.c @@ -0,0 +1,34 @@ +#include +#include +//#include +#include + +PROCESS(ledbuttontest, "LED button test"); +AUTOSTART_PROCESSES(&ledbuttontest); + +PROCESS_THREAD(ledbuttontest, ev, data) { + PROCESS_BEGIN(); + + leds_init(); + leds_off(LEDS_ALL); + + SENSORS_ACTIVATE(button_sensor); + + static char i; + static struct etimer timer; + for(i = 0; 1; i++) { + PROCESS_WAIT_EVENT_UNTIL(ev == sensors_event && data == &button_sensor); + + // debounce for 250 ms + etimer_set(&timer, CLOCK_SECOND * 0.25); + PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&timer)); + + if((i % 2)) { + leds_toggle(LEDS_GREEN); + } + leds_toggle(LEDS_YELLOW); + //printf("toggled\n"); + } + + PROCESS_END(); +}