From 5d0c7d46a2fc525f4051d9f06f72a3726dead2e9 Mon Sep 17 00:00:00 2001 From: Mayank Sirotiya Date: Thu, 23 Jun 2016 14:08:12 +0530 Subject: [PATCH 1/2] platform/mikro-e/dev: add motion click driver and its test application Signed-off-by: Mayank Sirotiya Signed-off-by: Onkar Kshirsagar --- platform/mikro-e/apps/test-motion/Makefile | 19 +++ .../mikro-e/apps/test-motion/test-motion.c | 72 +++++++++++ platform/mikro-e/contiki-mikro-e-main.c | 13 +- platform/mikro-e/dev/common-clicks.h | 39 ++++++ .../dev/motion-click/Makefile.motion-click | 2 + .../mikro-e/dev/motion-click/motion-click.c | 117 ++++++++++++++++++ .../mikro-e/dev/motion-click/motion-click.h | 91 ++++++++++++++ 7 files changed, 352 insertions(+), 1 deletion(-) create mode 100755 platform/mikro-e/apps/test-motion/Makefile create mode 100644 platform/mikro-e/apps/test-motion/test-motion.c create mode 100644 platform/mikro-e/dev/common-clicks.h create mode 100644 platform/mikro-e/dev/motion-click/Makefile.motion-click create mode 100644 platform/mikro-e/dev/motion-click/motion-click.c create mode 100644 platform/mikro-e/dev/motion-click/motion-click.h diff --git a/platform/mikro-e/apps/test-motion/Makefile b/platform/mikro-e/apps/test-motion/Makefile new file mode 100755 index 00000000000..e6ddbe40d1a --- /dev/null +++ b/platform/mikro-e/apps/test-motion/Makefile @@ -0,0 +1,19 @@ +CONTIKI_PROJECT = test-motion +CONTIKI = ../../../.. + +MOTION_CLICK = motion-click + +CFLAGS += -DMOTION_CLICK + +APPS += motion-click +APPDIRS += ../../dev + +all: $(CONTIKI_PROJECT) + xc32-bin2hex $(CONTIKI_PROJECT).$(TARGET) + +distclean: cleanall + +cleanall: + rm -f symbols.* + +include $(CONTIKI)/Makefile.include diff --git a/platform/mikro-e/apps/test-motion/test-motion.c b/platform/mikro-e/apps/test-motion/test-motion.c new file mode 100644 index 00000000000..e7d532b1e49 --- /dev/null +++ b/platform/mikro-e/apps/test-motion/test-motion.c @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2016, Imagination Technologies Limited and/or its + * affiliated group companies. + * + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote + * products derived from this software without specific prior + * written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * \file + * A test application for motion-click. + * http://www.mikroe.com/click/motion/ + * + */ + +#include +#include +#include +#include "dev/common-clicks.h" +#include "dev/leds.h" +#include "sys/clock.h" +/*---------------------------------------------------------------------------*/ +PROCESS(test_motion, "Motion click test"); +AUTOSTART_PROCESSES(&test_motion); +/*---------------------------------------------------------------------------*/ +PROCESS_THREAD(test_motion, ev, data) +{ + PROCESS_EXITHANDLER(goto exit;) + PROCESS_BEGIN(); + static int i; + // static struct etimer timer; + SENSORS_ACTIVATE(motion_sensor); + while(1) { + PROCESS_WAIT_EVENT_UNTIL((ev == sensors_event)); + if (data == &motion_sensor) { + printf("Motion event received\n"); + leds_on(LEDS_ALL); + /* Delay for 500ms */ + for(i=0;i<=500;++i) { + clock_delay_usec(1000); + } + leds_off(LEDS_ALL); + } + } + exit: + SENSORS_DEACTIVATE(motion_sensor); + PROCESS_END(); +} +/*---------------------------------------------------------------------------*/ diff --git a/platform/mikro-e/contiki-mikro-e-main.c b/platform/mikro-e/contiki-mikro-e-main.c index b8c6bfa436d..d0394030f90 100755 --- a/platform/mikro-e/contiki-mikro-e-main.c +++ b/platform/mikro-e/contiki-mikro-e-main.c @@ -48,15 +48,21 @@ #include #include #include "button-sensor.h" +#include "dev/common-clicks.h" #define UART_DEBUG_BAUDRATE 115200 + +#ifdef MOTION_CLICK +SENSORS(&button_sensor, &button_sensor2, &motion_sensor); +#else SENSORS(&button_sensor, &button_sensor2); +#endif /*---------------------------------------------------------------------------*/ int main(int argc, char **argv) { - int32_t r; + int32_t r = 0; pic32_init(); watchdog_init(); @@ -103,6 +109,11 @@ ISR(_CHANGE_NOTICE_VECTOR) } else if(BUTTON2_CHECK_IRQ()) { /* Button2 was pressed */ button2_isr(); +#ifdef MOTION_CLICK + } else if(MOTION_SENSOR_CHECK_IRQ()) { + /* Motion was detected */ + motion_sensor_isr(); +#endif } } diff --git a/platform/mikro-e/dev/common-clicks.h b/platform/mikro-e/dev/common-clicks.h new file mode 100644 index 00000000000..0b03c93f641 --- /dev/null +++ b/platform/mikro-e/dev/common-clicks.h @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2016, Imagination Technologies Limited and/or its + * affiliated group companies. + * + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote + * products derived from this software without specific prior + * written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __COMMON_CLICKS_H__ +#define __COMMON_CLICKS_H__ + +#ifdef MOTION_CLICK +#include "motion-click/motion-click.h" +#endif + +#endif /* __COMMON_CLICKS_H__ */ diff --git a/platform/mikro-e/dev/motion-click/Makefile.motion-click b/platform/mikro-e/dev/motion-click/Makefile.motion-click new file mode 100644 index 00000000000..b963355450f --- /dev/null +++ b/platform/mikro-e/dev/motion-click/Makefile.motion-click @@ -0,0 +1,2 @@ + +motion-click_src += motion-click.c diff --git a/platform/mikro-e/dev/motion-click/motion-click.c b/platform/mikro-e/dev/motion-click/motion-click.c new file mode 100644 index 00000000000..1db8426fe90 --- /dev/null +++ b/platform/mikro-e/dev/motion-click/motion-click.c @@ -0,0 +1,117 @@ +/* + * Copyright (c) 2016, Imagination Technologies Limited and/or its affiliated + * group companies. + * + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * 3. Neither the name of the copyright holder nor the names of its + * contributors may be used to endorse or promote products derived from this + * software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * \file + * Motion click driver. + * http://www.mikroe.com/click/motion/ + * + */ + +#include +#include "motion-click.h" + +static struct timer debouncetimer; +static int motion_sensor_mode; +static int motion_sensor_state; +/*---------------------------------------------------------------------------*/ +static void motion_sensor_read(const struct sensors_sensor *s) +{ + if (!motion_sensor_state) { + if (timer_expired(&debouncetimer)) { + motion_sensor_state = 1; + /* Set a timer for 100ms to ignore false notifications */ + timer_set(&debouncetimer, CLOCK_SECOND / 10); + /* Notify processes that Motion has been detected */ + sensors_changed(s); + } + } else { + if (timer_expired(&debouncetimer)) { + motion_sensor_state = 0; + /* Set a timer for 100ms to ignore false notifications */ + timer_set(&debouncetimer, CLOCK_SECOND / 10); + } + } +} + +void motion_sensor_isr(void) +{ + motion_sensor_read(&motion_sensor); + MOTION_SENSOR_CLEAR_IRQ(); +} +/*---------------------------------------------------------------------------*/ +static int +motion_sensor_configure(int type, int value) +{ + switch(type) { + case SENSORS_HW_INIT: + /* Configure gpio pins and initialize interrupt */ + MOTION_SENSOR_IRQ_INIT(); + motion_sensor_state = 0; + return 1; + + case SENSORS_ACTIVE: + if(value) { + if(!motion_sensor_mode) { + /* Enable interrupt for Motion sensor */ + timer_set(&debouncetimer, 0); + MOTION_SENSOR_IRQ_ENABLE(); + motion_sensor_mode = 1; + } + } else { + /* Disable interrupt for Motion sensor */ + MOTION_SENSOR_IRQ_DISABLE(); + motion_sensor_mode = 0; + } + return 1; + + default: + return 0; + } +} +/*---------------------------------------------------------------------------*/ +static int +motion_sensor_status(int type) +{ + return motion_sensor_mode; +} +/*---------------------------------------------------------------------------*/ +static int +motion_sensor_value(int type) +{ + return motion_sensor_state; +} +/*---------------------------------------------------------------------------*/ +SENSORS_SENSOR(motion_sensor, MOTION_SENSOR, motion_sensor_value, motion_sensor_configure, + motion_sensor_status); +/*---------------------------------------------------------------------------*/ diff --git a/platform/mikro-e/dev/motion-click/motion-click.h b/platform/mikro-e/dev/motion-click/motion-click.h new file mode 100644 index 00000000000..807408b1a7a --- /dev/null +++ b/platform/mikro-e/dev/motion-click/motion-click.h @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2016, Imagination Technologies Limited and/or its + * affiliated group companies. + * + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote + * products derived from this software without specific prior + * written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * \file + * Motion click driver. + * http://www.mikroe.com/click/motion/ + * + */ + +#ifndef __MOTION_SENSOR_H__ +#define __MOTION_SENSOR_H__ + +#include + +/* To initialize interrupt on Motion detected */ +#define MOTION_SENSOR_IRQ_INIT() __MOTION_SENSOR_IRQ_INIT() +#define __MOTION_SENSOR_IRQ_INIT() \ + do { \ + GPIO_CONFIGURE_AS_INPUT(D, 0); \ + CNCONDSET = _CNCOND_ON_MASK; \ + IEC1SET = _IEC1_CNDIE_MASK; \ + IFS1CLR = _IFS1_CNDIF_MASK; \ + IPC8SET = (6 << _IPC8_CNIP_POSITION) | (0 << _IPC8_CNIS_POSITION); \ + (void)PORTD; \ + } while(0) + +/* To enable Motion sensor interrupt */ +#define MOTION_SENSOR_IRQ_ENABLE() __MOTION_SENSOR_IRQ_ENABLE() +#define __MOTION_SENSOR_IRQ_ENABLE() \ + do { \ + CNENDSET = _CNEND_CNIED0_MASK; \ + } while(0) + +/* To disable Motion sensor interrupt */ +#define MOTION_SENSOR_IRQ_DISABLE() __MOTION_SENSOR_IRQ_DISABLE() +#define __MOTION_SENSOR_IRQ_DISABLE() \ + do { \ + CNENDCLR = _CNEND_CNIED0_MASK; \ + } while(0) + +/* To clear interrupt */ +#define MOTION_SENSOR_CLEAR_IRQ() __MOTION_SENSOR_CLEAR_IRQ() +#define __MOTION_SENSOR_CLEAR_IRQ() \ + do { \ + (void)PORTD; \ + IFS1CLR = _IFS1_CNDIF_MASK; \ + CNSTATDCLR = _CNSTATD_CNSTATD0_MASK; \ + } while(0) + +/* Check if Motion was detected */ +#define MOTION_SENSOR_CHECK_IRQ() __MOTION_SENSOR_CHECK_IRQ() +#define __MOTION_SENSOR_CHECK_IRQ() \ + (IFS1bits.CNDIF & CNSTATDbits.CNSTATD0) + +/* Method to be called when Motion is detected */ +void motion_sensor_isr(void); + +#define MOTION_SENSOR "motion-sensor" + +extern const struct sensors_sensor motion_sensor; + +#endif /* __MOTION_SENSOR_H__ */ From ac94758fedbdb30d807134df81df54e5cf0fd749 Mon Sep 17 00:00:00 2001 From: Mayank Sirotiya Date: Thu, 23 Jun 2016 14:43:55 +0530 Subject: [PATCH 2/2] platform/mikro-e/dev: restructure relay click driver files and update test application Signed-off-by: Mayank Sirotiya --- platform/mikro-e/apps/test-relay/Makefile | 13 +++++++++---- platform/mikro-e/apps/test-relay/test-relay.c | 2 +- .../mikro-e/apps/test-relay/test-relay.mikro-e | Bin 372060 -> 0 bytes platform/mikro-e/dev/Makefile.dev | 1 - platform/mikro-e/dev/common-clicks.h | 4 ++++ .../dev/relay-click/Makefile.relay-click | 2 ++ .../dev/{ => relay-click}/relay-click.c | 0 .../dev/{ => relay-click}/relay-click.h | 0 8 files changed, 16 insertions(+), 6 deletions(-) delete mode 100755 platform/mikro-e/apps/test-relay/test-relay.mikro-e delete mode 100644 platform/mikro-e/dev/Makefile.dev create mode 100644 platform/mikro-e/dev/relay-click/Makefile.relay-click rename platform/mikro-e/dev/{ => relay-click}/relay-click.c (100%) rename platform/mikro-e/dev/{ => relay-click}/relay-click.h (100%) diff --git a/platform/mikro-e/apps/test-relay/Makefile b/platform/mikro-e/apps/test-relay/Makefile index 0a98828684a..cbe2eec0b43 100644 --- a/platform/mikro-e/apps/test-relay/Makefile +++ b/platform/mikro-e/apps/test-relay/Makefile @@ -1,10 +1,15 @@ -CONTIKI_PROJECT=test-relay -CONTIKI=../../../.. +CONTIKI_PROJECT = test-relay +CONTIKI = ../../../.. -APPS += dev -APPDIRS += ../.. +RELAY_CLICK = relay-click + +CFLAGS += -DRELAY_CLICK + +APPS += relay-click +APPDIRS += ../../dev all: $(CONTIKI_PROJECT) + xc32-bin2hex $(CONTIKI_PROJECT).$(TARGET) distclean: cleanall diff --git a/platform/mikro-e/apps/test-relay/test-relay.c b/platform/mikro-e/apps/test-relay/test-relay.c index d879c6f0984..575275101e6 100644 --- a/platform/mikro-e/apps/test-relay/test-relay.c +++ b/platform/mikro-e/apps/test-relay/test-relay.c @@ -37,7 +37,7 @@ */ #include "contiki.h" -#include "relay-click.h" +#include "dev/common-clicks.h" /*---------------------------------------------------------------------------*/ PROCESS(test_relay_click, "Test relay-click"); AUTOSTART_PROCESSES(&test_relay_click); diff --git a/platform/mikro-e/apps/test-relay/test-relay.mikro-e b/platform/mikro-e/apps/test-relay/test-relay.mikro-e deleted file mode 100755 index a9c8206bfa54d2ca3a67decbc34426050148cf70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 372060 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