boards/arm/v2m_beetle/doc/index.rst
.. zephyr:board:: v2m_beetle
ARM V2M Beetle ##############
Overview
The v2m_beetle board configuration is used by Zephyr applications that run on the V2M Beetle board. It provides support for the Beetle ARM Cortex-M3 CPU and the following devices:
.. image:: img/v2m_beetle.jpg :align: center :alt: ARM V2M Beetle
More information about the board can be found at the V2M Beetle Website_.
Hardware
ARM V2M BEETLE provides the following hardware components:
ARM Cortex-M3
ARM IoT Subsystem for Cortex-M
CORDIO Bluetooth Smart radio
Memory
Debug
Arduino interface
.. zephyr:board-supported-hw::
Beetle is a Cortex-M3 based SoC and has 15 fixed exceptions and 45 IRQs.
A Cortex-M3/4-based board uses vectored exceptions. This means each exception calls a handler directly from the vector table.
Handlers are provided for exceptions 1-6, 11-12, and 14-15. The table here identifies the handlers used for each exception.
+------+------------+----------------+--------------------------+ | Exc# | Name | Remarks | Used by Zephyr Kernel | +======+============+================+==========================+ | 1 | Reset | | system initialization | +------+------------+----------------+--------------------------+ | 2 | NMI | | system fatal error | +------+------------+----------------+--------------------------+ | 3 | Hard fault | | system fatal error | +------+------------+----------------+--------------------------+ | 4 | MemManage | MPU fault | system fatal error | +------+------------+----------------+--------------------------+ | 5 | Bus | | system fatal error | +------+------------+----------------+--------------------------+ | 6 | Usage | undefined | system fatal error | | | fault | instruction, | | | | | or switch | | | | | attempt to ARM | | | | | mode | | +------+------------+----------------+--------------------------+ | 11 | SVC | | system calls, kernel | | | | | run-time exceptions, | | | | | and IRQ offloading | +------+------------+----------------+--------------------------+ | 12 | Debug | | system fatal error | | | monitor | | | +------+------------+----------------+--------------------------+ | 14 | PendSV | | context switch | +------+------------+----------------+--------------------------+ | 15 | SYSTICK | | system clock | +------+------------+----------------+--------------------------+
The ARM V2M Beetle Board has 4 GPIO controllers. These controllers are responsible for pin muxing, input/output, pull-up, etc.
All GPIO controller pins are exposed via the following sequence of pin numbers:
Mapping from the ARM V2M Beetle Board pins to GPIO controllers:
.. rst-class:: rst-columns
Peripheral Mapping:
.. rst-class:: rst-columns
For more details please refer to Beetle Technical Reference Manual (TRM)_.
V2M Beetle has one external and two on-chip oscillators. The slow clock is 32.768 kHz, and the main clock is 24 MHz. The processor can set up PLL to drive the master clock.
The ARM Beetle processor has two UARTs. Both the UARTs have only two wires for RX/TX and no flow control (CTS/RTS) or FIFO. The Zephyr console output, by default, is utilizing UART1.
Programming and Debugging
V2M Beetle provides:
This interfaces are exposed via CMSIS DAP. For more details please refer
to CMSIS-DAP Website_.
You can build applications in the usual way. Here is an example for
the :zephyr:code-sample:hello_world application.
.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: v2m_beetle :goals: build
Connect the V2M Beetle to your host computer using the USB port and you should see a USB connection which exposes a Mass Storage (MBED) and a USB Serial Port. Copy the generated zephyr.bin in the MBED drive. Reset the board and you should be able to see on the corresponding Serial Port the following message:
.. code-block:: console
Hello World! arm
.. _V2M Beetle Website: https://developer.arm.com/Tools%20and%20Software/Beetle%20IoT%20Evaluation%20Platform
.. _Beetle Technical Reference Manual (TRM): https://developer.arm.com/documentation/100417/latest/
.. _CMSIS-DAP Website: https://arm-software.github.io/CMSIS_5/DAP/html/index.html