boards/u-blox/ubx_evkninab3/doc/index.html · boards/u-blox/ubx_evkninab3/doc/index.rst 공식 원문 ↗

Zephyr 3.7.0 · Boards · u-blox · NINA-B3

u-blox EVK-NINA-B3

NINA-B30x 기능, J1~J4 pin과 radio-sensitive UART 제한을 설명합니다.

Official pathboards/u-blox/ubx_evkninab3/doc/index.html
Source fileboards/u-blox/ubx_evkninab3/doc/index.rst
Source versionZephyr 3.7.0
TranslationFull · reviewed

본문 기준: Zephyr 3.7.0 LTS3 · 이후 유지보수 패치는 별도입니다.

Part 1

요약·해설

표 5개 47행, 공식 이미지와 UART1 전체 overlay를 보존했습니다.

CPU

nRF52840 M4F

Radio

BLE · 802.15.4

Arduino

J1~J4

Extra UART

UART1 overlay

Part 2

접을 수 있는 영어 원문 전체

영어 원문 전체 펼치기
원문 SHA-256 E824F574737FBF8B6E7D598E1ABD89C4428972A0A3BEB5E03491A09EFEDD3F2F
.. _ubx_ninab3_nrf52840:

u-blox EVK-NINA-B3
##################

Overview
********

The u-blox EVK-NINA-B30 Development Kit hardware provides support for the
u-blox NINA-B30x Bluetooth 5.0 module, based on the Nordic Semiconductor
nRF52840 ARM Cortex-M4F CPU and the following devices:

* :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 and 802.15.4)
* :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:: ../../../../../../../boards/u-blox/ubx_evkninab3/doc/img/EVK-NINA-B3.jpg
     :align: center
     :alt: EVK-NINA-B3

     EVK-NINA-B3 (Credit: u-blox AG)

More information about the EVK-NINA-B3 and the NINA-B30x modules
can be found at the `u-blox website`_.

Hardware
********

The NINA-B30x on the EVK-NINA-B30x contains an internal high-frequency
oscillator at 32MHz as well as a low frequency (slow) oscillator
of 32.768kHz.


Supported Features
==================

The ubx_evkninab3/nrf52840 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,           |
|           |            | IEEE 802.15.4        |
+-----------+------------+----------------------+
| 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 have not been enabled yet for this board.
See the `u-blox website`_ for a complete list of EVK-NINA-B30x
hardware features.

Connections and IOs
===================

LED
---

* LED0 (red) = P0.13
* LED1 (green) = P0.25
* LED2 (blue) = P1.00

Push buttons
------------

* BUTTON1 = SW1 = P0.25
* BUTTON2 = SW2 = P0.2
* BOOT = SW0 = boot/reset

External Connectors
-------------------

.. note::
	The pin numbers noted below are referenced to
	the pin 1 markings on the EVK-NINA-B30x
	for each header


Arduino Headers
---------------

Power (J1)

+-------+--------------+-------------------------+
| PIN # | Signal Name  | NINA-B30x Functions     |
+=======+==============+=========================+
| 1     | N/C          | N/A                     |
+-------+--------------+-------------------------+
| 2     | VDD_IO       | N/A                     |
+-------+--------------+-------------------------+
| 3     | RESET        | P0.18 / RESET           |
+-------+--------------+-------------------------+
| 4     | 3V3          | N/A                     |
+-------+--------------+-------------------------+
| 5     | 5V0          | N/A                     |
+-------+--------------+-------------------------+
| 6     | GND          | N/A                     |
+-------+--------------+-------------------------+
| 7     | GND          | N/A                     |
+-------+--------------+-------------------------+
| 8     | VIN          | N/A                     |
+-------+--------------+-------------------------+

Analog in (J2)

+-------+--------------+-------------------------+
| PIN # | Signal Name  | NINA-B30x Functions     |
+=======+==============+=========================+
| 1     | A0           | P0.04 / AIN2            |
+-------+--------------+-------------------------+
| 2     | A1           | P0.30 / AIN6            |
+-------+--------------+-------------------------+
| 3     | A2           | P0.05 / AIN3            |
+-------+--------------+-------------------------+
| 4     | A3           | P0.02 / AIN0            |
+-------+--------------+-------------------------+
| 5     | A4           | P0.28 / AIN4            |
+-------+--------------+-------------------------+
| 6     | A5           | P0.03 / AIN1            |
+-------+--------------+-------------------------+

Digital I/O (J3)

+-------+--------------+-------------------------+
| PIN # | Signal Name  | NINA-B30x Functions     |
+=======+==============+=========================+
| 8     | D7           | P0.10                   |
+-------+--------------+-------------------------+
| 7     | D6           | P0.09                   |
+-------+--------------+-------------------------+
| 6     | D5           | P0.11                   |
+-------+--------------+-------------------------+
| 5     | D4           | P0.13                   |
+-------+--------------+-------------------------+
| 4     | D3           | P0.31                   |
+-------+--------------+-------------------------+
| 3     | D2           | P1.12                   |
+-------+--------------+-------------------------+
| 2     | D1 (TX)      | P1.13                   |
+-------+--------------+-------------------------+
| 1     | D0 (RX)      | P0.29                   |
+-------+--------------+-------------------------+

Digital I/O (J4)

+-------+--------------+-------------------------+
| PIN # | Signal Name  | NINA-B30x Functions     |
+=======+==============+=========================+
| 10    | SCL          | P0.24                   |
+-------+--------------+-------------------------+
| 9     | SDA          | P0.16                   |
+-------+--------------+-------------------------+
| 8     | N/C          | N/A                     |
+-------+--------------+-------------------------+
| 7     | GND          | N/A                     |
+-------+--------------+-------------------------+
| 6     | D13 (SCK)    | P0.07                   |
+-------+--------------+-------------------------+
| 5     | D12 (MISO)   | P1.00                   |
+-------+--------------+-------------------------+
| 4     | D11 (MOSI)   | P0.15                   |
+-------+--------------+-------------------------+
| 3     | D10 (SS)     | P0.14                   |
+-------+--------------+-------------------------+
| 2     | D9           | P0.12                   |
+-------+--------------+-------------------------+
| 1     | D8           | P1.09                   |
+-------+--------------+-------------------------+


Programming and Debugging
*************************

Applications for the ``ubx_evkninab3/nrf52840`` 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
========

Follow the instructions in the :ref:`nordic_segger` page to install
and configure all the necessary software. Further information can be
found in :ref:`nordic_segger_flashing`. Then 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.

First, run your favorite terminal program to listen for output.

.. code-block:: console

   $ minicom -D <tty_device> -b 115200

Replace :code:`<tty_device>` with the port where the EVK-NINA-B30x
can be found. For example, under Linux, :code:`/dev/ttyACM0`.

Then build and flash the application in the usual way.

.. zephyr-app-commands::
   :zephyr-app: samples/hello_world
   :board: ubx_evkninab3/nrf52840
   :goals: build flash

Debugging
=========

Refer to the :ref:`nordic_segger` page to learn about debugging
u-blox boards with a Segger J-LINK-OB IC.


Testing the LEDs and buttons in the EVK-NINA-B30x
*************************************************

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/u-blox/ubx_evkninab3/ubx_evkninab3_nrf52840.dts`.

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:: devicetree

      &pinctrl {
         uart1_default: uart1_default {
            group1 {
               psels = <NRF_PSEL(UART_TX, 0, 14)>,
                       <NRF_PSEL(UART_RX, 0, 16)>;
            };
         };
         /* required if CONFIG_PM_DEVICE=y */
         uart1_sleep: uart1_sleep {
            group1 {
               psels = <NRF_PSEL(UART_TX, 0, 14)>,
                       <NRF_PSEL(UART_RX, 0, 16)>;
               low-power-enable;
            };
         };
      };

      &uart1 {
        compatible = "nordic,nrf-uarte";
        current-speed = <115200>;
        status = "okay";
        pinctrl-0 = <&uart1_default>;
        pinctrl-1 = <&uart1_sleep>;
        pinctrl-names = "default", "sleep";
      };

   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_DT_GET(DT_NODELABEL(uart1))``

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
==================

Pins can be configured in the board pinctrl file. To see the available mappings,
open the data sheet for the NINA-B3 at `u-blox website`_, 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.

.. note:
  Pins are defined according to the "nRF52" pin number, not the module pad number.

References
**********

.. target-notes::

.. _u-blox website: https://www.u-blox.com/en/product/nina-b3-series-open-cpu

Part 3

한국어 전문 번역

EVK-NINA-B3
EVK-NINA-B3 (Credit: u-blox AG)

개요

EVK-NINA-B30 development kit은 Nordic Semiconductor nRF52840 Arm Cortex-M4F 기반 NINA-B30x Bluetooth 5.0 module을 지원합니다. Bluetooth Low Energy·IEEE 802.15.4와 USB를 제공합니다.

하드웨어 clock

EVK-NINA-B30x의 NINA-B30x에는 32MHz high-frequency oscillator와 32.768kHz low-frequency oscillator가 내장됩니다.

지원 기능

InterfaceControllerDriver/Component
ADCon-chipadc
CLOCKon-chipclock_control
FLASHon-chipflash
GPIOon-chipgpio
I2C(M)on-chipi2c
MPUon-chiparch/arm
NVICon-chiparch/arm
PWMon-chippwm
RADIOon-chipBluetooth, IEEE 802.15.4
RTCon-chipsystem clock
RTTSeggerconsole
SPI(M/S)on-chipspi
UARTon-chipserial
USBon-chipusb
WDTon-chipwatchdog

표에 없는 기능은 아직 enable되지 않았습니다.

연결과 I/O

LED

  • LED0 red P0.13
  • LED1 green P0.25
  • LED2 blue P1.00

Push buttons

  • BUTTON1 SW1 P0.25
  • BUTTON2 SW2 P0.2
  • BOOT SW0 boot/reset

Pin 번호는 EVK-NINA-B30x 각 header의 pin 1 marking 기준입니다.

Power (J1)

PIN #Signal NameNINA-B30x Functions
1N/CN/A
2VDD_ION/A
3RESETP0.18 / RESET
43V3N/A
55V0N/A
6GNDN/A
7GNDN/A
8VINN/A

Analog in (J2)

PIN #Signal NameNINA-B30x Functions
1A0P0.04 / AIN2
2A1P0.30 / AIN6
3A2P0.05 / AIN3
4A3P0.02 / AIN0
5A4P0.28 / AIN4
6A5P0.03 / AIN1

Digital I/O (J3)

PIN #Signal NameNINA-B30x Functions
8D7P0.10
7D6P0.09
6D5P0.11
5D4P0.13
4D3P0.31
3D2P1.12
2D1 (TX)P1.13
1D0 (RX)P0.29

Digital I/O (J4)

PIN #Signal NameNINA-B30x Functions
10SCLP0.24
9SDAP0.16
8N/CN/A
7GNDN/A
6D13 (SCK)P0.07
5D12 (MISO)P1.00
4D11 (MOSI)P0.15
3D10 (SS)P0.14
2D9P0.12
1D8P1.09

Programming과 debugging

일반 방식으로 build·flash할 수 있지만 원문은 standard debugging target이 현재 제공되지 않는다고 명시합니다.

Flash

Terminal을 열고 Linux에서는 보통 /dev/ttyACM0에서 115200 baud로 출력합니다.

$ minicom -D <tty_device> -b 115200
west build -b ubx_evkninab3/nrf52840 samples/hello_world
west flash

Debug

Nordic Semiconductor chip과 Segger IC를 사용하는 board debug는 Zephyr Nordic Segger 안내를 따릅니다.

LED와 button 시험

samples/basic/blinky
samples/basic/button

Button과 LED 정의는 boards/u-blox/ubx_evkninab3/ubx_evkninab3_nrf52840.dts에 있습니다.

UART1 사용

Peripheral 연결에 UART가 하나 더 필요하면 application main directory에 overlay를 추가합니다. P0.16은 RX, P0.14는 TX이며 CONFIG_PM_DEVICE=y에서는 sleep pinctrl이 필요합니다.

&pinctrl {
   uart1_default: uart1_default {
      group1 {
         psels = <NRF_PSEL(UART_TX, 0, 14)>,
                 <NRF_PSEL(UART_RX, 0, 16)>;
      };
   };
   /* required if CONFIG_PM_DEVICE=y */
   uart1_sleep: uart1_sleep {
      group1 {
         psels = <NRF_PSEL(UART_TX, 0, 14)>,
                 <NRF_PSEL(UART_RX, 0, 16)>;
         low-power-enable;
      };
   };
};

&uart1 {
  compatible = "nordic,nrf-uarte";
  current-speed = <115200>;
  status = "okay";
  pinctrl-0 = <&uart1_default>;
  pinctrl-1 = <&uart1_sleep>;
  pinctrl-names = "default", "sleep";
};

DEVICE_DT_GET(DT_NODELABEL(uart1))로 UART1을 얻습니다. 자동 탐색하려면 <board>.overlay라는 이름으로 application main directory에 둡니다.

Pin 선택

NINA-B3 data sheet section 3의 pin definition에서 GPIO_xx로 표시된 pin을 선택합니다. Radio-sensitive 또는 low-frequency-only pin은 10kHz 미만에서만 사용해야 하므로 UART 115200에 적합하지 않습니다. Pin은 module pad 번호가 아니라 nRF52 pin 번호로 정의합니다.

참고 자료

NINA-B3 공식 제품 페이지

Source

출처

영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.