diff options
author | Bruno Martins <bruno963852@gmail.com> | 2021-05-13 18:18:04 -0300 |
---|---|---|
committer | Damien George <damien@micropython.org> | 2021-05-18 12:14:57 +1000 |
commit | ea2d83e96175ef1ed260cca917024502e01a5546 (patch) | |
tree | 9faa701a5e95da14d02391cb9c1e50d75f188b56 | |
parent | 94fb5e7f5a409e9596657508c6a9ed1c609de267 (diff) |
nrf/boards: Add support for evk_nina_b3 board.
-rw-r--r-- | ports/nrf/boards/evk_nina_b3/mpconfigboard.h | 85 | ||||
-rw-r--r-- | ports/nrf/boards/evk_nina_b3/mpconfigboard.mk | 7 | ||||
-rw-r--r-- | ports/nrf/boards/evk_nina_b3/pins.csv | 48 |
3 files changed, 140 insertions, 0 deletions
diff --git a/ports/nrf/boards/evk_nina_b3/mpconfigboard.h b/ports/nrf/boards/evk_nina_b3/mpconfigboard.h new file mode 100644 index 000000000..eaca796be --- /dev/null +++ b/ports/nrf/boards/evk_nina_b3/mpconfigboard.h @@ -0,0 +1,85 @@ +/* + * This file is part of the MicroPython project, http://micropython.org/ + * + * The MIT License (MIT) + * + * Copyright (c) 2016 Glenn Ruben Bakke + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +// Pin numbering scheme for nrf52840-based boards +// +// Software Pins 0-31 correspond to physical pins +// 0.x and software Pins 32-47 correspond to physical pins 1.x. +// +// Example: Pin(47) would be 1.15 on the PCA10059 + +// Board data +#define MICROPY_HW_BOARD_NAME "EVK_NINA_B3" +#define MICROPY_HW_MCU_NAME "NRF52840" +#define MICROPY_PY_SYS_PLATFORM "nrf52" + +// Enable @viper and @native +#define MICROPY_EMIT_THUMB (1) +#define MICROPY_EMIT_INLINE_THUMB (1) + +// Enable optional modules +#define MICROPY_PY_UERRNO (1) +#define MICROPY_PY_UHASHLIB (1) + +// Peripherals Config +#define MICROPY_PY_MACHINE_UART (1) +#define MICROPY_PY_MACHINE_HW_PWM (1) +#define MICROPY_PY_MACHINE_HW_SPI (1) +#define MICROPY_PY_MACHINE_TIMER (1) +#define MICROPY_PY_MACHINE_RTCOUNTER (1) +#define MICROPY_PY_MACHINE_I2C (1) +#define MICROPY_PY_MACHINE_ADC (1) +#define MICROPY_PY_MACHINE_TEMP (1) +#define MICROPY_HW_ENABLE_RNG (1) + +// Configure LEDS +#define MICROPY_HW_HAS_LED (1) +#define MICROPY_HW_LED_COUNT (3) +#define MICROPY_HW_LED_PULLUP (1) +#define MICROPY_HW_LED1 (13) // LED1 RED +#define MICROPY_HW_LED2 (25) // LED2 GREEN +#define MICROPY_HW_LED3 (32) // LED3 BLUE + +// UART config +#define MICROPY_HW_UART1_RX (29) +#define MICROPY_HW_UART1_TX (45) +#define MICROPY_HW_UART1_CTS (44) +#define MICROPY_HW_UART1_RTS (31) +#define MICROPY_HW_UART1_HWFC (1) + +// SPI config +#define MICROPY_HW_SPI0_NAME "SPI0" +#define MICROPY_HW_SPI0_SCK (12) +#define MICROPY_HW_SPI0_MOSI (14) +#define MICROPY_HW_SPI0_MISO (15) + +// PWM Names +#define MICROPY_HW_PWM0_NAME "PWM0" +#define MICROPY_HW_PWM1_NAME "PWM1" +#define MICROPY_HW_PWM2_NAME "PWM2" + +// How Many LED indexes appear in the help() message +#define HELP_TEXT_BOARD_LED "1,2,3" diff --git a/ports/nrf/boards/evk_nina_b3/mpconfigboard.mk b/ports/nrf/boards/evk_nina_b3/mpconfigboard.mk new file mode 100644 index 000000000..ca555d393 --- /dev/null +++ b/ports/nrf/boards/evk_nina_b3/mpconfigboard.mk @@ -0,0 +1,7 @@ +MCU_SERIES = m4 +MCU_VARIANT = nrf52 +MCU_SUB_VARIANT = nrf52840 +SOFTDEV_VERSION = 6.1.1 +LD_FILES += boards/nrf52840_1M_256k.ld + +NRF_DEFINES += -DNRF52840_XXAA diff --git a/ports/nrf/boards/evk_nina_b3/pins.csv b/ports/nrf/boards/evk_nina_b3/pins.csv new file mode 100644 index 000000000..e6190bac0 --- /dev/null +++ b/ports/nrf/boards/evk_nina_b3/pins.csv @@ -0,0 +1,48 @@ +P0,P0 +P1,P1 +P2,P2,ADC0_IN0 +P3,P3,ADC0_IN1 +P4,P4,ADC0_IN2 +P5,P5,ADC0_IN3 +P6,P6 +P7,P7 +P8,P8 +P9,P9 +P10,P10 +P11,P11 +P12,P12 +P13,P13 +P14,P14 +P15,P15 +P16,P16 +P17,P17 +P18,P18 +P19,P19 +P20,P20 +P21,P21 +P22,P22 +P23,P23 +P24,P24 +P25,P25 +P26,P26 +P27,P27 +P28,P28,ADC0_IN4 +P29,P29,ADC0_IN5 +P30,P30,ADC0_IN6 +P31,P31,ADC0_IN7 +P32,P32 +P33,P33 +P34,P34 +P35,P35 +P36,P36 +P37,P37 +P38,P38 +P39,P39 +P40,P40 +P41,P41 +P42,P42 +P43,P43 +P44,P44 +P45,P45 +P46,P46 +P47,P47 |