| <!-- |
| Documentation/_templates/layout.html |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. The |
| ASF licenses this file to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance with the |
| License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| License for the specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| |
| |
| <!DOCTYPE html> |
| <html class="writer-html5" lang="en"> |
| <head> |
| <meta charset="utf-8" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" /> |
| |
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| <title>Nordic nRF53 — NuttX latest documentation</title> |
| <link rel="stylesheet" type="text/css" href="../../../_static/pygments.css" /> |
| <link rel="stylesheet" type="text/css" href="../../../_static/css/theme.css" /> |
| <link rel="stylesheet" type="text/css" href="../../../_static/copybutton.css" /> |
| <link rel="stylesheet" type="text/css" href="../../../_static/sphinx_collapse.css" /> |
| <link rel="stylesheet" type="text/css" href="../../../_static/design-style.1e8bd061cd6da7fc9cf755528e8ffc24.min.css" /> |
| <link rel="stylesheet" type="text/css" href="../../../_static/custom.css" /> |
| |
| |
| <link rel="shortcut icon" href="../../../_static/favicon.ico"/> |
| <script src="../../../_static/jquery.js"></script> |
| <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script> |
| <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script> |
| <script src="../../../_static/doctools.js"></script> |
| <script src="../../../_static/sphinx_highlight.js"></script> |
| <script src="../../../_static/clipboard.min.js"></script> |
| <script src="../../../_static/copybutton.js"></script> |
| <script src="../../../_static/design-tabs.js"></script> |
| <script src="../../../_static/js/theme.js"></script> |
| <link rel="index" title="Index" href="../../../genindex.html" /> |
| <link rel="search" title="Search" href="../../../search.html" /> |
| <link rel="next" title="Nordic nRF5340-Audio-DK" href="boards/nrf5340-audio-dk/index.html" /> |
| <link rel="prev" title="Seeed Studio XIAO nRF52840" href="../nrf52/boards/xiao-nrf52840/index.html" /> |
| </head> |
| |
| <body class="wy-body-for-nav"> |
| <div class="wy-grid-for-nav"> |
| <nav data-toggle="wy-nav-shift" class="wy-nav-side"> |
| <div class="wy-side-scroll"> |
| <div class="wy-side-nav-search" > |
| |
| <a href="../../../index.html" class="icon icon-home"> NuttX |
| |
| |
| |
| </a> |
| |
| <!-- this version selector is quite ugly, should be probably replaced by something |
| more modern --> |
| |
| <div class="version-selector"> |
| <select onchange="javascript:location.href = this.value;"> |
| |
| <option value="../../../../latest" selected="selected">latest</option> |
| |
| <option value="../../../../10.0.0" >10.0.0</option> |
| |
| <option value="../../../../10.0.1" >10.0.1</option> |
| |
| <option value="../../../../10.1.0" >10.1.0</option> |
| |
| <option value="../../../../10.2.0" >10.2.0</option> |
| |
| <option value="../../../../10.3.0" >10.3.0</option> |
| |
| <option value="../../../../11.0.0" >11.0.0</option> |
| |
| <option value="../../../../12.0.0" >12.0.0</option> |
| |
| <option value="../../../../12.1.0" >12.1.0</option> |
| |
| <option value="../../../../12.2.0" >12.2.0</option> |
| |
| <option value="../../../../12.2.1" >12.2.1</option> |
| |
| <option value="../../../../12.3.0" >12.3.0</option> |
| |
| <option value="../../../../12.4.0" >12.4.0</option> |
| |
| <option value="../../../../12.5.0" >12.5.0</option> |
| |
| <option value="../../../../12.5.1" >12.5.1</option> |
| |
| <option value="../../../../12.6.0" >12.6.0</option> |
| |
| <option value="../../../../12.7.0" >12.7.0</option> |
| |
| <option value="../../../../12.8.0" >12.8.0</option> |
| |
| <option value="../../../../12.9.0" >12.9.0</option> |
| |
| <option value="../../../../12.10.0" >12.10.0</option> |
| |
| <option value="../../../../12.11.0" >12.11.0</option> |
| |
| </select> |
| </div> |
| |
| |
| <div role="search"> |
| <form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get"> |
| <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" /> |
| <input type="hidden" name="check_keywords" value="yes" /> |
| <input type="hidden" name="area" value="default" /> |
| </form> |
| </div> |
| |
| </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> |
| <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p> |
| <ul class="current"> |
| <li class="toctree-l1"><a class="reference internal" href="../../../index.html">Home</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../introduction/index.html">Introduction</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../quickstart/index.html">Getting Started</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../contributing/index.html">Contributing</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../introduction/inviolables.html">The Inviolable Principles of NuttX</a></li> |
| <li class="toctree-l1 current"><a class="reference internal" href="../../index.html">Supported Platforms</a><ul class="current"> |
| <li class="toctree-l2 current"><a class="reference internal" href="../index.html">ARM</a><ul class="current"> |
| <li class="toctree-l3"><a class="reference internal" href="../a1x/index.html">Allwinner A10</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../am335x/index.html">TI/Sitara AM335x</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../at32/index.html">Artery AT32</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../bcm2708/index.html">Broadcom BCM2708 (removed)</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../c5471/index.html">TI TMS320-C5471</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../cxd56xx/index.html">Sony CXD56xx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../dm320/index.html">TI TMS320-DM320</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../efm32/index.html">SiLabs EFM32</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../eoss3/index.html">EOSS3</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../fvp-v8r-aarch32/index.html">FVP ARMv8-R Virt Chip</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../gd32f4/index.html">GD32F4</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../goldfish/goldfish_timer.html">GOLDFISH TIMER</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../goldfish/index.html">GOLDFISH</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../imx1/index.html">NXP/Freescale i.MX1</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../imx6/index.html">NXP/Freescale i.MX6</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../imx9/index.html">NXP i.MX9</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../imxrt/index.html">NXP i.MX RT</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../kinetis/index.html">NXP/FreeScale Kinetis</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../kl/index.html">NXP/FreeScale KLxx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lc823450/index.html">ON Semiconductor LC823450</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lpc17xx/index.html">NXP LPC17xx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lpc214x/index.html">NXP LPC214x</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lpc2378/index.html">NXP LPC2378</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lpc31xx/index.html">NXP LPC31xx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lpc40xx/index.html">NXP LPC40xx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lpc43xx/index.html">NXP LPC43xx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../lpc54xx/index.html">NXP LPC54xx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../max326xx/index.html">Maxim Integrated MAX32660</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../moxart/index.html">Moxa NP51x0</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../mps/index.html">MPS</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../nrf52/ieee802154.html">Nordic nRF52 IEEE 802.15.4</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../nrf52/index.html">Nordic nRF52</a></li> |
| <li class="toctree-l3 current"><a class="current reference internal" href="#">Nordic nRF53</a><ul> |
| <li class="toctree-l4"><a class="reference internal" href="#peripheral-support">Peripheral Support</a><ul> |
| <li class="toctree-l5"><a class="reference internal" href="#gpio-gpiote">GPIO/GPIOTE</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#adc">ADC</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#i2c">I2C</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#spi">SPI</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#uart">UART</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#pwm">PWM</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#qspi">QSPI</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#timer">TIMER</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#rtc">RTC</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#usbd">USBD</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l4"><a class="reference internal" href="#interprocessor-communication">Interprocessor Communication</a></li> |
| <li class="toctree-l4"><a class="reference internal" href="#ble-support">BLE Support</a></li> |
| <li class="toctree-l4"><a class="reference internal" href="#tool-issues">Tool Issues</a><ul> |
| <li class="toctree-l5"><a class="reference internal" href="#openocd">OpenOCD</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#segger-j-link">Segger J-Link</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="#flashing-locked-device">Flashing locked device</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l4"><a class="reference internal" href="#supported-boards">Supported Boards</a><ul> |
| <li class="toctree-l5"><a class="reference internal" href="boards/nrf5340-audio-dk/index.html">Nordic nRF5340-Audio-DK</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="boards/nrf5340-dk/index.html">Nordic nRF5340 DK</a></li> |
| <li class="toctree-l5"><a class="reference internal" href="boards/thingy53/index.html">Nordic Thingy:53</a></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| <li class="toctree-l3"><a class="reference internal" href="../nrf91/index.html">Nordic nRF91</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../nuc1xx/index.html">nuvoTon NUC120</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../phy62xx/index.html">PHY+ PHY62</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../qemu/index.html">QEMU</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../ra4m1/index.html">Renesas RA4M1</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../rp2040/index.html">Raspberry Pi rp2040</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../rp23xx/index.html">Raspberry Pi rp2350</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../s32k1xx/index.html">NXP S32K1XX</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../s32k3xx/index.html">NXP S32K3XX</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../sam34/index.html">Microchip SAM34</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../sama5/index.html">Microchip SAMA5</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../samd2l2/index.html">Microchip SAMD2x</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../samd5e5/index.html">Microchip samd5e5</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../samv7/index.html">Microchip SAM V7</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32c0/index.html">ST STM32C0</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32f0/index.html">ST STM32F0</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32f1/index.html">ST STM32F1</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32f2/index.html">ST STM32F2</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32f3/index.html">ST STM32F3</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32f4/index.html">ST STM32F4</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32f7/index.html">ST STM32F7</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32g0/index.html">ST STM32G0</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32g4/index.html">ST STM32G4</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32h5/index.html">ST STM32H5</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32h7/index.html">ST STM32H7</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32l0/index.html">ST STM32L0</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32l1/index.html">ST STM32L1</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32l4/index.html">ST STM32L4</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32l5/index.html">ST STM32L5</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32u5/index.html">ST STM32U5</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32wb/index.html">ST STM32WB</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../stm32wl5/index.html">ST STM32WL5</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../str71x/index.html">ST STR71</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../tiva/index.html">TI/Stellaris Tiva</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../tms570/index.html">TI/Hercules TMS570xxx</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="../xmc4/index.html">Infineon XMC4000</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="../../arm64/index.html">ARM64</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../avr/index.html">Microchip AVR</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../ceva/index.html">CEVA</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../hc/index.html">HC</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../mips/index.html">MIPS</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../misco/index.html">Misoc</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../or1k/index.html">OpenRISC</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../renesas/index.html">Renesas</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../risc-v/index.html">RISC-V</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../sim/network_linux.html">Network Support on Linux</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../sim/network_vpnkit.html">Network support with VPNKit</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../sparc/index.html">SPARC</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../tricore/index.html">TriCore</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../x86/index.html">Intel 80x86</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../x86_64/index.html">Intel 80x86_64</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../xtensa/index.html">Xtensa</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../z16/index.html">Z16</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="../../z80/index.html">Z80</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../components/index.html">OS Components</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../applications/index.html">Applications</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../implementation/index.html">Implementation Details</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../reference/index.html">API Reference</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../faq/index.html">FAQ</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../debugging/index.html">Debugging</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../guides/index.html">Guides</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../standards/index.html">Standards</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../glossary.html">Glossary</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../logos/index.html">NuttX Logos</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../../../_tags/tagsindex.html">Tags</a></li> |
| </ul> |
| |
| </div> |
| </div> |
| </nav> |
| |
| <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" > |
| <i data-toggle="wy-nav-top" class="fa fa-bars"></i> |
| <a href="../../../index.html">NuttX</a> |
| </nav> |
| |
| <div class="wy-nav-content"> |
| <div class="rst-content"> |
| <div role="navigation" aria-label="Page navigation"> |
| <ul class="wy-breadcrumbs"> |
| <li><a href="../../../index.html" class="icon icon-home" aria-label="Home"></a></li> |
| <li class="breadcrumb-item"><a href="../../index.html">Supported Platforms</a></li> |
| <li class="breadcrumb-item"><a href="../index.html">ARM</a></li> |
| <li class="breadcrumb-item active">Nordic nRF53</li> |
| <li class="wy-breadcrumbs-aside"> |
| <a href="https://github.com/apache/nuttx/blob/master/Documentation/platforms/arm/nrf53/index.rst" class="fa fa-github"> Edit on GitHub</a> |
| </li> |
| </ul> |
| <hr/> |
| </div> |
| <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> |
| <div itemprop="articleBody"> |
| |
| <section id="nordic-nrf53"> |
| <h1>Nordic nRF53<a class="headerlink" href="#nordic-nrf53" title="Permalink to this heading"></a></h1> |
| <p>The nRF53 series of chips from Nordic Semiconductor are based around an two ARM Cortex-M33 cores |
| and a multiprotocol 2.4 GHz transceiver.</p> |
| <section id="peripheral-support"> |
| <h2>Peripheral Support<a class="headerlink" href="#peripheral-support" title="Permalink to this heading"></a></h2> |
| <p>The following list indicates peripherals supported in NuttX:</p> |
| <table class="docutils align-default"> |
| <thead> |
| <tr class="row-odd"><th class="head"><p>Peripheral</p></th> |
| <th class="head"><p>Support</p></th> |
| <th class="head"><p>Notes</p></th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr class="row-even"><td><p>GPIO</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>GPIOTE</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>I2S</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>MWU</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>NFCT</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>PDM</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>DPPI</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>PWM</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>QDEC</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>QSPI</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>RADIO</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>RNG</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>RTC</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>SAADC</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>SPIM</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>SPIS</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>TEMP</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>TIMER</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>TWIM</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>TWIS</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>UART</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>UARTE</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>USBD</p></td> |
| <td><p>Yes</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-odd"><td><p>WDT</p></td> |
| <td><p>No</p></td> |
| <td></td> |
| </tr> |
| <tr class="row-even"><td><p>IPC</p></td> |
| <td><p>Yes</p></td> |
| <td><p>RPTUN supported</p></td> |
| </tr> |
| </tbody> |
| </table> |
| <section id="gpio-gpiote"> |
| <h3>GPIO/GPIOTE<a class="headerlink" href="#gpio-gpiote" title="Permalink to this heading"></a></h3> |
| <p>Pins can be configured/operated using <code class="docutils literal notranslate"><span class="pre">nrf53_gpio_*</span></code> functions. Interrupts are |
| handled via the GPIOTE peripheral in one of two ways: via a GPIOTE channel or via |
| PORT events. The former allows for simultaneous rising/falling edge-sensitive interrupts |
| per-pin. However, as there are a limited number of channels (and sometimes these |
| are used by some drivers for specific tasks), it may not always be possible to use |
| this mechanism. The latter approach for pin interrupts is via the PORT event, determined |
| by pin state on a their corresponding GPIO port. This is related to the SENSE capability |
| of pins, which can only be set to either rising or falling edge sensing.</p> |
| <p>Depending on <code class="docutils literal notranslate"><span class="pre">CONFIG_NRF53_PER_PIN_INTERRUPTS</span></code> option, you can set a callback for |
| the PORT event itself or you can set a callback for a given pin. In the latter case |
| the driver scans for pins with DETECT bit high and calls the configured callback |
| automatically.</p> |
| <p>Finally, GPIOTE can also be used to configure a channel in <em>task mode</em>, which allows to |
| control pin state via tasks/events.</p> |
| </section> |
| <section id="adc"> |
| <h3>ADC<a class="headerlink" href="#adc" title="Permalink to this heading"></a></h3> |
| <p>The SAADC peripheral is exposed via standard ADC driver. The lower-half of this driver |
| is initialized by calling <code class="xref c c-func docutils literal notranslate"><span class="pre">nrf53_adcinitialize()</span></code>.</p> |
| </section> |
| <section id="i2c"> |
| <h3>I2C<a class="headerlink" href="#i2c" title="Permalink to this heading"></a></h3> |
| <p>I2C is supported both in polling and interrupt mode (via EasyDMA).</p> |
| <div class="admonition note"> |
| <p class="admonition-title">Note</p> |
| <p>The I2C peripheral does not support sending two transfers without sending |
| a START nor RSTART. For this reason, this is supported via an internal buffer where |
| messages will be first copied to and sent together.</p> |
| </div> |
| <p>The lower-half of I2C bus is initialized by <code class="xref c c-func docutils literal notranslate"><span class="pre">nrf53_i2cbus_initialize()</span></code>.</p> |
| </section> |
| <section id="spi"> |
| <h3>SPI<a class="headerlink" href="#spi" title="Permalink to this heading"></a></h3> |
| <p>SPI is supported both in polling and interrupt-based (via EasyDMA) mode. The latter |
| supports arbitrarily long transfers using Nordic’s list-mode EasyDMA (intermediate |
| transfers are currently still manually started).</p> |
| <p>It is possible to use SPI without either MOSI/MISO pin defined by simply not providing |
| the relevant <code class="docutils literal notranslate"><span class="pre">BOARD_SPI*_MISO/MOSI_PIN</span></code> definition.</p> |
| <p>This implementation support power management hooks, which will disable SPI peripheral when |
| entering either SLEEP or STANDBY modes and reconfigure it when going back to NORMAL mode.</p> |
| </section> |
| <section id="uart"> |
| <h3>UART<a class="headerlink" href="#uart" title="Permalink to this heading"></a></h3> |
| <p>UART is implemented using polling. UARTE EasyDMA feature is not yet supported. |
| This may introduce a large number of interrupts which may be undesirable.</p> |
| </section> |
| <section id="pwm"> |
| <h3>PWM<a class="headerlink" href="#pwm" title="Permalink to this heading"></a></h3> |
| <p>PWM is supported via standard driver. This means that more advanced features such as |
| complex sequences or waveform modes are not yet supported.</p> |
| </section> |
| <section id="qspi"> |
| <h3>QSPI<a class="headerlink" href="#qspi" title="Permalink to this heading"></a></h3> |
| <p>QSPI is supported both in interrupt-based (via EasyDMA) mode and is exposed |
| via standard QSPI interface.</p> |
| </section> |
| <section id="timer"> |
| <h3>TIMER<a class="headerlink" href="#timer" title="Permalink to this heading"></a></h3> |
| <p>The TIMER peripheral is exposed as standard timer.</p> |
| </section> |
| <section id="rtc"> |
| <h3>RTC<a class="headerlink" href="#rtc" title="Permalink to this heading"></a></h3> |
| <p>The RTC peripheral is exposed as a standard timer, since it is really a low-power |
| timer, without any date handling capabilities.</p> |
| </section> |
| <section id="usbd"> |
| <h3>USBD<a class="headerlink" href="#usbd" title="Permalink to this heading"></a></h3> |
| <p>The USBD peripheral is exposed via standard USBDEV interface.</p> |
| </section> |
| </section> |
| <section id="interprocessor-communication"> |
| <h2>Interprocessor Communication<a class="headerlink" href="#interprocessor-communication" title="Permalink to this heading"></a></h2> |
| <p>Interprocessor communication between the application core and the network core is realized with |
| the NuttX RPTUN device based on the OpenAMP framework.</p> |
| <p>The last 32kB of the application core RAM is used for a shared memory (address = 0x20078000).</p> |
| </section> |
| <section id="ble-support"> |
| <h2>BLE Support<a class="headerlink" href="#ble-support" title="Permalink to this heading"></a></h2> |
| <p>BLE is supported in the nRF53 using Nordic’s <a class="reference external" href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrfxlib/softdevice_controller/README.html">SoftDevice Controller</a>.</p> |
| </section> |
| <section id="tool-issues"> |
| <h2>Tool Issues<a class="headerlink" href="#tool-issues" title="Permalink to this heading"></a></h2> |
| <section id="openocd"> |
| <h3>OpenOCD<a class="headerlink" href="#openocd" title="Permalink to this heading"></a></h3> |
| <p>There is no official support for Nordic Cortex M33 chips (nRF9160 or nRF5340).</p> |
| </section> |
| <section id="segger-j-link"> |
| <h3>Segger J-Link<a class="headerlink" href="#segger-j-link" title="Permalink to this heading"></a></h3> |
| <p>To start the GDB servers for the application core and the network core, use these commands:</p> |
| <div class="highlight-none notranslate"><div class="highlight"><pre><span></span>JLinkGDBServer -device nRF5340_xxAA_APP -autoconnect 1 -if SWD -speed 4000 -port 2331 -swoport 2332 -telnetport 2333 |
| JLinkGDBServer -device nRF5340_xxAA_NET -autoconnect 1 -if SWD -speed 4000 -port 2334 -swoport 2335 -telnetport 2336 |
| </pre></div> |
| </div> |
| <p>Then you can connect GDB to targets:</p> |
| <div class="highlight-none notranslate"><div class="highlight"><pre><span></span>(gdb_app) target remote localhost:2331 |
| (gdb_net) target remote localhost:2334 |
| </pre></div> |
| </div> |
| </section> |
| <section id="flashing-locked-device"> |
| <h3>Flashing locked device<a class="headerlink" href="#flashing-locked-device" title="Permalink to this heading"></a></h3> |
| <ol class="arabic"> |
| <li><p>Unlock the network core:</p> |
| <div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nrfjprog --recover --coprocessor CP_NETWORK |
| </pre></div> |
| </div> |
| </li> |
| <li><p>Unlock the application core:</p> |
| <div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nrfjprog --recover |
| </pre></div> |
| </div> |
| </li> |
| <li><p>Flash the network core:</p> |
| <div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nrfjprog --coprocessor CP_NETWORK --program nuttx_net.hex --verify --chiperase |
| </pre></div> |
| </div> |
| </li> |
| <li><p>Flash the application core:</p> |
| <div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nrfjprog --program nuttx_app.hex --verify --chiperase |
| </pre></div> |
| </div> |
| </li> |
| </ol> |
| </section> |
| </section> |
| <section id="supported-boards"> |
| <h2>Supported Boards<a class="headerlink" href="#supported-boards" title="Permalink to this heading"></a></h2> |
| <div class="toctree-wrapper compound"> |
| <ul> |
| <li class="toctree-l1"><a class="reference internal" href="boards/nrf5340-audio-dk/index.html">Nordic nRF5340-Audio-DK</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="boards/nrf5340-dk/index.html">Nordic nRF5340 DK</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="boards/thingy53/index.html">Nordic Thingy:53</a></li> |
| </ul> |
| </div> |
| </section> |
| </section> |
| |
| |
| </div> |
| </div> |
| <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer"> |
| <a href="../nrf52/boards/xiao-nrf52840/index.html" class="btn btn-neutral float-left" title="Seeed Studio XIAO nRF52840" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a> |
| <a href="boards/nrf5340-audio-dk/index.html" class="btn btn-neutral float-right" title="Nordic nRF5340-Audio-DK" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> |
| </div> |
| |
| <hr/> |
| |
| <div role="contentinfo"> |
| <p>© Copyright 2023, The Apache Software Foundation.</p> |
| </div> |
| |
| |
| |
| </footer> |
| </div> |
| </div> |
| </section> |
| </div> |
| <script> |
| jQuery(function () { |
| SphinxRtdTheme.Navigation.enable(true); |
| }); |
| </script> |
| |
| </body> |
| </html> |