boards: add cc2650stk
parent
475fb6f84d
commit
cc954761b3
@ -0,0 +1,3 @@
|
||||
MODULE = board
|
||||
|
||||
include $(RIOTBASE)/Makefile.base
|
@ -0,0 +1,11 @@
|
||||
# Put defined MCU peripherals here (in alphabetical order)
|
||||
FEATURES_PROVIDED += periph_cpuid
|
||||
FEATURES_PROVIDED += periph_gpio
|
||||
FEATURES_PROVIDED += periph_timer
|
||||
FEATURES_PROVIDED += periph_uart
|
||||
|
||||
# Various other features (if any)
|
||||
FEATURES_PROVIDED += cpp
|
||||
|
||||
# The board MPU family (used for grouping by the CI system)
|
||||
FEATURES_MCU_GROUP = cortex_m3_1
|
@ -0,0 +1,14 @@
|
||||
export CPU = cc26x0
|
||||
export CPU_MODEL = cc26x0f128
|
||||
|
||||
# set default port depending on operating system
|
||||
PORT_LINUX ?= /dev/ttyACM0
|
||||
PORT_DARWIN ?= $(firstword $(sort $(wildcard /dev/tty.SLAB_USBtoUART*)))
|
||||
|
||||
# setup serial terminal
|
||||
include $(RIOTBOARD)/Makefile.include.serial
|
||||
|
||||
# configure the flash tool
|
||||
export UNIFLASH_PATH ?= "UNIFLASH_PATH unconfigured"
|
||||
export FLASHER = $(UNIFLASH_PATH)/uniflash.sh
|
||||
export FFLAGS = -ccxml $(RIOTBOARD)/$(BOARD)/dist/cc26x0stk.ccxml -program $(ELFFILE)
|
@ -0,0 +1,32 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Leon George
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
/**
|
||||
* @ingroup boards_cc2650stk
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific implementations for the CC2650STK board
|
||||
*
|
||||
* @author Leon M. George <leon@georgemail.eu>
|
||||
*
|
||||
* @}
|
||||
*/
|
||||
|
||||
#include "cpu.h"
|
||||
#include "board.h"
|
||||
|
||||
/**
|
||||
* @brief initialise the board
|
||||
*/
|
||||
void board_init(void)
|
||||
{
|
||||
cpu_init();
|
||||
|
||||
gpio_init(LED0_PIN, GPIO_OUT);
|
||||
gpio_init(LED1_PIN, GPIO_OUT);
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="configuration_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS110 USB Debug Probe" href="connections/TIXDS110_Connection.xml" id="Texas Instruments XDS110 USB Debug Probe" xml="TIXDS110_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe">
|
||||
<instance XML_version="1.2" href="drivers/tixds510icepick_c.xml" id="drivers" xml="tixds510icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cs_dap.xml" id="drivers" xml="tixds510cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cortexM.xml" id="drivers" xml="tixds510cortexM.xml" xmlpath="drivers"/>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
<instance XML_version="1.2" desc="CC2650F128" href="devices/cc2650f128.xml" id="CC2650F128" xml="cc2650f128.xml" xmlpath="devices"/>
|
||||
</platform>
|
||||
</connection>
|
||||
</configuration>
|
||||
</configurations>
|
@ -0,0 +1,72 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Leon George
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @defgroup boards_cc2650stk CC2650STK
|
||||
* @ingroup boards
|
||||
* @brief SimpleLink™ CC2650 sensor tag
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board configuration for the CC2650STK
|
||||
*
|
||||
* @author Leon M. George <leon@georgemail.eu>
|
||||
*/
|
||||
|
||||
#ifndef BOARD_H_
|
||||
#define BOARD_H_
|
||||
|
||||
#include "periph/gpio.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Xtimer configuration
|
||||
* @{
|
||||
*/
|
||||
#define XTIMER_MASK (0xFFFF0000)
|
||||
#define XTIMER_SHIFT_ON_COMPARE (7)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief On-board button configuration
|
||||
* @{
|
||||
*/
|
||||
#define BUTTON1_DIO GPIO_PIN(0, 4)
|
||||
#define BUTTON2_DIO GPIO_PIN(0, 0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief Macros for controlling the on-board LEDs
|
||||
* @{
|
||||
*/
|
||||
#define LED0_PIN GPIO_PIN(0, 10)
|
||||
#define LED1_PIN GPIO_PIN(0, 15)
|
||||
|
||||
#define LED0_ON gpio_set(LED0_PIN)
|
||||
#define LED0_OFF gpio_clear(LED0_PIN)
|
||||
#define LED0_TOGGLE gpio_toggle(LED0_PIN)
|
||||
|
||||
#define LED1_ON gpio_set(LED1_PIN)
|
||||
#define LED1_OFF gpio_clear(LED1_PIN)
|
||||
#define LED1_TOGGLE gpio_toggle(LED1_PIN)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief Initialize board specific hardware, including clock, LEDs, and std-IO
|
||||
*/
|
||||
void board_init(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* BOARD_H_ */
|
||||
/** @} */
|
@ -0,0 +1,77 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Leon George
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_cc2650stk
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Peripheral MCU configuration for the CC2650STK board
|
||||
*
|
||||
* @author Leon M. George <leon@georgemail.eu>
|
||||
*/
|
||||
|
||||
#ifndef PERIPH_CONF_H_
|
||||
#define PERIPH_CONF_H_
|
||||
|
||||
#include "periph_cpu.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Clock configuration
|
||||
* @{
|
||||
*/
|
||||
/* the main clock is fixed to 48MHZ */
|
||||
#define CLOCK_CORECLOCK (48000000U)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief Timer configuration
|
||||
* @{
|
||||
*/
|
||||
static const timer_conf_t timer_config[] = {
|
||||
{
|
||||
.dev = GPT0,
|
||||
.num = 0
|
||||
},
|
||||
{
|
||||
.dev = GPT1,
|
||||
.num = 1
|
||||
}
|
||||
};
|
||||
|
||||
#define TIMER_0_ISR isr_timer0_chan0
|
||||
#define TIMER_1_ISR isr_timer1_chan0
|
||||
|
||||
#define TIMER_NUMOF (sizeof(timer_config) / sizeof(timer_config[0]))
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief UART configuration
|
||||
*
|
||||
* The used CC26x0 CPU only supports a single UART device, so all we need to
|
||||
* configure are the RX and TX pins.
|
||||
*
|
||||
* Optionally we can enable hardware flow control, by setting UART_HW_FLOW_CTRL
|
||||
* to 1 and defining pins for UART_CTS_PIN and UART_RTS_PIN.
|
||||
* @{
|
||||
*/
|
||||
#define UART_NUMOF (1)
|
||||
#define UART_RX_PIN (28)
|
||||
#define UART_TX_PIN (29)
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* PERIPH_CONF_H_ */
|
||||
/** @} */
|
Loading…
Reference in New Issue