boards: arm: Add u-blox EVK-NINA-B4
Add support for u-blox EVK-NINA-B4, which uses the nRF52833 This board is similar to the nrf52833dk_nrf52833, though it uses a u-blox NINA-B40x openCPU module with DC-DC support included. Simplified pwm LED aliases Corrected LED assignments for red, green, and blue Addressed review comments (spi & gpio 0 0) Tested with blinky, button, and Bluetooth peripheral_hr Signed-off-by: Bob Recny <bob.recny@u-blox.com>
This commit is contained in:
parent
0d1577f7fe
commit
81f839b157
10 changed files with 560 additions and 1 deletions
10
boards/arm/ubx_evkninab4_nrf52833/Kconfig
Normal file
10
boards/arm/ubx_evkninab4_nrf52833/Kconfig
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
# NINA-B4 EVK board configuration
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 u-blox AG
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
config BOARD_ENABLE_DCDC
|
||||||
|
bool "Enable DCDC mode"
|
||||||
|
select SOC_DCDC_NRF52X
|
||||||
|
default y
|
||||||
|
depends on BOARD_UBX_EVKNINAB4_NRF52833
|
8
boards/arm/ubx_evkninab4_nrf52833/Kconfig.board
Normal file
8
boards/arm/ubx_evkninab4_nrf52833/Kconfig.board
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# NINA-B4 EVK board configuration
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 u-blox AG
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
config BOARD_UBX_EVKNINAB4_NRF52833
|
||||||
|
bool "u-blox EVK-NINA-B4"
|
||||||
|
depends on SOC_NRF52833_QIAA
|
24
boards/arm/ubx_evkninab4_nrf52833/Kconfig.defconfig
Normal file
24
boards/arm/ubx_evkninab4_nrf52833/Kconfig.defconfig
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
# EVK-NINA-B4 board configuration
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 u-blox AG
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
if BOARD_UBX_EVKNINAB4_NRF52833
|
||||||
|
|
||||||
|
config BOARD
|
||||||
|
default "ubx_evkninab4_nrf52833"
|
||||||
|
|
||||||
|
if USB
|
||||||
|
|
||||||
|
config USB_NRFX
|
||||||
|
default y
|
||||||
|
|
||||||
|
config USB_DEVICE_STACK
|
||||||
|
default y
|
||||||
|
|
||||||
|
endif # USB
|
||||||
|
|
||||||
|
config BT_CTLR
|
||||||
|
default BT
|
||||||
|
|
||||||
|
endif # BOARD_UBX_EVKNINAB4_NRF52833
|
12
boards/arm/ubx_evkninab4_nrf52833/board.cmake
Normal file
12
boards/arm/ubx_evkninab4_nrf52833/board.cmake
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
# NINA-B4 EVK board configuration
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 u-blox AG
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
board_runner_args(nrfjprog "--nrf-family=NRF52")
|
||||||
|
board_runner_args(jlink "--device=nrf52" "--speed=4000")
|
||||||
|
board_runner_args(pyocd "--target=nrf52833" "--frequency=4000000")
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/pyocd.board.cmake)
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/openocd-nrf5.board.cmake)
|
Binary file not shown.
After Width: | Height: | Size: 152 KiB |
224
boards/arm/ubx_evkninab4_nrf52833/doc/index.rst
Normal file
224
boards/arm/ubx_evkninab4_nrf52833/doc/index.rst
Normal file
|
@ -0,0 +1,224 @@
|
||||||
|
.. _ubx_ninab4_nrf52833:
|
||||||
|
|
||||||
|
u-blox EVK NINA-B40x
|
||||||
|
####################
|
||||||
|
|
||||||
|
Overview
|
||||||
|
********
|
||||||
|
|
||||||
|
The u-blox NINA-B4 Evaluation Kit hardware is a Bluetooth low energy
|
||||||
|
module based on the Nordic Semiconductor nRF52833 ARM Cortex-M4F CPU
|
||||||
|
and has support for the following features:
|
||||||
|
|
||||||
|
* :abbr:`ADC (Analog to Digital Converter)`
|
||||||
|
* CLOCK
|
||||||
|
* FLASH
|
||||||
|
* :abbr:`GPIO (General Purpose Input Output)`
|
||||||
|
* :abbr:`I2C (Inter-Integrated Circuit)`
|
||||||
|
* :abbr:`MPU (Memory Protection Unit)`
|
||||||
|
* :abbr:`NVIC (Nested Vectored Interrupt Controller)`
|
||||||
|
* :abbr:`PWM (Pulse Width Modulation)`
|
||||||
|
* RADIO (Bluetooth Low Energy)
|
||||||
|
* :abbr:`RTC (nRF RTC System Clock)`
|
||||||
|
* Segger RTT (RTT Console)
|
||||||
|
* :abbr:`SPI (Serial Peripheral Interface)`
|
||||||
|
* :abbr:`UART (Universal asynchronous receiver-transmitter)`
|
||||||
|
* :abbr:`USB (Universal Serial Bus)`
|
||||||
|
* :abbr:`WDT (Watchdog Timer)`
|
||||||
|
|
||||||
|
.. figure:: img/EVK-NINA-B406_Top_web.png
|
||||||
|
|
||||||
|
EVK NINA-B4
|
||||||
|
|
||||||
|
More information about the NINA-B4 module and the EVK-NINA-B4 can be
|
||||||
|
found at `NINA-B40 product page`_ and `EVK-NINA-B4 product page`_.
|
||||||
|
|
||||||
|
Supported Features
|
||||||
|
==================
|
||||||
|
|
||||||
|
The ubx_evkninab4_nrf52833 board configuration supports the following
|
||||||
|
hardware features:
|
||||||
|
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| Interface | Controller | Driver/Component |
|
||||||
|
+===========+============+======================+
|
||||||
|
| ADC | on-chip | adc |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| CLOCK | on-chip | clock_control |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| FLASH | on-chip | flash |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| GPIO | on-chip | gpio |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| I2C(M) | on-chip | i2c |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| MPU | on-chip | arch/arm |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| NVIC | on-chip | arch/arm |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| PWM | on-chip | pwm |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| RADIO | on-chip | Bluetooth low energy |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| RTC | on-chip | system clock |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| RTT | Segger | console |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| SPI(M/S) | on-chip | spi |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| UART | on-chip | serial |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| USB | on-chip | usb |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
| WDT | on-chip | watchdog |
|
||||||
|
+-----------+------------+----------------------+
|
||||||
|
|
||||||
|
Other hardware features are not supported by the Zephyr kernel.
|
||||||
|
See `EVK-NINA-B4 product page`_ and `NINA-B40 Data Sheet`_
|
||||||
|
for a complete list of EVK NINA-B4 hardware features.
|
||||||
|
|
||||||
|
Connections and IOs
|
||||||
|
===================
|
||||||
|
|
||||||
|
LED
|
||||||
|
---
|
||||||
|
|
||||||
|
* LED0 (red) = P0.13
|
||||||
|
* LED1 (green) = P1.01
|
||||||
|
* LED2 (blue) = P1.00
|
||||||
|
|
||||||
|
Push buttons
|
||||||
|
------------
|
||||||
|
|
||||||
|
* BUTTON1 = SW1 = P1.01 (Shared with green LED)
|
||||||
|
* BUTTON2 = SW2 = P0.02
|
||||||
|
|
||||||
|
General information on module pin numbering
|
||||||
|
-------------------------------------------
|
||||||
|
|
||||||
|
The numbering of the pins on the module and EVK do not follow the GPIO
|
||||||
|
numbering on the nRF52833 SoC. Please see the `NINA-B40 Data Sheet`_ for
|
||||||
|
information on how to map NINA-B40 pins to the pin numbering on the
|
||||||
|
nRF52833 SoC.
|
||||||
|
|
||||||
|
The reason for this is the u-blox module family concept where different
|
||||||
|
modules share the same pinout and can be interchanged, see
|
||||||
|
`NINA module family Nested design`_.
|
||||||
|
|
||||||
|
Programming and Debugging
|
||||||
|
*************************
|
||||||
|
|
||||||
|
Applications for the ``ubx_evkninab4_nrf52833`` board configuration can be
|
||||||
|
built and flashed in the usual way (see :ref:`build_an_application`
|
||||||
|
and :ref:`application_run` for more details); however, the standard
|
||||||
|
debugging targets are not currently available.
|
||||||
|
|
||||||
|
Flashing
|
||||||
|
========
|
||||||
|
|
||||||
|
Build and flash applications as usual (see
|
||||||
|
:ref:`build_an_application` and :ref:`application_run` for more details)
|
||||||
|
|
||||||
|
Here is an example for the :ref:`hello_world` application.
|
||||||
|
|
||||||
|
Open a terminal program to the USB Serial Port installed when connecting
|
||||||
|
the board and listen for output.
|
||||||
|
|
||||||
|
Settings: 115200, 8N1, no flow control.
|
||||||
|
|
||||||
|
Then build and flash the application in the usual way.
|
||||||
|
|
||||||
|
.. zephyr-app-commands::
|
||||||
|
:zephyr-app: samples/hello_world
|
||||||
|
:board: ubx_evknina4_nrf52833
|
||||||
|
:goals: build flash
|
||||||
|
|
||||||
|
Debugging
|
||||||
|
=========
|
||||||
|
|
||||||
|
Refer to the :ref:`nordic_segger` page to learn about debugging boards
|
||||||
|
containing a Nordic Semiconductor chip with a Segger IC.
|
||||||
|
|
||||||
|
|
||||||
|
Testing the LEDs and buttons in the EVK NINA-B40x
|
||||||
|
*************************************************
|
||||||
|
|
||||||
|
There are 2 samples that allow you to test that the buttons (switches)
|
||||||
|
and LEDs on the board are working properly with Zephyr:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
samples/basic/blinky
|
||||||
|
samples/basic/button
|
||||||
|
|
||||||
|
You can build and flash the examples to make sure Zephyr is running
|
||||||
|
correctly on your board. The button and LED definitions can be found in
|
||||||
|
:zephyr_file:`boards/arm/ubx_evkninab4_nrf52833/ubx_evkninab4_nrf52833.dts`.
|
||||||
|
|
||||||
|
Note that the buttons on the EVK-NINA-B4 are marked SW1 and SW2, which
|
||||||
|
are named sw0 and sw1 in the dts file.
|
||||||
|
Also note that the SW1 button and the green LED are connected on HW level.
|
||||||
|
|
||||||
|
Using UART1
|
||||||
|
***********
|
||||||
|
|
||||||
|
The following approach can be used when an application needs to use
|
||||||
|
more than one UART for connecting peripheral devices:
|
||||||
|
|
||||||
|
1. Add device tree overlay file to the main directory of your application:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
$ cat ubx_evk_ninab4nrf52833.overlay
|
||||||
|
&uart1 {
|
||||||
|
compatible = "nordic,nrf-uarte";
|
||||||
|
current-speed = <115200>;
|
||||||
|
status = "okay";
|
||||||
|
tx-pin = <14>;
|
||||||
|
rx-pin = <16>;
|
||||||
|
};
|
||||||
|
|
||||||
|
In the overlay file above, pin P0.16 is used for RX and P0.14 is used for TX
|
||||||
|
|
||||||
|
2. Use the UART1 as ``device_get_binding("UART_1")``
|
||||||
|
|
||||||
|
Overlay file naming
|
||||||
|
===================
|
||||||
|
|
||||||
|
The file has to be named ``<board>.overlay`` and placed in the app main directory to be
|
||||||
|
picked up automatically by the device tree compiler.
|
||||||
|
|
||||||
|
Selecting the pins
|
||||||
|
==================
|
||||||
|
To select the pin numbers for tx-pin and rx-pin:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
tx-pin = <pin_no>
|
||||||
|
|
||||||
|
Open the data sheet for the NINA-B4 at `NINA-B40 Data Sheet`_, Section 3 'Pin definition'.
|
||||||
|
In the table 7 select the pins marked 'GPIO_xx'. Note that pins marked as 'Radio sensitive pin'
|
||||||
|
can only be used in under-10KHz applications. They are not suitable for 115200 speed of UART.
|
||||||
|
|
||||||
|
Translate 'Pin' into number for Device tree by using the following formula::
|
||||||
|
|
||||||
|
pin_no = b\*32 + a
|
||||||
|
|
||||||
|
where ``a`` and ``b`` are from the Pin value in the table (Pb.a).
|
||||||
|
For example, for P0.1, ``pin_no = 1`` and for P1.0, ``pin_no = 32``.
|
||||||
|
|
||||||
|
.. note:
|
||||||
|
Pins are defined according to the "nRF52" pin number, not the module pad number.
|
||||||
|
|
||||||
|
|
||||||
|
References
|
||||||
|
**********
|
||||||
|
|
||||||
|
.. target-notes::
|
||||||
|
|
||||||
|
.. _NINA-B40 product page: https://www.u-blox.com/en/product/nina-b40-series-open-cpu
|
||||||
|
.. _EVK-NINA-B4 product page: https://www.u-blox.com/en/product/evk-nina-b4
|
||||||
|
.. _Nordic Semiconductor Infocenter: https://infocenter.nordicsemi.com
|
||||||
|
.. _J-Link Software and documentation pack: https://www.segger.com/jlink-software.html
|
||||||
|
.. _NINA-B40 Data Sheet: https://www.u-blox.com/en/docs/UBX-19049405
|
||||||
|
.. _NINA module family Nested design: https://www.u-blox.com/en/docs/UBX-17065600
|
230
boards/arm/ubx_evkninab4_nrf52833/ubx_evkninab4_nrf52833.dts
Normal file
230
boards/arm/ubx_evkninab4_nrf52833/ubx_evkninab4_nrf52833.dts
Normal file
|
@ -0,0 +1,230 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020 u-blox AG
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
#include <nordic/nrf52833_qiaa.dtsi>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "u-blox EVK-NINA-B4 NRF52833";
|
||||||
|
compatible = "u-blox,ubx_evkninab4_nrf52833";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
zephyr,console = &uart0;
|
||||||
|
zephyr,shell-uart = &uart0;
|
||||||
|
zephyr,uart-mcumgr = &uart0;
|
||||||
|
zephyr,bt-mon-uart = &uart0;
|
||||||
|
zephyr,bt-c2h-uart = &uart0;
|
||||||
|
zephyr,sram = &sram0;
|
||||||
|
zephyr,flash = &flash0;
|
||||||
|
zephyr,code-partition = &slot0_partition;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
led0: led_0 {
|
||||||
|
/* NINA-B1 GPIO_1 */
|
||||||
|
gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
|
||||||
|
label = "Red LED";
|
||||||
|
};
|
||||||
|
led1: led_1 {
|
||||||
|
/* NINA-B4 GPIO_7 */
|
||||||
|
gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
|
||||||
|
label = "Green LED";
|
||||||
|
};
|
||||||
|
led2: led_2 {
|
||||||
|
/*NINA-B1 GPIO_8 */
|
||||||
|
gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
|
||||||
|
label = "Blue LED";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pwmleds {
|
||||||
|
compatible = "pwm-leds";
|
||||||
|
red_pwm_led: red_pwm_led {
|
||||||
|
pwms = <&pwm0 13>;
|
||||||
|
};
|
||||||
|
green_pwm_led: green_pwm_led {
|
||||||
|
pwms = <&pwm0 33>;
|
||||||
|
};
|
||||||
|
blue_pwm_led: blue_pwm_led {
|
||||||
|
pwms = <&pwm0 32>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
buttons {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
button0: button_0 {
|
||||||
|
/* EVK-NINA-B4 SW1 button */
|
||||||
|
gpios = <&gpio1 1 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
|
||||||
|
label = "Push button switch 0";
|
||||||
|
};
|
||||||
|
button1: button_1 {
|
||||||
|
/* EVK-NINA-B4 SW2 button */
|
||||||
|
gpios = <&gpio0 2 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
|
||||||
|
label = "Push button switch 1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
arduino_header: connector {
|
||||||
|
compatible = "arduino-header-r3";
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||||
|
gpio-map-pass-thru = <0 0x3f>;
|
||||||
|
gpio-map = <0 0 &gpio0 4 0>, /* A0 */
|
||||||
|
<1 0 &gpio0 30 0>, /* A1 */
|
||||||
|
<2 0 &gpio0 5 0>, /* A2 */
|
||||||
|
<3 0 &gpio0 2 0>, /* A3 */
|
||||||
|
<4 0 &gpio0 28 0>, /* A4 */
|
||||||
|
<5 0 &gpio0 3 0>, /* A5 */
|
||||||
|
<6 0 &gpio0 29 0>, /* D0 */
|
||||||
|
<7 0 &gpio1 5 0>, /* D1 */
|
||||||
|
<8 0 &gpio0 23 0>, /* D2 */
|
||||||
|
<9 0 &gpio0 31 0>, /* D3 */
|
||||||
|
<10 0 &gpio0 13 0>, /* D4 */
|
||||||
|
<11 0 &gpio0 11 0>, /* D5 */
|
||||||
|
<12 0 &gpio0 9 0>, /* D6 */ /* NFC use by default */
|
||||||
|
<13 0 &gpio0 10 0>, /* D7 */ /* NFC use by default */
|
||||||
|
<14 0 &gpio1 9 0>, /* D8 */
|
||||||
|
<15 0 &gpio0 12 0>, /* D9 */
|
||||||
|
<16 0 &gpio0 0 0>, /* D10 */ /* Disconnected, see EVK User Guide */
|
||||||
|
<17 0 &gpio0 1 0>, /* D11 */ /* Disconnected, see EVK User Guide */
|
||||||
|
<18 0 &gpio1 0 0>, /* D12 */
|
||||||
|
<19 0 &gpio0 7 0>, /* D13 */
|
||||||
|
<20 0 &gpio0 16 0>, /* D14 */ /* SDA */
|
||||||
|
<21 0 &gpio0 17 0>; /* D15 */ /* SCL */
|
||||||
|
};
|
||||||
|
|
||||||
|
arduino_adc: analog-connector {
|
||||||
|
compatible = "arduino,uno-adc";
|
||||||
|
#io-channel-cells = <1>;
|
||||||
|
io-channel-map = <0 &adc 2>, /* A0 = P0.04 = AIN2 */
|
||||||
|
<1 &adc 6>, /* A1 = P0.30 = AIN6 */
|
||||||
|
<2 &adc 3>, /* A2 = P0.5 = AIN3 */
|
||||||
|
<3 &adc 0>, /* A3 = P0.2 = AIN0 */
|
||||||
|
<4 &adc 4>, /* A4 = P0.28 = AIN4 */
|
||||||
|
<5 &adc 1>; /* A5 = P0.3 = AIN1 */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* These aliases are provided for compatibility with samples */
|
||||||
|
aliases {
|
||||||
|
led0 = &led0;
|
||||||
|
led1 = &led1;
|
||||||
|
led2 = &led2;
|
||||||
|
pwm-led0 = &red_pwm_led;
|
||||||
|
pwm-led1 = &green_pwm_led;
|
||||||
|
pwm-led2 = &blue_pwm_led;
|
||||||
|
red-pwm-led = &red_pwm_led;
|
||||||
|
green-pwm-led = &green_pwm_led;
|
||||||
|
blue-pwm-led = &blue_pwm_led;
|
||||||
|
sw0 = &button0;
|
||||||
|
sw1 = &button1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&adc {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpiote {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
compatible = "nordic,nrf-uart";
|
||||||
|
status = "okay";
|
||||||
|
current-speed = <115200>;
|
||||||
|
tx-pin = <37>; /* P1.05 */
|
||||||
|
rx-pin = <29>;
|
||||||
|
rts-pin = <31>;
|
||||||
|
cts-pin = <23>;
|
||||||
|
};
|
||||||
|
|
||||||
|
arduino_i2c: &i2c0 {
|
||||||
|
compatible = "nordic,nrf-twi";
|
||||||
|
status = "okay";
|
||||||
|
sda-pin = <16>;
|
||||||
|
scl-pin = <17>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi0 {
|
||||||
|
compatible = "nordic,nrf-spi";
|
||||||
|
/* Cannot be used together with i2c0. */
|
||||||
|
/* status = "okay"; */
|
||||||
|
sck-pin = <7>;
|
||||||
|
mosi-pin = <32>;
|
||||||
|
miso-pin = <15>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi1 {
|
||||||
|
compatible = "nordic,nrf-spi";
|
||||||
|
status = "okay";
|
||||||
|
sck-pin = <3>;
|
||||||
|
mosi-pin = <28>;
|
||||||
|
miso-pin = <9>;
|
||||||
|
};
|
||||||
|
|
||||||
|
arduino_spi: &spi2 {
|
||||||
|
compatible = "nordic,nrf-spim";
|
||||||
|
status = "okay";
|
||||||
|
sck-pin = <7>; /* D13 */
|
||||||
|
mosi-pin = <1>; /* D11 */
|
||||||
|
miso-pin = <32>; /* D12 */
|
||||||
|
cs-gpios = <&arduino_header 0 GPIO_ACTIVE_LOW>; /* D10 */
|
||||||
|
};
|
||||||
|
|
||||||
|
&pwm0 {
|
||||||
|
status = "okay";
|
||||||
|
ch0-pin = <13>;
|
||||||
|
ch0-inverted;
|
||||||
|
status = "okay";
|
||||||
|
ch1-pin = <33>;
|
||||||
|
ch1-inverted;
|
||||||
|
status = "okay";
|
||||||
|
ch2-pin = <32>;
|
||||||
|
ch2-inverted;
|
||||||
|
};
|
||||||
|
|
||||||
|
&flash0 {
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
boot_partition: partition@0 {
|
||||||
|
label = "mcuboot";
|
||||||
|
reg = <0x00000000 0xC000>;
|
||||||
|
};
|
||||||
|
slot0_partition: partition@c000 {
|
||||||
|
label = "image-0";
|
||||||
|
reg = <0x0000C000 0x32000>;
|
||||||
|
};
|
||||||
|
slot1_partition: partition@3e000 {
|
||||||
|
label = "image-1";
|
||||||
|
reg = <0x0003E000 0x32000>;
|
||||||
|
};
|
||||||
|
scratch_partition: partition@70000 {
|
||||||
|
label = "image-scratch";
|
||||||
|
reg = <0x00070000 0xA000>;
|
||||||
|
};
|
||||||
|
storage_partition: partition@7a000 {
|
||||||
|
label = "storage";
|
||||||
|
reg = <0x0007A000 0x00006000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbd {
|
||||||
|
compatible = "nordic,nrf-usbd";
|
||||||
|
status = "okay";
|
||||||
|
};
|
|
@ -0,0 +1,20 @@
|
||||||
|
identifier: ubx_evkninab4_nrf52833
|
||||||
|
name: EVK-NINA-B4-NRF52833
|
||||||
|
type: mcu
|
||||||
|
arch: arm
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
supported:
|
||||||
|
- adc
|
||||||
|
- arduino_gpio
|
||||||
|
- arduino_i2c
|
||||||
|
- arduino_spi
|
||||||
|
- usb_device
|
||||||
|
- ble
|
||||||
|
- gpio
|
||||||
|
- ieee802154
|
||||||
|
- pwm
|
||||||
|
- watchdog
|
||||||
|
- counter
|
|
@ -0,0 +1,30 @@
|
||||||
|
# NINA-B4 EVK board configuration
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 u-blox AG
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52833_QIAA=y
|
||||||
|
CONFIG_BOARD_UBX_EVKNINAB4_NRF52833=y
|
||||||
|
|
||||||
|
# Enable MPU
|
||||||
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
|
# Enable hardware stack protection
|
||||||
|
CONFIG_HW_STACK_PROTECTION=y
|
||||||
|
|
||||||
|
# Enable RTT
|
||||||
|
CONFIG_USE_SEGGER_RTT=y
|
||||||
|
|
||||||
|
# enable GPIO
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
|
||||||
|
# enable uart driver
|
||||||
|
CONFIG_SERIAL=y
|
||||||
|
|
||||||
|
# enable console
|
||||||
|
CONFIG_CONSOLE=y
|
||||||
|
CONFIG_UART_CONSOLE=y
|
||||||
|
|
||||||
|
# additional board options
|
||||||
|
CONFIG_GPIO_AS_PINRESET=y
|
|
@ -58,7 +58,8 @@
|
||||||
defined(CONFIG_BOARD_UBX_BMD380EVAL_NRF52840) || \
|
defined(CONFIG_BOARD_UBX_BMD380EVAL_NRF52840) || \
|
||||||
defined(CONFIG_BOARD_UBX_EVKANNAB1_NRF52832) || \
|
defined(CONFIG_BOARD_UBX_EVKANNAB1_NRF52832) || \
|
||||||
defined(CONFIG_BOARD_UBX_EVKNINAB1_NRF52832) || \
|
defined(CONFIG_BOARD_UBX_EVKNINAB1_NRF52832) || \
|
||||||
defined(CONFIG_BOARD_UBX_EVKNINAB3_NRF52840)
|
defined(CONFIG_BOARD_UBX_EVKNINAB3_NRF52840) || \
|
||||||
|
defined(CONFIG_BOARD_UBX_EVKNINAB4_NRF52833)
|
||||||
|
|
||||||
#include <hal/nrf_saadc.h>
|
#include <hal/nrf_saadc.h>
|
||||||
#define ADC_DEVICE_NAME DT_LABEL(DT_INST(0, nordic_nrf_saadc))
|
#define ADC_DEVICE_NAME DT_LABEL(DT_INST(0, nordic_nrf_saadc))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue