boards: Add MAX32662EVKIT board
Add MAX32662EVKIT board files For more information about this board please check https://www.analog.com/ Co-authored-by: Maureen Helm <maureen.helm@analog.com> Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
This commit is contained in:
parent
7323757e36
commit
fa0d08c70a
8 changed files with 343 additions and 0 deletions
7
boards/adi/max32662evkit/Kconfig.max32662evkit
Normal file
7
boards/adi/max32662evkit/Kconfig.max32662evkit
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
# MAX32662EVKIT boards configuration
|
||||||
|
|
||||||
|
# Copyright (c) 2024 Analog Devices, Inc.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
config BOARD_MAX32662EVKIT
|
||||||
|
select SOC_MAX32662
|
9
boards/adi/max32662evkit/board.cmake
Normal file
9
boards/adi/max32662evkit/board.cmake
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
# Copyright (c) 2024 Analog Devices, Inc.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
board_runner_args(openocd --cmd-pre-init "source [find interface/cmsis-dap.cfg]")
|
||||||
|
board_runner_args(openocd --cmd-pre-init "source [find target/max32662.cfg]")
|
||||||
|
board_runner_args(jlink "--device=MAX32662" "--reset-after-load")
|
||||||
|
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
|
8
boards/adi/max32662evkit/board.yml
Normal file
8
boards/adi/max32662evkit/board.yml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# Copyright (c) 2024 Analog Devices, Inc.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
board:
|
||||||
|
name: max32662evkit
|
||||||
|
vendor: adi
|
||||||
|
socs:
|
||||||
|
- name: max32662
|
BIN
boards/adi/max32662evkit/doc/img/max32662evkit.webp
Normal file
BIN
boards/adi/max32662evkit/doc/img/max32662evkit.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 43 KiB |
227
boards/adi/max32662evkit/doc/index.rst
Normal file
227
boards/adi/max32662evkit/doc/index.rst
Normal file
|
@ -0,0 +1,227 @@
|
||||||
|
.. _max32662_evkit:
|
||||||
|
|
||||||
|
MAX32662EVKIT
|
||||||
|
#############
|
||||||
|
|
||||||
|
Overview
|
||||||
|
********
|
||||||
|
The MAX32662 evaluation kit (EV kit) provides a platform for evaluating
|
||||||
|
the capabilities of the MAX32662 microcontroller, which is a cost-effective,
|
||||||
|
ultra-low power, highly integrated 32-bit microcontroller designed
|
||||||
|
for battery-powered edge devices.
|
||||||
|
|
||||||
|
The Zephyr port is running on the MAX32662 MCU.
|
||||||
|
|
||||||
|
.. image:: img/max32662evkit.webp
|
||||||
|
:align: center
|
||||||
|
:alt: MAX32662EVKIT
|
||||||
|
|
||||||
|
Hardware
|
||||||
|
********
|
||||||
|
|
||||||
|
- MAX32662 MCU:
|
||||||
|
|
||||||
|
- High-Efficiency Microcontroller for Low-Power High-Reliability Devices
|
||||||
|
|
||||||
|
- 256KB Flash
|
||||||
|
- 80KB SRAM, Optionally Preserved in LowestPower BACKUP Mode
|
||||||
|
- 16KB Unified Cache
|
||||||
|
- Memory Protection Unit (MPU)
|
||||||
|
- Dual- or Single-Supply Operation: 1.7V to 3.6V
|
||||||
|
- Wide Operating Temperature: -40°C to +105°C
|
||||||
|
|
||||||
|
- Flexible Clocking Schemes
|
||||||
|
|
||||||
|
- Internal High-Speed 100MHz
|
||||||
|
- Internal Low-Power 7.3728MHz
|
||||||
|
- Ultra-Low-Power 80kHz
|
||||||
|
- 16MHz–32MHz (External Crystal Required)
|
||||||
|
- 32.768kHz (External Crystal Required)
|
||||||
|
- External Clock Inputs for CPU and Low-PowerTimer
|
||||||
|
|
||||||
|
- Power Management Maximizes Uptime for Battery Applications
|
||||||
|
|
||||||
|
- 50μA/MHz at 0.9V up to 12MHz (CoreMark®) inACTIVE Mode
|
||||||
|
- 44μA/MHz at 1.1V up to 100MHz (While(1)) inACTIVE Mode
|
||||||
|
- 2.15μA Full Memory Retention Current in BACKUPMode at VDDIO = 1.8V
|
||||||
|
- 2.4μA Full Memory Retention Current in BACKUPMode at VDDIO = 3.3V
|
||||||
|
- 350nA Ultra-Low-Power RTC
|
||||||
|
- Wakeup from Low-Power Timer
|
||||||
|
|
||||||
|
- Optimal Peripheral Mix Provides Platform Scalability
|
||||||
|
|
||||||
|
- Up to 21 General-Purpose I/O Pins
|
||||||
|
- 4-Channel, 12-Bit, 1Msps ADC
|
||||||
|
- Two SPI Controller/Target
|
||||||
|
- One I2S Controller/Target
|
||||||
|
- Two 4-Wire UART
|
||||||
|
- Two I2C Controller/Target
|
||||||
|
- One CAN 2.0B Controller
|
||||||
|
- 4-Channel Standard DMA Controller
|
||||||
|
- Three 32-Bit Timers
|
||||||
|
- One 32-Bit Low-Power Timer
|
||||||
|
- One Watchdog Timer
|
||||||
|
- CMOS-Level 32.768kHz Calibration Output
|
||||||
|
- AES-128/192/256 Hardware Accelerator
|
||||||
|
|
||||||
|
- Benefits and Features of MAX32662EVKIT:
|
||||||
|
|
||||||
|
- 3-Pin Terminal Block for CAN Bus 2.0B
|
||||||
|
- 128 x 128 (1.45in) Color TFT Display with SPI Interface
|
||||||
|
- Selectable On-Board High-Precision Voltage Reference
|
||||||
|
- USB 2.0 Micro-B to Serial UART
|
||||||
|
- All GPIOs Signals Accessed through 0.1in Headers
|
||||||
|
- Four Analog Inputs Accessed through 0.1in Header
|
||||||
|
- SWD 10-Pin Header
|
||||||
|
- Board Power Provided by USB Port
|
||||||
|
- On-Board LDO Regulators
|
||||||
|
- Individual Power Measurement on All IC Rails through Jumpers
|
||||||
|
- One General-Purpose LED
|
||||||
|
- One General-Purpose Pushbutton Switch
|
||||||
|
|
||||||
|
Supported Features
|
||||||
|
==================
|
||||||
|
|
||||||
|
Below interfaces are supported by Zephyr on MAX32662EVKIT.
|
||||||
|
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| Interface | Controller | Driver/Component |
|
||||||
|
+===========+============+=====================================+
|
||||||
|
| NVIC | on-chip | nested vector interrupt controller |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| SYSTICK | on-chip | systick |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| CLOCK | on-chip | clock and reset control |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| GPIO | on-chip | gpio |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| UART | on-chip | serial |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Connections and IOs
|
||||||
|
===================
|
||||||
|
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| Name | Name | Settings | Description |
|
||||||
|
+===========+===============+===============+==================================================================================================+
|
||||||
|
| JP1 | VREF EN | | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the external voltage reference to the VREF pin; must be enabled in the software. | |
|
||||||
|
| | | | | | | See the External Voltage Reference (VREF) section for additional information. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects the external voltage reference. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP2 | I2C1_SCL_PU | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the pull-up to I2C1A_SCL (P0.6); sourced by V_AUX. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects the pull-up from I2C1A_SCL (P0.6); sourced by V_AUX. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP3 | N/A | N/A | Does not exist. |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP4 | I2C1_SDA_PU | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the pull-up to I2C1A_SDA (P0.9); sourced by V_AUX. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Oepn | | | Disconnects the pull-up from I2C1A_SDA (P0.9); sourced by V_AUX. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP5 | LED0 EN | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Enables LED0. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disables LED0. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP6 | CTS0A EN | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the USB-to-serial bridge to UART0A_CTS (P0.20). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects the USB-to-serial bridge from UART0A_CTS (P0.20). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP7 | RX0A EN | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the USB-to-serial bridge to UART0A_RX (P0.11). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects the USB-to-serial bridge from UART0A_RX (P0.11). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP8 | TX0A EN | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the USB-to-serial bridge to UART0A_TX (P0.10). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects the USB-to-serial bridge from UART0A_TX (P0.10). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP9 | RTS0A EN | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the USB-to-serial bridge to UART0A_RTS (P0.19). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects the USB-to-serial bridge from UART0A_RTS (P0.19). | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP10 | VCORE EN | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects 1V1 to VCORE. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects 1V1 from VCORE. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP11 | VDDIO/VDDASEL | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 2-1 | | | Connects 1V8 to V_AUX, VDDIO EN (JP12), and VDDA EN (JP13) jumpers. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 2-3 | | | Connects 3V3 to V_AUX, VDDIO EN (JP12), and VDDA EN (JP13) jumpers. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
| JP12 | VDDIO EN | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | 1-2 | | | Connects the JP11 selected voltage to VDDIO. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | Open | | | Disconnects the voltage from VDDIO. | |
|
||||||
|
| | | +-----------+ | +-------------------------------------------------------------------------------+ |
|
||||||
|
| | | | |
|
||||||
|
+-----------+---------------+---------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Programming and Debugging
|
||||||
|
*************************
|
||||||
|
|
||||||
|
Flashing
|
||||||
|
========
|
||||||
|
|
||||||
|
An Arm® debug access port (DAP) provides an external interface for debugging during application
|
||||||
|
development. The DAP is a standard Arm CoreSight® serial wire debug port, uses a two-pin serial
|
||||||
|
interface (SWDCLK and SWDIO), and is accessed through 10-pin header (J3). Logic levels are set
|
||||||
|
to V_AUX (1V8 or 3V3), which is determined by the shunt placement on JP11. In addition,
|
||||||
|
the UART1A port can also be accessed through J3.
|
||||||
|
|
||||||
|
|
||||||
|
Once the debug probe is connected to your host computer, then you can simply run the
|
||||||
|
``west flash`` command to write a firmware image into flash.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
This board uses OpenOCD as the default debug interface. You can also use
|
||||||
|
a Segger J-Link with Segger's native tooling by overriding the runner,
|
||||||
|
appending ``--runner jlink`` to your ``west`` command(s). The J-Link should
|
||||||
|
be connected to the standard 2*5 pin debug connector (J3) using an
|
||||||
|
appropriate adapter board and cable.
|
||||||
|
|
||||||
|
Debugging
|
||||||
|
=========
|
||||||
|
|
||||||
|
Please refer to the `Flashing`_ section and run the ``west debug`` command
|
||||||
|
instead of ``west flash``.
|
||||||
|
|
||||||
|
References
|
||||||
|
**********
|
||||||
|
|
||||||
|
- `MAX32662EVKIT web page`_
|
||||||
|
|
||||||
|
.. _MAX32662EVKIT web page:
|
||||||
|
https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/max32662evkit.html
|
65
boards/adi/max32662evkit/max32662evkit.dts
Normal file
65
boards/adi/max32662evkit/max32662evkit.dts
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2024 Analog Devices, Inc.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <adi/max32/max32662.dtsi>
|
||||||
|
#include <adi/max32/max32662-pinctrl.dtsi>
|
||||||
|
#include <zephyr/dt-bindings/gpio/adi-max32-gpio.h>
|
||||||
|
#include <zephyr/dt-bindings/input/input-event-codes.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Analog Devices MAX32662EVKIT";
|
||||||
|
compatible = "adi,max32662evkit";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
zephyr,console = &uart0;
|
||||||
|
zephyr,shell-uart = &uart0;
|
||||||
|
zephyr,sram = &sram2;
|
||||||
|
zephyr,flash = &flash0;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
led1: led_1 {
|
||||||
|
gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
|
||||||
|
label = "Red LED";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
buttons {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
pb1: pb1 {
|
||||||
|
gpios = <&gpio0 6 (GPIO_PULL_UP | GPIO_ACTIVE_LOW
|
||||||
|
| MAX32_GPIO_VSEL_VDDIOH)>;
|
||||||
|
label = "SW3";
|
||||||
|
zephyr,code = <INPUT_KEY_0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/* These aliases are provided for compatibility with samples */
|
||||||
|
aliases {
|
||||||
|
led0 = &led1;
|
||||||
|
sw0 = &pb1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
pinctrl-0 = <&uart0a_tx_p0_10 &uart0a_rx_p0_11>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
current-speed = <115200>;
|
||||||
|
data-bits = <8>;
|
||||||
|
parity = "none";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&clk_ipo {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
14
boards/adi/max32662evkit/max32662evkit.yaml
Normal file
14
boards/adi/max32662evkit/max32662evkit.yaml
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
identifier: max32662evkit
|
||||||
|
name: max32662evkit
|
||||||
|
vendor: adi
|
||||||
|
type: mcu
|
||||||
|
arch: arm
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
supported:
|
||||||
|
- gpio
|
||||||
|
- serial
|
||||||
|
ram: 80
|
||||||
|
flash: 256
|
13
boards/adi/max32662evkit/max32662evkit_defconfig
Normal file
13
boards/adi/max32662evkit/max32662evkit_defconfig
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2024 Analog Devices, Inc.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
# Enable GPIO
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
|
||||||
|
# Console
|
||||||
|
CONFIG_CONSOLE=y
|
||||||
|
CONFIG_UART_CONSOLE=y
|
||||||
|
|
||||||
|
# Enable UART
|
||||||
|
CONFIG_SERIAL=y
|
||||||
|
CONFIG_UART_INTERRUPT_DRIVEN=y
|
Loading…
Add table
Add a link
Reference in a new issue