boards: cc1352r1_launchxl: add support for TI CC1352R LaunchPad
The TI CC1352R LaunchPad (LAUNCHXL-CC1352R1) is a development kit that features the CC1352R SoC. Signed-off-by: Brett Witherspoon <spoonb@cdspooner.com>
This commit is contained in:
parent
39855a9c90
commit
f0dc2e433d
9 changed files with 297 additions and 0 deletions
9
boards/arm/cc1352r1_launchxl/Kconfig.board
Normal file
9
boards/arm/cc1352r1_launchxl/Kconfig.board
Normal file
|
@ -0,0 +1,9 @@
|
|||
# Kconfig - TI CC1352R LaunchXL board
|
||||
#
|
||||
# Copyright (c) 2019 Brett Witherspoon
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config BOARD_CC1352R1_LAUNCHXL
|
||||
bool "TI CC1352R1 LaunchXL"
|
||||
depends on SOC_CC1352R
|
12
boards/arm/cc1352r1_launchxl/Kconfig.defconfig
Normal file
12
boards/arm/cc1352r1_launchxl/Kconfig.defconfig
Normal file
|
@ -0,0 +1,12 @@
|
|||
# Kconfig - TI CC1352R LaunchXL board
|
||||
#
|
||||
# Copyright (c) 2019 Brett Witherspoon
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
if BOARD_CC1352R1_LAUNCHXL
|
||||
|
||||
config BOARD
|
||||
default "cc1352r1_launchxl"
|
||||
|
||||
endif # BOARD_CC1352R1_LAUNCHXL
|
5
boards/arm/cc1352r1_launchxl/board.cmake
Normal file
5
boards/arm/cc1352r1_launchxl/board.cmake
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Copyright (c) 2019 Brett Witherspoon
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
|
65
boards/arm/cc1352r1_launchxl/cc1352r1_launchxl.dts
Normal file
65
boards/arm/cc1352r1_launchxl/cc1352r1_launchxl.dts
Normal file
|
@ -0,0 +1,65 @@
|
|||
/*
|
||||
* Copyright (c) 2019 Brett Witherspoon
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <ti/cc1352r.dtsi>
|
||||
|
||||
#define BTN_GPIO_FLAGS (GPIO_INT_ACTIVE_LOW | GPIO_PUD_PULL_UP)
|
||||
|
||||
/ {
|
||||
model = "TI CC1352R1 LaunchXL";
|
||||
compatible = "ti,launchxl-cc1352r1";
|
||||
|
||||
aliases {
|
||||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
sw0 = &btn0;
|
||||
sw1 = &btn1;
|
||||
};
|
||||
|
||||
chosen {
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zephyr,console = &uart0;
|
||||
zephyr,shell-uart = &uart0;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
led0: led_0 {
|
||||
gpios = <&gpio0 7 0>;
|
||||
label = "Green LED";
|
||||
};
|
||||
led1: led_1 {
|
||||
gpios = <&gpio0 6 0>;
|
||||
label = "Red LED";
|
||||
};
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
btn0: btn_0 {
|
||||
gpios = <&gpio0 15 BTN_GPIO_FLAGS>;
|
||||
label = "Push button 1";
|
||||
};
|
||||
btn1: btn_1 {
|
||||
gpios = <&gpio0 14 BTN_GPIO_FLAGS>;
|
||||
label = "Push button 2";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
status = "ok";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
status = "ok";
|
||||
current-speed = <115200>;
|
||||
tx-pin = <13>;
|
||||
rx-pin = <12>;
|
||||
};
|
12
boards/arm/cc1352r1_launchxl/cc1352r1_launchxl.yaml
Normal file
12
boards/arm/cc1352r1_launchxl/cc1352r1_launchxl.yaml
Normal file
|
@ -0,0 +1,12 @@
|
|||
identifier: cc1352r1_launchxl
|
||||
name: TI SimpleLink CC1352R LaunchPad
|
||||
type: mcu
|
||||
arch: arm
|
||||
ram: 80
|
||||
flash: 352
|
||||
toolchain:
|
||||
- zephyr
|
||||
- gnuarmemb
|
||||
- xtools
|
||||
supported:
|
||||
- gpio
|
18
boards/arm/cc1352r1_launchxl/cc1352r1_launchxl_defconfig
Normal file
18
boards/arm/cc1352r1_launchxl/cc1352r1_launchxl_defconfig
Normal file
|
@ -0,0 +1,18 @@
|
|||
#
|
||||
# Copyright (c) 2019 Brett Witherspoon
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SOC_SERIES_CC13X2_CC26X2=y
|
||||
CONFIG_SOC_CC1352R=y
|
||||
CONFIG_CORTEX_M_SYSTICK=y
|
||||
CONFIG_BOARD_CC1352R1_LAUNCHXL=y
|
||||
|
||||
CONFIG_PINMUX=y
|
||||
CONFIG_GPIO=y
|
||||
CONFIG_SERIAL=y
|
||||
|
||||
CONFIG_CONSOLE=y
|
||||
CONFIG_UART_CONSOLE=y
|
BIN
boards/arm/cc1352r1_launchxl/doc/img/cc1352r1_launchxl.png
Normal file
BIN
boards/arm/cc1352r1_launchxl/doc/img/cc1352r1_launchxl.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 276 KiB |
175
boards/arm/cc1352r1_launchxl/doc/index.rst
Normal file
175
boards/arm/cc1352r1_launchxl/doc/index.rst
Normal file
|
@ -0,0 +1,175 @@
|
|||
.. _cc1352r1_launchxl:
|
||||
|
||||
CC1352R1 LaunchXL
|
||||
#################
|
||||
|
||||
Overview
|
||||
********
|
||||
|
||||
The Texas Instruments CC1352R LaunchPad |trade| (LAUNCHXL-CC1352R1) is a
|
||||
development kit for the SimpleLink |trade| multi-Standard CC1352R wireless MCU.
|
||||
|
||||
See the `TI CC1352R LaunchPad Product Page`_ for details.
|
||||
|
||||
.. figure:: img/cc1352r1_launchxl.png
|
||||
:width: 400px
|
||||
:align: center
|
||||
:alt: TI CC1352R LaunchPad
|
||||
|
||||
Texas Instruments CC1352R LaunchPad |trade|
|
||||
|
||||
Hardware
|
||||
********
|
||||
|
||||
The CC1352R LaunchPad |trade| development kit features the CC1352R wireless MCU.
|
||||
The board is equipped with two LEDs, two push buttons and BoosterPack connectors
|
||||
for expansion. It also includes an integrated (XDS110) debugger.
|
||||
|
||||
The CC13522 wireless MCU has a 48 MHz Arm |reg| Cortex |reg|-M4F SoC and an
|
||||
integrated Sub-1 and 2.4 GHz transceiver supporting multiple protocols including
|
||||
Bluetooth |reg| Low Energy and IEEE |reg| 802.15.4.
|
||||
|
||||
See the `TI CC1352R Product Page`_ for additional details.
|
||||
|
||||
Supported Features
|
||||
==================
|
||||
|
||||
The CC1352R LaunchPad board configuration supports the following hardware
|
||||
features:
|
||||
|
||||
+-----------+------------+----------------------+
|
||||
| Interface | Controller | Driver/Component |
|
||||
+===========+============+======================+
|
||||
| GPIO | on-chip | gpio |
|
||||
+-----------+------------+----------------------+
|
||||
| NVIC | on-chip | arch/arm |
|
||||
+-----------+------------+----------------------+
|
||||
| PINMUX | on-chip | pinmux |
|
||||
+-----------+------------+----------------------+
|
||||
| UART | on-chip | serial |
|
||||
+-----------+------------+----------------------+
|
||||
|
||||
Other hardware features are not supported by the Zephyr kernel.
|
||||
|
||||
Connections and IOs
|
||||
===================
|
||||
|
||||
All I/O signals are accessible from the BoosterPack connectors. Pin function
|
||||
aligns with the LaunchPad standard.
|
||||
|
||||
+-------+-----------+---------------------+
|
||||
| Pin | Function | Usage |
|
||||
+=======+===========+=====================+
|
||||
| DIO3 | GPIO | |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO4 | I2C_MSSCL | I2C SCL |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO5 | I2C_MSSDA | I2C SDA |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO6 | GPIO | Red LED |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO7 | GPIO | Green LED |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO8 | SSI0_RX | SPI MISO |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO9 | SSI0_TX | SPI MOSI |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO10 | SSI0_CLK | SPI CLK |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO11 | SSIO_CS | SPI CS |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO12 | UART0_RX | UART RXD |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO13 | UART0_TX | UART TXD |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO14 | GPIO | Button 2 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO15 | GPIO | Button 1 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO16 | | JTAG TDO |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO17 | | JTAG TDI |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO18 | UART0_RTS | UART RTS / JTAG SWO |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO19 | UART0_CTS | UART CTS |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO20 | GPIO | Flash CS |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO21 | GPIO | |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO22 | GPIO | |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO23 | AUX_IO | A0 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO24 | AUX_IO | A1 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO25 | AUX_IO | A2 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO26 | AUX_IO | A3 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO27 | AUX_IO | A4 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO28 | AUX_IO | A5 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO29 | AUX_IO | A6 |
|
||||
+-------+-----------+---------------------+
|
||||
| DIO30 | AUX_IO | A7 |
|
||||
+-------+-----------+---------------------+
|
||||
|
||||
Programming and Debugging
|
||||
*************************
|
||||
|
||||
Before flashing or debugging ensure the RESET, TMS, TCK, TDO, and TDI jumpers
|
||||
are in place. Also place jumpers on the the TXD and RXD signals for a serial
|
||||
console using the XDS110 application serial port.
|
||||
|
||||
Flashing
|
||||
========
|
||||
|
||||
Applications for the ``CC1352R LaunchPad`` board configuration can be built and
|
||||
flashed in the usual way (see :ref:`build_an_application` and
|
||||
:ref:`application_run` for more details).
|
||||
|
||||
Here is an example for the :ref:`hello_world` application.
|
||||
|
||||
First, run your favorite terminal program to listen for output.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ screen <tty_device> 115200
|
||||
|
||||
Replace :code:`<tty_device>` with the port where the XDS110 application
|
||||
serial device can be found. For example, :code:`/dev/ttyACM0`.
|
||||
|
||||
Then build and flash the application in the usual way.
|
||||
|
||||
.. zephyr-app-commands::
|
||||
:zephyr-app: samples/hello_world
|
||||
:board: cc1352r1_launchxl
|
||||
:goals: build flash
|
||||
|
||||
Debugging
|
||||
=========
|
||||
|
||||
You can debug an application in the usual way. Here is an example for the
|
||||
:ref:`hello_world` application.
|
||||
|
||||
.. zephyr-app-commands::
|
||||
:zephyr-app: samples/hello_world
|
||||
:board: cc1352r1_launchxl
|
||||
:maybe-skip-config:
|
||||
:goals: debug
|
||||
|
||||
|
||||
References
|
||||
**********
|
||||
|
||||
CC1352R1 LaunchPad Quick Start Guide:
|
||||
http://www.ti.com/lit/pdf/swru525
|
||||
|
||||
.. _TI CC1352R LaunchPad Product Page:
|
||||
http://www.ti.com/tool/launchxl-cc1352r1
|
||||
|
||||
.. _TI CC1352R Product Page:
|
||||
http://www.ti.com/product/cc1352r
|
1
boards/arm/cc1352r1_launchxl/support/openocd.cfg
Normal file
1
boards/arm/cc1352r1_launchxl/support/openocd.cfg
Normal file
|
@ -0,0 +1 @@
|
|||
source [find board/ti_cc13x2_launchpad.cfg]
|
Loading…
Add table
Add a link
Reference in a new issue