You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
204 lines
6.5 KiB
204 lines
6.5 KiB
.. _boardname_linkname: |
|
|
|
SparkFun MicroMod board Processor |
|
################################# |
|
|
|
Overview |
|
******** |
|
|
|
MicroMod is a solderless, modular interface ecosystem that uses the M.2 standard |
|
to mix and match your choice of processor with specific Function Boards or |
|
stand-alone Carrier Boards. A MicroMod processor board is approximately 22x22 mm, |
|
and can insert into any MicroMod carrier board. More information can be found in |
|
the `Micromod specification website`_. |
|
|
|
All Micromod board targets support the following hardware features: |
|
|
|
- USB host mode compliant to 2.0 specification |
|
- GPIO |
|
- 2 UART |
|
- 2 I2C |
|
- 2 SPI |
|
- 2 ADC |
|
- 2 PWM |
|
- Watchdog Timer (WDT) |
|
|
|
.. figure:: img/sparkfun_micromod.webp |
|
:align: center |
|
:alt: Sparkfun Micromod board |
|
|
|
Sparkfun Micromod board (Credit: https://www.sparkfun.com) |
|
|
|
Zephyr currently supports the following SoCs: |
|
|
|
- ``micromod/nrf52840`` |
|
|
|
SparkFun MicroMod nRF52840 board Processor |
|
########################################## |
|
|
|
Overview |
|
******** |
|
|
|
The ``micromod/nrf52840`` board target features the nRF52840 SoC |
|
from Nordic Semiconductor, the SparkFun MicroMod nRF52840 Processor offers |
|
a powerful combination of ARM Cortex-M4 CPU and 2.4 GHz Bluetooth transceiver |
|
in the MicroMod form-factor. More information can be found in |
|
the `Micromod nRF52840 guide`_. |
|
|
|
Hardware |
|
******** |
|
|
|
The ``micromod/nrf52840`` board target supports the following |
|
hardware features: |
|
|
|
- ARM Cortex-M4 CPU with floating point unit (FPU) |
|
|
|
- 1MB internal Flash |
|
- 256kB internal RAM |
|
|
|
- Integrated 2.4GHz radio with support for Bluetooth Low Energy (BLE) and ieee802154 |
|
- USB 2.0 full speed (12 Mbps) controller |
|
- QSPI with 128Mb flash memory |
|
- ARM TrustZone Cryptocell 310 security subsystem |
|
- USB host mode compliant to 2.0 specification |
|
- GPIO |
|
- 2 UART |
|
- 2 I2C |
|
- 2 SPI |
|
- 2 ADC |
|
- 2 PWM |
|
- Watchdog Timer (WDT) |
|
|
|
Supported Features |
|
================== |
|
|
|
The Zephyr ``micromod/nrf52840`` board target supports the following hardware |
|
features: |
|
|
|
+-----------+------------+-------------------------------------+ |
|
| Interface | Controller | Driver/Component | |
|
+===========+============+=====================================+ |
|
| NVIC | on-chip | nested vector interrupt controller | |
|
+-----------+------------+-------------------------------------+ |
|
| SYSTICK | on-chip | system clock | |
|
+-----------+------------+-------------------------------------+ |
|
| RADIO | on-chip | Bluetooth, | |
|
| | | ieee802154 | |
|
+-----------+------------+-------------------------------------+ |
|
| UART | on-chip | serial port | |
|
+-----------+------------+-------------------------------------+ |
|
| GPIO | on-chip | gpio | |
|
+-----------+------------+-------------------------------------+ |
|
| PINMUX | on-chip | pinmux | |
|
+-----------+------------+-------------------------------------+ |
|
| FLASH | on-chip | flash | |
|
+-----------+------------+-------------------------------------+ |
|
| SPI | on-chip | spi | |
|
+-----------+------------+-------------------------------------+ |
|
| I2C | on-chip | i2c | |
|
+-----------+------------+-------------------------------------+ |
|
| USB | on-chip | usb | |
|
+-----------+------------+-------------------------------------+ |
|
| QSPI | on-chip | nordic,nrf-qspi | |
|
+-----------+------------+-------------------------------------+ |
|
|
|
|
|
Connections and IOs |
|
=================== |
|
|
|
LED |
|
--- |
|
|
|
* Led0 (blue) = P0.13 |
|
|
|
Micromod header |
|
--------------- |
|
|
|
* micromod_1_uart = uart0 |
|
* micromod_2_uart = uart1 |
|
* micromod_0_i2c = i2c0 |
|
* micromod_1_i2c = i2c1 |
|
* micromod_0_spi = spi2 |
|
* micromod_header compatible with ``sparkfun,micromod-gpio`` |
|
|
|
Programming and Debugging |
|
************************* |
|
|
|
Applications for the ``micromod/nrf52840`` board target can be |
|
built, flashed, and debugged in the usual way. See |
|
:ref:`build_an_application` and :ref:`application_run` for more details on |
|
building and running. |
|
|
|
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). |
|
|
|
The flashing tool will depend on the carrier used along with the board. |
|
In the case of `Sparkfun asset tracking carrier`, it is possible to use |
|
the SWD interface along with a J-Link. |
|
|
|
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 board nRF52840 DK |
|
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: micromod/nrf52840 |
|
:goals: build flash |
|
|
|
Debugging |
|
========= |
|
|
|
Refer to the :ref:`nordic_segger` page to learn about debugging Nordic boards with a |
|
Segger IC. |
|
|
|
In case of using a Nordic Segger Jlink, it is possible to configure the app to use Segger Real |
|
Time Transfer (RTT) for debugging. In this case, build your app with the |
|
:ref:`RTT snippet <snippet-rtt-console>`. |
|
|
|
Testing the on-board LED |
|
************************ |
|
|
|
There is a sample that allow you to test the LED on the board is working properly |
|
with Zephyr: |
|
|
|
* :zephyr:code-sample:`blinky` |
|
|
|
You can build and flash the example to make sure Zephyr is running correctly on |
|
your board. The button and LED definitions can be found in |
|
:zephyr_file:`boards/sparkfun/micromod/micromod_nrf52840.dts`. |
|
|
|
Testing the 128Mb qspi memory flash |
|
*********************************** |
|
|
|
The ``micromod/nrf52840`` board target has a built-in NOR flash memory connected |
|
to the qspi interface. It can be tested with the samples/drivers/jesd216 app. |
|
|
|
.. zephyr-app-commands:: |
|
:zephyr-app: samples/drivers/jesd216 |
|
:board: micromod/nrf52840 |
|
:goals: build flash |
|
|
|
References |
|
********** |
|
|
|
.. target-notes:: |
|
|
|
.. _Micromod specification website: https://www.sparkfun.com/micromod |
|
.. _Micromod nRF52840 guide: https://learn.sparkfun.com/tutorials/micromod-nrf52840-processor-hookup-guide |
|
.. _J-Link Software and documentation pack: https://www.segger.com/jlink-software.html |
|
.. _nRF52840 Product Specification: http://infocenter.nordicsemi.com/pdf/nRF52840_PS_v1.0.pdf
|
|
|