Add platform LED driver
This commit is contained in:
parent
63692ba96d
commit
c8716f4d57
|
@ -42,6 +42,7 @@ CONTIKI_TARGET_SOURCEFILES += $(ARCH)
|
||||||
CONTIKI_TARGET_SOURCEFILES += contiki-main.c
|
CONTIKI_TARGET_SOURCEFILES += contiki-main.c
|
||||||
CONTIKI_TARGET_SOURCEFILES += slip.c
|
CONTIKI_TARGET_SOURCEFILES += slip.c
|
||||||
CONTIKI_TARGET_SOURCEFILES += button-sensor.c
|
CONTIKI_TARGET_SOURCEFILES += button-sensor.c
|
||||||
|
CONTIKI_TARGET_SOURCEFILES += leds-arch.c
|
||||||
|
|
||||||
CONTIKI_SOURCEFILES += $(CONTIKI_TARGET_SOURCEFILES)
|
CONTIKI_SOURCEFILES += $(CONTIKI_TARGET_SOURCEFILES)
|
||||||
|
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
#include "net/ip/uip.h"
|
#include "net/ip/uip.h"
|
||||||
|
|
||||||
#include "dev/button-sensor.h"
|
#include "dev/button-sensor.h"
|
||||||
|
#include "dev/leds.h"
|
||||||
|
|
||||||
#if WITH_UIP6
|
#if WITH_UIP6
|
||||||
#include "net/ipv6/uip-ds6.h"
|
#include "net/ipv6/uip-ds6.h"
|
||||||
|
@ -111,6 +112,7 @@ int
|
||||||
main(int argc, char **argv)
|
main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
watchdog_init();
|
watchdog_init();
|
||||||
|
leds_init();
|
||||||
uart_init(115200);
|
uart_init(115200);
|
||||||
clock_init();
|
clock_init();
|
||||||
|
|
||||||
|
|
79
platform/ev-aducrf101mkxz/leds-arch.c
Normal file
79
platform/ev-aducrf101mkxz/leds-arch.c
Normal file
|
@ -0,0 +1,79 @@
|
||||||
|
/**
|
||||||
|
* Copyright (c) 2014, Analog Devices, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted (subject to the limitations in the
|
||||||
|
* disclaimer below) provided that the following conditions are met:
|
||||||
|
*
|
||||||
|
* - Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* - 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.
|
||||||
|
*
|
||||||
|
* - Neither the name of Analog Devices, Inc. nor the names of its
|
||||||
|
* contributors may be used to endorse or promote products derived
|
||||||
|
* from this software without specific prior written permission.
|
||||||
|
*
|
||||||
|
* NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
|
||||||
|
* GRANTED BY THIS LICENSE. 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 OWNER 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.
|
||||||
|
*/
|
||||||
|
/**
|
||||||
|
* \author Jim Paris <jim.paris@rigado.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "contiki.h"
|
||||||
|
#include "dev/leds.h"
|
||||||
|
#include "platform-conf.h"
|
||||||
|
#include "aducrf101-contiki.h"
|
||||||
|
|
||||||
|
/* e.g. pADI_GP4 */
|
||||||
|
#define GPIO CC_CONCAT(pADI_GP, LED_GPIO)
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
|
void
|
||||||
|
leds_arch_init(void)
|
||||||
|
{
|
||||||
|
/* Set LED pin as a GPIO output */
|
||||||
|
GPIO->GPOEN |= (1UL << LED_PIN);
|
||||||
|
leds_arch_set(0);
|
||||||
|
}
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
|
unsigned char
|
||||||
|
leds_arch_get(void)
|
||||||
|
{
|
||||||
|
if(GPIO->GPOUT & (1UL << LED_PIN)) {
|
||||||
|
return 0;
|
||||||
|
} else {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
|
void
|
||||||
|
leds_arch_set(unsigned char leds)
|
||||||
|
{
|
||||||
|
if(leds & 1) {
|
||||||
|
GPIO->GPCLR = (1UL << LED_PIN);
|
||||||
|
} else {
|
||||||
|
GPIO->GPSET = (1UL << LED_PIN);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
* @}
|
||||||
|
*/
|
|
@ -35,8 +35,14 @@
|
||||||
* \author Jim Paris <jim.paris@rigado.com>
|
* \author Jim Paris <jim.paris@rigado.com>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define LED1 pADI_GP4, BIT2
|
#ifndef __ADUCRF101_PLATFORM_CONF_H__
|
||||||
|
#define __ADUCRF101_PLATFORM_CONF_H__
|
||||||
|
|
||||||
|
#define LED_GPIO 4
|
||||||
|
#define LED_PIN 2
|
||||||
|
|
||||||
#define BUTTON_GPIO 0
|
#define BUTTON_GPIO 0
|
||||||
#define BUTTON_PIN 6
|
#define BUTTON_PIN 6
|
||||||
#define BUTTON_INT 2
|
#define BUTTON_INT 2
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue