mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
boards,sys/arduino: major clean up
- Rename all `arduino_pinmap.h` to `arduino_iomap.h` - An empty `arduino_pinmap.h` that just includes `arduino_iomap.h` is provided for backward compatibility - Move all info from `arduino_board.h` into the new file as trivial macros, so that they can also be used outside of sketches - The new name reflects the fact not just pin mappings, but also other I/O features such as PWMs are mapped - Drop all `arduino_board.h` - `arduino_board.h` and `arduino_iomap.h` now provide the exact same information, just in a different format - a generic `arduino_board.h` is provided instead that just uses the info in `arduinio_iomap.h` and provides them in the format the code in `sys/arduino` expects it - Add fine grained features to indicate for mappings - availability of mappings for analog pins, DAC pins, PWM pins, UART devices, SPI/I2C buses to the corresponding RIOT identification can now be expressed: - `arduino_pins`: `ARDUINO_PIN_0` etc. are available - `arduino_analog`: `ARDUINO_A0` etc. are available - `arduino_pwm`: `ARDUINO_PIN_13_PWM_DEV` etc. are available - `arduino_dac`: `ARDUINO_DAC0` etc. are available - `arduino_uart`: `ARDUINO_UART_D0D1` or similar are available - `arduino_spi`: `ARDUINO_SPI_ISP` or similar are available - `arduino_i2c`: `ARDUINO_I2C_UNO` or similar are available - mechanical/electrical compatibility with specific form factors can now be expressed as features: - `aruino_shield_nano`: Arduino NANO compatible headers - `aruino_shield_uno`: Arduino UNO compatible headers - `aruino_shield_mega`: Arduino MEGA compatible headers - `aruino_shield_isp`: ISP header is available This provides the groundwork to implement shield support as modules that can rely on the I/O mappings, rather than having to provide a configuration per board.
This commit is contained in:
parent
655211129e
commit
043e8cc88e
@ -11,7 +11,8 @@ config BOARD_ADAFRUIT_GRAND_CENTRAL_M4_EXPRESS
|
||||
bool
|
||||
default y
|
||||
select CPU_MODEL_SAMD51P20A
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_HIGHLEVEL_STDIO
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_DAC
|
||||
|
@ -15,5 +15,6 @@ FEATURES_PROVIDED += periph_uart
|
||||
FEATURES_PROVIDED += periph_usbdev
|
||||
|
||||
# other board features
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += sdcard_spi
|
||||
|
@ -1,73 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2017 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_nucleo144
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_14,
|
||||
ARDUINO_PIN_15,
|
||||
ARDUINO_PIN_A0,
|
||||
ARDUINO_PIN_A1,
|
||||
ARDUINO_PIN_A2,
|
||||
ARDUINO_PIN_A3,
|
||||
ARDUINO_PIN_A4,
|
||||
ARDUINO_PIN_A5,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
@ -16,8 +16,8 @@
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
@ -49,12 +49,26 @@ extern "C" {
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PB, 20)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PB, 21)
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO_PIN(PA, 3)
|
||||
#define ARDUINO_PIN_A1 GPIO_PIN(PC, 0)
|
||||
#define ARDUINO_PIN_A2 GPIO_PIN(PC, 3)
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PC, 1)
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PC, 4)
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PC, 5)
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PA, 3)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PC, 0)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PC, 3)
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PC, 1)
|
||||
#define ARDUINO_PIN_20 GPIO_PIN(PC, 4)
|
||||
#define ARDUINO_PIN_21 GPIO_PIN(PC, 5)
|
||||
|
||||
#define ARDUINO_PIN_LAST 21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_19
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_20
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
@ -67,11 +81,13 @@ extern "C" {
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 5
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -10,6 +10,7 @@ config BOARD_ARDUINO_DUEMILANOVE
|
||||
select BOARD_COMMON_ARDUINO_ATMEGA
|
||||
select CPU_MODEL_ATMEGA328P
|
||||
select MODULE_BOARDS_COMMON_ARDUINO-ATMEGA if TEST_KCONFIG
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
|
||||
config BOARD
|
||||
default "arduino-duemilanove" if BOARD_ARDUINO_DUEMILANOVE
|
||||
|
@ -1,3 +1,4 @@
|
||||
CPU = atmega328p
|
||||
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
|
||||
|
@ -13,5 +13,6 @@ config BOARD_ARDUINO_LEONARDO
|
||||
select BOARD_COMMON_ARDUINO_ATMEGA
|
||||
select CPU_MODEL_ATMEGA32U4
|
||||
select MODULE_BOARDS_COMMON_ARDUINO-ATMEGA if TEST_KCONFIG
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
|
||||
source "$(RIOTBOARD)/common/arduino-atmega/Kconfig"
|
||||
|
@ -1,3 +1,4 @@
|
||||
CPU = atmega32u4
|
||||
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
|
||||
|
@ -13,5 +13,7 @@ config BOARD_ARDUINO_MEGA2560
|
||||
select CPU_MODEL_ATMEGA2560
|
||||
select BOARD_COMMON_ARDUINO_ATMEGA
|
||||
select MODULE_BOARDS_COMMON_ARDUINO-ATMEGA if TEST_KCONFIG
|
||||
select HAS_ARDUINO_SHIELD_MEGA
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
|
||||
source "$(RIOTBOARD)/common/arduino-atmega/Kconfig"
|
||||
|
@ -1,3 +1,6 @@
|
||||
CPU = atmega2560
|
||||
|
||||
FEATURES_PROVIDED += arduino_shield_mega
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
|
||||
include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
|
||||
|
@ -29,11 +29,6 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 6 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (6U)
|
||||
|
||||
/**
|
||||
* @name LED pin definitions and handlers
|
||||
* @{
|
||||
|
@ -40,11 +40,6 @@ extern "C" {
|
||||
#define ATA8520E_PARAM_RESET_PIN GPIO_PIN(PA, 27)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 6 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (6U)
|
||||
|
||||
/**
|
||||
* @name LED pin definitions and handlers
|
||||
* @{
|
||||
|
@ -30,11 +30,6 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 6 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (6U)
|
||||
|
||||
/**
|
||||
* @name LED pin definitions and handlers
|
||||
* @{
|
||||
|
@ -10,6 +10,7 @@ config BOARD_ARDUINO_NANO
|
||||
select BOARD_COMMON_ARDUINO_ATMEGA
|
||||
select CPU_MODEL_ATMEGA328P
|
||||
select MODULE_BOARDS_COMMON_ARDUINO-ATMEGA if TEST_KCONFIG
|
||||
select HAS_ARDUINO_SHIELD_NANO
|
||||
|
||||
config BOARD
|
||||
default "arduino-nano" if BOARD_ARDUINO_NANO
|
||||
|
@ -1,3 +1,4 @@
|
||||
CPU = atmega328p
|
||||
|
||||
FEATURES_PROVIDED += arduino_shield_nano
|
||||
include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
|
||||
|
@ -10,6 +10,7 @@ config BOARD_ARDUINO_UNO
|
||||
select CPU_MODEL_ATMEGA328P
|
||||
select BOARD_COMMON_ARDUINO_ATMEGA
|
||||
select MODULE_BOARDS_COMMON_ARDUINO-ATMEGA if TEST_KCONFIG
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
|
||||
config BOARD
|
||||
default "arduino-uno" if BOARD_ARDUINO_UNO
|
||||
|
@ -1,3 +1,4 @@
|
||||
CPU = atmega328p
|
||||
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
|
||||
|
@ -14,8 +14,13 @@ config BOARD_COMMON_ARDUINO_ATMEGA
|
||||
select HAS_PERIPH_TIMER
|
||||
select HAS_PERIPH_UART
|
||||
# Various other features (if any)
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_I2C
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ARDUINO_PWM
|
||||
select HAS_ARDUINO_SHIELD_ISP
|
||||
select HAS_ARDUINO_SPI
|
||||
select HAS_ARDUINO_UART
|
||||
|
||||
select HAVE_SAUL_GPIO
|
||||
|
||||
|
@ -7,5 +7,10 @@ FEATURES_PROVIDED += periph_timer
|
||||
FEATURES_PROVIDED += periph_uart
|
||||
|
||||
# Various other features (if any)
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_i2c
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += arduino_pwm
|
||||
FEATURES_PROVIDED += arduino_shield_isp
|
||||
FEATURES_PROVIDED += arduino_spi
|
||||
FEATURES_PROVIDED += arduino_uart
|
||||
|
@ -1,194 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Freie Universität Berlin
|
||||
* 2017 Thomas Perrot <thomas.perrot@tupi.fr>
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino-atmega
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Configuration of the Arduino API for Arduino Atmega boards
|
||||
*
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
* @author Laurent Navet <laurent.navet@gmail.com>
|
||||
* @author Thomas Perrot <thomas.perrot@tupi.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
#include "periph/pwm.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 13 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (13)
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_14,
|
||||
ARDUINO_PIN_15,
|
||||
ARDUINO_PIN_16,
|
||||
ARDUINO_PIN_17,
|
||||
ARDUINO_PIN_18,
|
||||
ARDUINO_PIN_19,
|
||||
#if defined(CPU_ATMEGA2560) || defined(CPU_ATMEGA32U4)
|
||||
ARDUINO_PIN_20,
|
||||
ARDUINO_PIN_21,
|
||||
ARDUINO_PIN_22,
|
||||
ARDUINO_PIN_23,
|
||||
#endif
|
||||
#ifdef CPU_ATMEGA2560
|
||||
ARDUINO_PIN_24,
|
||||
ARDUINO_PIN_25,
|
||||
ARDUINO_PIN_26,
|
||||
ARDUINO_PIN_27,
|
||||
ARDUINO_PIN_28,
|
||||
ARDUINO_PIN_29,
|
||||
#endif
|
||||
#if defined(CPU_ATMEGA2560) || defined(CPU_ATMEGA32U4)
|
||||
ARDUINO_PIN_30,
|
||||
#endif
|
||||
#ifdef CPU_ATMEGA2560
|
||||
ARDUINO_PIN_31,
|
||||
ARDUINO_PIN_32,
|
||||
ARDUINO_PIN_33,
|
||||
ARDUINO_PIN_34,
|
||||
ARDUINO_PIN_35,
|
||||
ARDUINO_PIN_36,
|
||||
ARDUINO_PIN_37,
|
||||
ARDUINO_PIN_38,
|
||||
ARDUINO_PIN_39,
|
||||
ARDUINO_PIN_40,
|
||||
ARDUINO_PIN_41,
|
||||
ARDUINO_PIN_42,
|
||||
ARDUINO_PIN_43,
|
||||
ARDUINO_PIN_44,
|
||||
ARDUINO_PIN_45,
|
||||
ARDUINO_PIN_46,
|
||||
ARDUINO_PIN_47,
|
||||
ARDUINO_PIN_48,
|
||||
ARDUINO_PIN_49,
|
||||
ARDUINO_PIN_50,
|
||||
ARDUINO_PIN_51,
|
||||
ARDUINO_PIN_52,
|
||||
ARDUINO_PIN_53,
|
||||
ARDUINO_PIN_54,
|
||||
ARDUINO_PIN_55,
|
||||
ARDUINO_PIN_56,
|
||||
ARDUINO_PIN_57,
|
||||
ARDUINO_PIN_58,
|
||||
ARDUINO_PIN_59,
|
||||
ARDUINO_PIN_60,
|
||||
ARDUINO_PIN_61,
|
||||
ARDUINO_PIN_62,
|
||||
ARDUINO_PIN_63,
|
||||
ARDUINO_PIN_64,
|
||||
ARDUINO_PIN_65,
|
||||
ARDUINO_PIN_66,
|
||||
ARDUINO_PIN_67,
|
||||
ARDUINO_PIN_68,
|
||||
ARDUINO_PIN_69
|
||||
#endif
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
ARDUINO_A6,
|
||||
ARDUINO_A7,
|
||||
#ifdef CPU_ATMEGA2560
|
||||
ARDUINO_A8,
|
||||
ARDUINO_A9,
|
||||
ARDUINO_A10,
|
||||
ARDUINO_A11,
|
||||
ARDUINO_A12,
|
||||
ARDUINO_A13,
|
||||
ARDUINO_A14,
|
||||
ARDUINO_A15,
|
||||
#endif
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief PWM frequency
|
||||
*/
|
||||
#define ARDUINO_PWM_FREQU (490U)
|
||||
|
||||
/**
|
||||
* @brief List of PWM GPIO mappings
|
||||
*/
|
||||
static const arduino_pwm_t arduino_pwm_list[] = {
|
||||
#if defined(CPU_ATMEGA2560)
|
||||
{ .pin = 13, .dev = PWM_DEV(0), .chan = 0 },
|
||||
{ .pin = 4, .dev = PWM_DEV(0), .chan = 1 },
|
||||
#elif defined(CPU_ATMEGA32U4)
|
||||
{ .pin = 11, .dev = PWM_DEV(0), .chan = 0 },
|
||||
{ .pin = 3, .dev = PWM_DEV(0), .chan = 1 },
|
||||
#else /* CPU_ATMEGA328p */
|
||||
{ .pin = 6, .dev = PWM_DEV(0), .chan = 0 },
|
||||
{ .pin = 5, .dev = PWM_DEV(0), .chan = 1 },
|
||||
#endif
|
||||
#if defined(CPU_ATMEGA2560)
|
||||
{ .pin = 10, .dev = PWM_DEV(1), .chan = 0 },
|
||||
{ .pin = 9, .dev = PWM_DEV(1), .chan = 1 },
|
||||
#else /* CPU_ATMEGA328p */
|
||||
{ .pin = 11, .dev = PWM_DEV(1), .chan = 0 },
|
||||
{ .pin = 3, .dev = PWM_DEV(1), .chan = 1 },
|
||||
#endif
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief F_CPU defines the CPU frequency in Hz.
|
||||
*
|
||||
* This is used in AVR's libc delay.h and setbaud.h
|
||||
*
|
||||
* In RIOT delay() has a different implementation using ztimer, and F_CPU is
|
||||
* already defined when using setbaud.h (see cpu/atmega_common/periph/uart.c)
|
||||
*
|
||||
* However Arduino libraries and sketches may expect F_CPU to be defined and
|
||||
* fail otherwise (for example the Arduino SDI-12 package expects this, for AVR
|
||||
* cpus). For this reason we define F_CPU here, if not already defined.
|
||||
*/
|
||||
#ifndef F_CPU
|
||||
#define F_CPU CLOCK_CORECLOCK
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
332
boards/common/arduino-atmega/include/arduino_iomap.h
Normal file
332
boards/common/arduino-atmega/include/arduino_iomap.h
Normal file
@ -0,0 +1,332 @@
|
||||
/*
|
||||
* Copyright (C) 2015 Freie Universität Berlin
|
||||
* 2016 Laurent Navet <laurent.navet@gmail.com>
|
||||
* 2017 Thomas Perrot <thomas.perrot@tupi.fr>
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino-atmega
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins for Arduino Atmega boards
|
||||
*
|
||||
* You can use the defines in this file for simplified interaction with the
|
||||
* Arduino specific pin numbers.
|
||||
*
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
* @author Daniel Nordahl <nordahl.d@gmail.com>
|
||||
* @author Laurent Navet <laurent.navet@gmail.com>
|
||||
* @author Thomas Perrot <thomas.perrot@tupi.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/adc.h"
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/i2c.h"
|
||||
#include "periph/pwm.h"
|
||||
#include "periph/spi.h"
|
||||
#include "periph/uart.h"
|
||||
#include "periph_conf.h" /* For ADC_NUMOF */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Arduino's UART devices
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_UART_D0D1 UART_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's SPI buses
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief The only hardware SPI is connected to the ISP header
|
||||
*/
|
||||
#define ARDUINO_SPI_ISP SPI_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's I2C buses
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief The only hardware I2C on ATmegas
|
||||
*/
|
||||
#define ARDUINO_I2C0 I2C_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
*
|
||||
* @note ISCP pins are not mapped.
|
||||
* @{
|
||||
*/
|
||||
|
||||
/* Digital pins */
|
||||
#ifdef CPU_ATMEGA328P
|
||||
# define ARDUINO_PIN_0 GPIO_PIN(PORT_D, 0)
|
||||
# define ARDUINO_PIN_1 GPIO_PIN(PORT_D, 1)
|
||||
# define ARDUINO_PIN_2 GPIO_PIN(PORT_D, 2)
|
||||
# define ARDUINO_PIN_3 GPIO_PIN(PORT_D, 3)
|
||||
# define ARDUINO_PIN_4 GPIO_PIN(PORT_D, 4)
|
||||
# define ARDUINO_PIN_5 GPIO_PIN(PORT_D, 5)
|
||||
# define ARDUINO_PIN_6 GPIO_PIN(PORT_D, 6)
|
||||
# define ARDUINO_PIN_7 GPIO_PIN(PORT_D, 7)
|
||||
# define ARDUINO_PIN_8 GPIO_PIN(PORT_B, 0)
|
||||
# define ARDUINO_PIN_9 GPIO_PIN(PORT_B, 1)
|
||||
# define ARDUINO_PIN_10 GPIO_PIN(PORT_B, 2)
|
||||
# define ARDUINO_PIN_11 GPIO_PIN(PORT_B, 3)
|
||||
# define ARDUINO_PIN_12 GPIO_PIN(PORT_B, 4)
|
||||
# define ARDUINO_PIN_13 GPIO_PIN(PORT_B, 5)
|
||||
/* Analog pins as digital pins: */
|
||||
# define ARDUINO_PIN_14 GPIO_PIN(PORT_C, 0)
|
||||
# define ARDUINO_PIN_15 GPIO_PIN(PORT_C, 1)
|
||||
# define ARDUINO_PIN_16 GPIO_PIN(PORT_C, 2)
|
||||
# define ARDUINO_PIN_17 GPIO_PIN(PORT_C, 3)
|
||||
# define ARDUINO_PIN_18 GPIO_PIN(PORT_C, 4)
|
||||
# define ARDUINO_PIN_19 GPIO_PIN(PORT_C, 5)
|
||||
|
||||
# define ARDUINO_PIN_LAST 19
|
||||
|
||||
/* Analog aliases */
|
||||
# define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
# define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
# define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
# define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
# define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
# define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
#endif
|
||||
|
||||
#ifdef CPU_ATMEGA32U4
|
||||
/* Digital pins */
|
||||
# define ARDUINO_PIN_0 GPIO_PIN(PORT_D, 2)
|
||||
# define ARDUINO_PIN_1 GPIO_PIN(PORT_D, 3)
|
||||
# define ARDUINO_PIN_2 GPIO_PIN(PORT_D, 1)
|
||||
# define ARDUINO_PIN_3 GPIO_PIN(PORT_D, 0)
|
||||
# define ARDUINO_PIN_5 GPIO_PIN(PORT_C, 6)
|
||||
# define ARDUINO_PIN_7 GPIO_PIN(PORT_E, 6)
|
||||
# define ARDUINO_PIN_11 GPIO_PIN(PORT_B, 7)
|
||||
# define ARDUINO_PIN_13 GPIO_PIN(PORT_C, 7)
|
||||
# define ARDUINO_PIN_14 GPIO_PIN(PORT_B, 3)
|
||||
# define ARDUINO_PIN_15 GPIO_PIN(PORT_B, 1)
|
||||
# define ARDUINO_PIN_16 GPIO_PIN(PORT_B, 2)
|
||||
# define ARDUINO_PIN_17 GPIO_PIN(PORT_B, 0)
|
||||
# define ARDUINO_PIN_30 GPIO_PIN(PORT_D, 5)
|
||||
|
||||
/* Analog pins as digital pins: */
|
||||
# define ARDUINO_PIN_4 GPIO_PIN(PORT_D, 4)
|
||||
# define ARDUINO_PIN_6 GPIO_PIN(PORT_D, 7)
|
||||
# define ARDUINO_PIN_8 GPIO_PIN(PORT_B, 4)
|
||||
# define ARDUINO_PIN_9 GPIO_PIN(PORT_B, 5)
|
||||
# define ARDUINO_PIN_10 GPIO_PIN(PORT_B, 6)
|
||||
# define ARDUINO_PIN_12 GPIO_PIN(PORT_D, 6)
|
||||
# define ARDUINO_PIN_18 GPIO_PIN(PORT_F, 7)
|
||||
# define ARDUINO_PIN_19 GPIO_PIN(PORT_F, 6)
|
||||
# define ARDUINO_PIN_20 GPIO_PIN(PORT_F, 5)
|
||||
# define ARDUINO_PIN_21 GPIO_PIN(PORT_F, 4)
|
||||
# define ARDUINO_PIN_22 GPIO_PIN(PORT_F, 3)
|
||||
# define ARDUINO_PIN_23 GPIO_PIN(PORT_F, 2)
|
||||
|
||||
# define ARDUINO_PIN_LAST 23
|
||||
|
||||
/* Analog aliases */
|
||||
# define ARDUINO_PIN_A0 ARDUINO_PIN_18
|
||||
# define ARDUINO_PIN_A1 ARDUINO_PIN_19
|
||||
# define ARDUINO_PIN_A2 ARDUINO_PIN_20
|
||||
# define ARDUINO_PIN_A3 ARDUINO_PIN_21
|
||||
# define ARDUINO_PIN_A4 ARDUINO_PIN_22
|
||||
# define ARDUINO_PIN_A5 ARDUINO_PIN_23
|
||||
# define ARDUINO_PIN_A6 ARDUINO_PIN_4
|
||||
# define ARDUINO_PIN_A7 ARDUINO_PIN_6
|
||||
# define ARDUINO_PIN_A8 ARDUINO_PIN_8
|
||||
# define ARDUINO_PIN_A9 ARDUINO_PIN_9
|
||||
# define ARDUINO_PIN_A10 ARDUINO_PIN_10
|
||||
# define ARDUINO_PIN_A11 ARDUINO_PIN_12
|
||||
#endif
|
||||
|
||||
#ifdef CPU_ATMEGA2560
|
||||
/* Digital pins */
|
||||
# define ARDUINO_PIN_0 GPIO_PIN(PORT_E, 0)
|
||||
# define ARDUINO_PIN_1 GPIO_PIN(PORT_E, 1)
|
||||
# define ARDUINO_PIN_2 GPIO_PIN(PORT_E, 4)
|
||||
# define ARDUINO_PIN_3 GPIO_PIN(PORT_E, 5)
|
||||
# define ARDUINO_PIN_4 GPIO_PIN(PORT_G, 5)
|
||||
# define ARDUINO_PIN_5 GPIO_PIN(PORT_E, 3)
|
||||
# define ARDUINO_PIN_6 GPIO_PIN(PORT_H, 3)
|
||||
# define ARDUINO_PIN_7 GPIO_PIN(PORT_H, 4)
|
||||
# define ARDUINO_PIN_8 GPIO_PIN(PORT_H, 5)
|
||||
# define ARDUINO_PIN_9 GPIO_PIN(PORT_H, 6)
|
||||
# define ARDUINO_PIN_10 GPIO_PIN(PORT_B, 4)
|
||||
# define ARDUINO_PIN_11 GPIO_PIN(PORT_B, 5)
|
||||
# define ARDUINO_PIN_12 GPIO_PIN(PORT_B, 6)
|
||||
# define ARDUINO_PIN_13 GPIO_PIN(PORT_B, 7)
|
||||
# define ARDUINO_PIN_14 GPIO_PIN(PORT_J, 1)
|
||||
# define ARDUINO_PIN_15 GPIO_PIN(PORT_J, 0)
|
||||
# define ARDUINO_PIN_16 GPIO_PIN(PORT_H, 1)
|
||||
# define ARDUINO_PIN_17 GPIO_PIN(PORT_H, 0)
|
||||
# define ARDUINO_PIN_18 GPIO_PIN(PORT_D, 3)
|
||||
# define ARDUINO_PIN_19 GPIO_PIN(PORT_D, 2)
|
||||
# define ARDUINO_PIN_20 GPIO_PIN(PORT_D, 1)
|
||||
# define ARDUINO_PIN_21 GPIO_PIN(PORT_D, 0)
|
||||
# define ARDUINO_PIN_22 GPIO_PIN(PORT_A, 0)
|
||||
# define ARDUINO_PIN_23 GPIO_PIN(PORT_A, 1)
|
||||
# define ARDUINO_PIN_24 GPIO_PIN(PORT_A, 2)
|
||||
# define ARDUINO_PIN_25 GPIO_PIN(PORT_A, 3)
|
||||
# define ARDUINO_PIN_26 GPIO_PIN(PORT_A, 4)
|
||||
# define ARDUINO_PIN_27 GPIO_PIN(PORT_A, 5)
|
||||
# define ARDUINO_PIN_28 GPIO_PIN(PORT_A, 6)
|
||||
# define ARDUINO_PIN_29 GPIO_PIN(PORT_A, 7)
|
||||
# define ARDUINO_PIN_30 GPIO_PIN(PORT_C, 7)
|
||||
# define ARDUINO_PIN_31 GPIO_PIN(PORT_C, 6)
|
||||
# define ARDUINO_PIN_32 GPIO_PIN(PORT_C, 5)
|
||||
# define ARDUINO_PIN_33 GPIO_PIN(PORT_C, 4)
|
||||
# define ARDUINO_PIN_34 GPIO_PIN(PORT_C, 3)
|
||||
# define ARDUINO_PIN_35 GPIO_PIN(PORT_C, 2)
|
||||
# define ARDUINO_PIN_36 GPIO_PIN(PORT_C, 1)
|
||||
# define ARDUINO_PIN_37 GPIO_PIN(PORT_E, 0)
|
||||
# define ARDUINO_PIN_38 GPIO_PIN(PORT_D, 7)
|
||||
# define ARDUINO_PIN_39 GPIO_PIN(PORT_G, 2)
|
||||
# define ARDUINO_PIN_40 GPIO_PIN(PORT_G, 1)
|
||||
# define ARDUINO_PIN_41 GPIO_PIN(PORT_G, 0)
|
||||
# define ARDUINO_PIN_42 GPIO_PIN(PORT_L, 7)
|
||||
# define ARDUINO_PIN_43 GPIO_PIN(PORT_L, 6)
|
||||
# define ARDUINO_PIN_44 GPIO_PIN(PORT_L, 5)
|
||||
# define ARDUINO_PIN_45 GPIO_PIN(PORT_L, 4)
|
||||
# define ARDUINO_PIN_46 GPIO_PIN(PORT_L, 3)
|
||||
# define ARDUINO_PIN_47 GPIO_PIN(PORT_L, 2)
|
||||
# define ARDUINO_PIN_48 GPIO_PIN(PORT_L, 1)
|
||||
# define ARDUINO_PIN_49 GPIO_PIN(PORT_L, 0)
|
||||
# define ARDUINO_PIN_50 GPIO_PIN(PORT_B, 3)
|
||||
# define ARDUINO_PIN_51 GPIO_PIN(PORT_B, 2)
|
||||
# define ARDUINO_PIN_52 GPIO_PIN(PORT_B, 1)
|
||||
# define ARDUINO_PIN_53 GPIO_PIN(PORT_B, 0)
|
||||
|
||||
/* Analog pins as digital pins: */
|
||||
# define ARDUINO_PIN_54 GPIO_PIN(PORT_F, 0)
|
||||
# define ARDUINO_PIN_55 GPIO_PIN(PORT_F, 1)
|
||||
# define ARDUINO_PIN_56 GPIO_PIN(PORT_F, 2)
|
||||
# define ARDUINO_PIN_57 GPIO_PIN(PORT_F, 3)
|
||||
# define ARDUINO_PIN_58 GPIO_PIN(PORT_F, 4)
|
||||
# define ARDUINO_PIN_59 GPIO_PIN(PORT_F, 5)
|
||||
# define ARDUINO_PIN_60 GPIO_PIN(PORT_F, 6)
|
||||
# define ARDUINO_PIN_61 GPIO_PIN(PORT_F, 7)
|
||||
# define ARDUINO_PIN_62 GPIO_PIN(PORT_K, 0)
|
||||
# define ARDUINO_PIN_63 GPIO_PIN(PORT_K, 1)
|
||||
# define ARDUINO_PIN_64 GPIO_PIN(PORT_K, 2)
|
||||
# define ARDUINO_PIN_65 GPIO_PIN(PORT_K, 3)
|
||||
# define ARDUINO_PIN_66 GPIO_PIN(PORT_K, 4)
|
||||
# define ARDUINO_PIN_67 GPIO_PIN(PORT_K, 5)
|
||||
# define ARDUINO_PIN_68 GPIO_PIN(PORT_K, 6)
|
||||
# define ARDUINO_PIN_69 GPIO_PIN(PORT_K, 7)
|
||||
|
||||
# define ARDUINO_PIN_LAST 69
|
||||
|
||||
/* Analog aliases */
|
||||
# define ARDUINO_PIN_A0 ARDUINO_PIN_54
|
||||
# define ARDUINO_PIN_A1 ARDUINO_PIN_55
|
||||
# define ARDUINO_PIN_A2 ARDUINO_PIN_56
|
||||
# define ARDUINO_PIN_A3 ARDUINO_PIN_57
|
||||
# define ARDUINO_PIN_A4 ARDUINO_PIN_58
|
||||
# define ARDUINO_PIN_A5 ARDUINO_PIN_59
|
||||
# define ARDUINO_PIN_A6 ARDUINO_PIN_60
|
||||
# define ARDUINO_PIN_A7 ARDUINO_PIN_61
|
||||
# define ARDUINO_PIN_A8 ARDUINO_PIN_62
|
||||
# define ARDUINO_PIN_A9 ARDUINO_PIN_63
|
||||
# define ARDUINO_PIN_A10 ARDUINO_PIN_64
|
||||
# define ARDUINO_PIN_A11 ARDUINO_PIN_65
|
||||
# define ARDUINO_PIN_A12 ARDUINO_PIN_66
|
||||
# define ARDUINO_PIN_A13 ARDUINO_PIN_67
|
||||
# define ARDUINO_PIN_A14 ARDUINO_PIN_68
|
||||
# define ARDUINO_PIN_A15 ARDUINO_PIN_69
|
||||
#endif
|
||||
|
||||
#if ADC_NUMOF >= 8
|
||||
# define ARDUINO_A0 ADC_LINE(0)
|
||||
# define ARDUINO_A1 ADC_LINE(1)
|
||||
# define ARDUINO_A2 ADC_LINE(2)
|
||||
# define ARDUINO_A3 ADC_LINE(3)
|
||||
# define ARDUINO_A4 ADC_LINE(4)
|
||||
# define ARDUINO_A5 ADC_LINE(5)
|
||||
# define ARDUINO_A6 ADC_LINE(6)
|
||||
# define ARDUINO_A7 ADC_LINE(7)
|
||||
#endif
|
||||
#if ADC_NUMOF >= 16
|
||||
# define ARDUINO_A8 ADC_LINE(8)
|
||||
# define ARDUINO_A9 ADC_LINE(9)
|
||||
# define ARDUINO_A10 ADC_LINE(10)
|
||||
# define ARDUINO_A11 ADC_LINE(11)
|
||||
# define ARDUINO_A12 ADC_LINE(12)
|
||||
# define ARDUINO_A13 ADC_LINE(13)
|
||||
# define ARDUINO_A14 ADC_LINE(14)
|
||||
# define ARDUINO_A15 ADC_LINE(15)
|
||||
#endif
|
||||
|
||||
/* Either 8, 16 or 0 ADC lines are configured by all ATmega boards */
|
||||
#if ADC_NUMOF == 8
|
||||
# define ARDUINO_ANALOG_PIN_LAST 7
|
||||
#elif ADC_NUMOF == 16
|
||||
# define ARDUINO_ANALOG_PIN_LAST 15
|
||||
#endif
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of Arduino pins to RIOT PWM dev and channel pairs
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief PWM frequency
|
||||
*/
|
||||
#define ARDUINO_PWM_FREQU (490U)
|
||||
|
||||
/* keep in sync with PWM config in boards/common/atmega/include/periph_conf_atmega_common.h */
|
||||
#if defined(CPU_ATMEGA328P)
|
||||
# define ARDUINO_PIN_6_PWM_DEV PWM_DEV(0)
|
||||
# define ARDUINO_PIN_6_PWM_CHAN 0
|
||||
|
||||
# define ARDUINO_PIN_5_PWM_DEV PWM_DEV(0)
|
||||
# define ARDUINO_PIN_5_PWM_CHAN 1
|
||||
|
||||
# define ARDUINO_PIN_11_PWM_DEV PWM_DEV(1)
|
||||
# define ARDUINO_PIN_11_PWM_CHAN 0
|
||||
|
||||
# define ARDUINO_PIN_3_PWM_DEV PWM_DEV(1)
|
||||
# define ARDUINO_PIN_3_PWM_CHAN 1
|
||||
#elif defined(CPU_ATMEGA2560)
|
||||
# define ARDUINO_PIN_13_PWM_DEV PWM_DEV(0)
|
||||
# define ARDUINO_PIN_13_PWM_CHAN 0
|
||||
|
||||
# define ARDUINO_PIN_4_PWM_DEV PWM_DEV(0)
|
||||
# define ARDUINO_PIN_4_PWM_CHAN 1
|
||||
|
||||
# define ARDUINO_PIN_10_PWM_DEV PWM_DEV(1)
|
||||
# define ARDUINO_PIN_10_PWM_CHAN 0
|
||||
|
||||
# define ARDUINO_PIN_9_PWM_DEV PWM_DEV(1)
|
||||
# define ARDUINO_PIN_9_PWM_CHAN 1
|
||||
#elif defined(CPU_ATMEGA32U4)
|
||||
# define ARDUINO_PIN_11_PWM_DEV PWM_DEV(0)
|
||||
# define ARDUINO_PIN_11_PWM_CHAN 0
|
||||
|
||||
# define ARDUINO_PIN_3_PWM_DEV PWM_DEV(0)
|
||||
# define ARDUINO_PIN_3_PWM_CHAN 1
|
||||
#endif
|
||||
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,235 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2015 Freie Universität Berlin
|
||||
* 2016 Laurent Navet <laurent.navet@gmail.com>
|
||||
* 2017 Thomas Perrot <thomas.perrot@tupi.fr>
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino-atmega
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins for Arduino Atmega boards
|
||||
*
|
||||
* You can use the defines in this file for simplified interaction with the
|
||||
* Arduino specific pin numbers.
|
||||
*
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
* @author Daniel Nordahl <nordahl.d@gmail.com>
|
||||
* @author Laurent Navet <laurent.navet@gmail.com>
|
||||
* @author Thomas Perrot <thomas.perrot@tupi.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
*
|
||||
* @note ISCP pins are not mapped.
|
||||
* @{
|
||||
*/
|
||||
|
||||
/* Digital pins */
|
||||
#ifdef CPU_ATMEGA328P
|
||||
#define ARDUINO_PIN_0 GPIO_PIN(PORT_D, 0)
|
||||
#define ARDUINO_PIN_1 GPIO_PIN(PORT_D, 1)
|
||||
#define ARDUINO_PIN_2 GPIO_PIN(PORT_D, 2)
|
||||
#define ARDUINO_PIN_3 GPIO_PIN(PORT_D, 3)
|
||||
#define ARDUINO_PIN_4 GPIO_PIN(PORT_D, 4)
|
||||
#define ARDUINO_PIN_5 GPIO_PIN(PORT_D, 5)
|
||||
#define ARDUINO_PIN_6 GPIO_PIN(PORT_D, 6)
|
||||
#define ARDUINO_PIN_7 GPIO_PIN(PORT_D, 7)
|
||||
#define ARDUINO_PIN_8 GPIO_PIN(PORT_B, 0)
|
||||
#define ARDUINO_PIN_9 GPIO_PIN(PORT_B, 1)
|
||||
#define ARDUINO_PIN_10 GPIO_PIN(PORT_B, 2)
|
||||
#define ARDUINO_PIN_11 GPIO_PIN(PORT_B, 3)
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PORT_B, 4)
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PORT_B, 5)
|
||||
/* Analog pins */
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PORT_C, 0)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PORT_C, 1)
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PORT_C, 2)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PORT_C, 3)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PORT_C, 4)
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PORT_C, 5)
|
||||
/* Analog input */
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
#endif
|
||||
|
||||
#ifdef CPU_ATMEGA32U4
|
||||
/* Digital pins */
|
||||
#define ARDUINO_PIN_0 GPIO_PIN(PORT_D, 2)
|
||||
#define ARDUINO_PIN_1 GPIO_PIN(PORT_D, 3)
|
||||
#define ARDUINO_PIN_2 GPIO_PIN(PORT_D, 1)
|
||||
#define ARDUINO_PIN_3 GPIO_PIN(PORT_D, 0)
|
||||
#define ARDUINO_PIN_5 GPIO_PIN(PORT_C, 6)
|
||||
#define ARDUINO_PIN_7 GPIO_PIN(PORT_E, 6)
|
||||
#define ARDUINO_PIN_11 GPIO_PIN(PORT_B, 7)
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PORT_C, 7)
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PORT_B, 3)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PORT_B, 1)
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PORT_B, 2)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PORT_B, 0)
|
||||
#define ARDUINO_PIN_30 GPIO_PIN(PORT_D, 5)
|
||||
|
||||
/* Analog pins */
|
||||
#define ARDUINO_PIN_4 GPIO_PIN(PORT_D, 4)
|
||||
#define ARDUINO_PIN_6 GPIO_PIN(PORT_D, 7)
|
||||
#define ARDUINO_PIN_8 GPIO_PIN(PORT_B, 4)
|
||||
#define ARDUINO_PIN_9 GPIO_PIN(PORT_B, 5)
|
||||
#define ARDUINO_PIN_10 GPIO_PIN(PORT_B, 6)
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PORT_D, 6)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PORT_F, 7)
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PORT_F, 6)
|
||||
#define ARDUINO_PIN_20 GPIO_PIN(PORT_F, 5)
|
||||
#define ARDUINO_PIN_21 GPIO_PIN(PORT_F, 4)
|
||||
#define ARDUINO_PIN_22 GPIO_PIN(PORT_F, 3)
|
||||
#define ARDUINO_PIN_23 GPIO_PIN(PORT_F, 2)
|
||||
|
||||
/* Analog input */
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_19
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_20
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_21
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_22
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_23
|
||||
#define ARDUINO_PIN_A6 ARDUINO_PIN_4
|
||||
#define ARDUINO_PIN_A7 ARDUINO_PIN_6
|
||||
#define ARDUINO_PIN_A8 ARDUINO_PIN_8
|
||||
#define ARDUINO_PIN_A9 ARDUINO_PIN_9
|
||||
#define ARDUINO_PIN_A10 ARDUINO_PIN_10
|
||||
#define ARDUINO_PIN_A11 ARDUINO_PIN_12
|
||||
#endif
|
||||
|
||||
#ifdef CPU_ATMEGA2560
|
||||
#define ARDUINO_PIN_0 GPIO_PIN(PORT_E, 0)
|
||||
#define ARDUINO_PIN_1 GPIO_PIN(PORT_E, 1)
|
||||
#define ARDUINO_PIN_2 GPIO_PIN(PORT_E, 4)
|
||||
#define ARDUINO_PIN_3 GPIO_PIN(PORT_E, 5)
|
||||
#define ARDUINO_PIN_4 GPIO_PIN(PORT_G, 5)
|
||||
#define ARDUINO_PIN_5 GPIO_PIN(PORT_E, 3)
|
||||
#define ARDUINO_PIN_6 GPIO_PIN(PORT_H, 3)
|
||||
#define ARDUINO_PIN_7 GPIO_PIN(PORT_H, 4)
|
||||
#define ARDUINO_PIN_8 GPIO_PIN(PORT_H, 5)
|
||||
#define ARDUINO_PIN_9 GPIO_PIN(PORT_H, 6)
|
||||
#define ARDUINO_PIN_10 GPIO_PIN(PORT_B, 4)
|
||||
#define ARDUINO_PIN_11 GPIO_PIN(PORT_B, 5)
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PORT_B, 6)
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PORT_B, 7)
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PORT_J, 1)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PORT_J, 0)
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PORT_H, 1)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PORT_H, 0)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PORT_D, 3)
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PORT_D, 2)
|
||||
#define ARDUINO_PIN_20 GPIO_PIN(PORT_D, 1)
|
||||
#define ARDUINO_PIN_21 GPIO_PIN(PORT_D, 0)
|
||||
#define ARDUINO_PIN_22 GPIO_PIN(PORT_A, 0)
|
||||
#define ARDUINO_PIN_23 GPIO_PIN(PORT_A, 1)
|
||||
#define ARDUINO_PIN_24 GPIO_PIN(PORT_A, 2)
|
||||
#define ARDUINO_PIN_25 GPIO_PIN(PORT_A, 3)
|
||||
#define ARDUINO_PIN_26 GPIO_PIN(PORT_A, 4)
|
||||
#define ARDUINO_PIN_27 GPIO_PIN(PORT_A, 5)
|
||||
#define ARDUINO_PIN_28 GPIO_PIN(PORT_A, 6)
|
||||
#define ARDUINO_PIN_29 GPIO_PIN(PORT_A, 7)
|
||||
#define ARDUINO_PIN_30 GPIO_PIN(PORT_C, 7)
|
||||
#define ARDUINO_PIN_31 GPIO_PIN(PORT_C, 6)
|
||||
#define ARDUINO_PIN_32 GPIO_PIN(PORT_C, 5)
|
||||
#define ARDUINO_PIN_33 GPIO_PIN(PORT_C, 4)
|
||||
#define ARDUINO_PIN_34 GPIO_PIN(PORT_C, 3)
|
||||
#define ARDUINO_PIN_35 GPIO_PIN(PORT_C, 2)
|
||||
#define ARDUINO_PIN_36 GPIO_PIN(PORT_C, 1)
|
||||
#define ARDUINO_PIN_37 GPIO_PIN(PORT_E, 0)
|
||||
#define ARDUINO_PIN_38 GPIO_PIN(PORT_D, 7)
|
||||
#define ARDUINO_PIN_39 GPIO_PIN(PORT_G, 2)
|
||||
#define ARDUINO_PIN_40 GPIO_PIN(PORT_G, 1)
|
||||
#define ARDUINO_PIN_41 GPIO_PIN(PORT_G, 0)
|
||||
#define ARDUINO_PIN_42 GPIO_PIN(PORT_L, 7)
|
||||
#define ARDUINO_PIN_43 GPIO_PIN(PORT_L, 6)
|
||||
#define ARDUINO_PIN_44 GPIO_PIN(PORT_L, 5)
|
||||
#define ARDUINO_PIN_45 GPIO_PIN(PORT_L, 4)
|
||||
#define ARDUINO_PIN_46 GPIO_PIN(PORT_L, 3)
|
||||
#define ARDUINO_PIN_47 GPIO_PIN(PORT_L, 2)
|
||||
#define ARDUINO_PIN_48 GPIO_PIN(PORT_L, 1)
|
||||
#define ARDUINO_PIN_49 GPIO_PIN(PORT_L, 0)
|
||||
#define ARDUINO_PIN_50 GPIO_PIN(PORT_B, 3)
|
||||
#define ARDUINO_PIN_51 GPIO_PIN(PORT_B, 2)
|
||||
#define ARDUINO_PIN_52 GPIO_PIN(PORT_B, 1)
|
||||
#define ARDUINO_PIN_53 GPIO_PIN(PORT_B, 0)
|
||||
#define ARDUINO_PIN_54 GPIO_PIN(PORT_F, 0)
|
||||
#define ARDUINO_PIN_55 GPIO_PIN(PORT_F, 1)
|
||||
#define ARDUINO_PIN_56 GPIO_PIN(PORT_F, 2)
|
||||
#define ARDUINO_PIN_57 GPIO_PIN(PORT_F, 3)
|
||||
#define ARDUINO_PIN_58 GPIO_PIN(PORT_F, 4)
|
||||
#define ARDUINO_PIN_59 GPIO_PIN(PORT_F, 5)
|
||||
#define ARDUINO_PIN_60 GPIO_PIN(PORT_F, 6)
|
||||
#define ARDUINO_PIN_61 GPIO_PIN(PORT_F, 7)
|
||||
#define ARDUINO_PIN_62 GPIO_PIN(PORT_K, 0)
|
||||
#define ARDUINO_PIN_63 GPIO_PIN(PORT_K, 1)
|
||||
#define ARDUINO_PIN_64 GPIO_PIN(PORT_K, 2)
|
||||
#define ARDUINO_PIN_65 GPIO_PIN(PORT_K, 3)
|
||||
#define ARDUINO_PIN_66 GPIO_PIN(PORT_K, 4)
|
||||
#define ARDUINO_PIN_67 GPIO_PIN(PORT_K, 5)
|
||||
#define ARDUINO_PIN_68 GPIO_PIN(PORT_K, 6)
|
||||
#define ARDUINO_PIN_69 GPIO_PIN(PORT_K, 7)
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_54
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_55
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_56
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_57
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_58
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_59
|
||||
#define ARDUINO_PIN_A6 ARDUINO_PIN_60
|
||||
#define ARDUINO_PIN_A7 ARDUINO_PIN_61
|
||||
#define ARDUINO_PIN_A8 ARDUINO_PIN_62
|
||||
#define ARDUINO_PIN_A9 ARDUINO_PIN_63
|
||||
#define ARDUINO_PIN_A10 ARDUINO_PIN_64
|
||||
#define ARDUINO_PIN_A11 ARDUINO_PIN_65
|
||||
#define ARDUINO_PIN_A12 ARDUINO_PIN_66
|
||||
#define ARDUINO_PIN_A13 ARDUINO_PIN_67
|
||||
#define ARDUINO_PIN_A14 ARDUINO_PIN_68
|
||||
#define ARDUINO_PIN_A15 ARDUINO_PIN_69
|
||||
#endif
|
||||
|
||||
#define ARDUINO_A0 ADC_LINE(0)
|
||||
#define ARDUINO_A1 ADC_LINE(1)
|
||||
#define ARDUINO_A2 ADC_LINE(2)
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
#define ARDUINO_A6 ADC_LINE(6)
|
||||
#define ARDUINO_A7 ADC_LINE(7)
|
||||
#ifdef CPU_ATMEGA2560
|
||||
#define ARDUINO_A8 ADC_LINE(8)
|
||||
#define ARDUINO_A9 ADC_LINE(9)
|
||||
#define ARDUINO_A10 ADC_LINE(10)
|
||||
#define ARDUINO_A11 ADC_LINE(11)
|
||||
#define ARDUINO_A12 ADC_LINE(12)
|
||||
#define ARDUINO_A13 ADC_LINE(13)
|
||||
#define ARDUINO_A14 ADC_LINE(14)
|
||||
#define ARDUINO_A15 ADC_LINE(15)
|
||||
#endif
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -7,7 +7,15 @@
|
||||
config BOARD_COMMON_ARDUINO_DUE
|
||||
bool
|
||||
select CPU_MODEL_SAM3X8E
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_DAC
|
||||
select HAS_ARDUINO_I2C
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ARDUINO_SHIELD_ISP
|
||||
select HAS_ARDUINO_SHIELD_MEGA
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
select HAS_ARDUINO_SPI
|
||||
select HAS_ARDUINO_UART
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_DAC
|
||||
select HAS_PERIPH_GPIO
|
||||
|
@ -12,4 +12,12 @@ FEATURES_PROVIDED += periph_timer
|
||||
FEATURES_PROVIDED += periph_uart
|
||||
|
||||
# Various other features (if any)
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_dac
|
||||
FEATURES_PROVIDED += arduino_i2c
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += arduino_shield_isp
|
||||
FEATURES_PROVIDED += arduino_shield_mega
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
FEATURES_PROVIDED += arduino_spi
|
||||
FEATURES_PROVIDED += arduino_uart
|
||||
|
@ -1,141 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016,2017 Freie Universität Berlin
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino_due
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 13 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (13)
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_14,
|
||||
ARDUINO_PIN_15,
|
||||
ARDUINO_PIN_16,
|
||||
ARDUINO_PIN_17,
|
||||
ARDUINO_PIN_18,
|
||||
ARDUINO_PIN_19,
|
||||
ARDUINO_PIN_20,
|
||||
ARDUINO_PIN_21,
|
||||
ARDUINO_PIN_22,
|
||||
ARDUINO_PIN_23,
|
||||
ARDUINO_PIN_24,
|
||||
ARDUINO_PIN_25,
|
||||
ARDUINO_PIN_26,
|
||||
ARDUINO_PIN_27,
|
||||
ARDUINO_PIN_28,
|
||||
ARDUINO_PIN_29,
|
||||
ARDUINO_PIN_30,
|
||||
ARDUINO_PIN_31,
|
||||
ARDUINO_PIN_32,
|
||||
ARDUINO_PIN_33,
|
||||
ARDUINO_PIN_34,
|
||||
ARDUINO_PIN_35,
|
||||
ARDUINO_PIN_36,
|
||||
ARDUINO_PIN_37,
|
||||
ARDUINO_PIN_38,
|
||||
ARDUINO_PIN_39,
|
||||
ARDUINO_PIN_40,
|
||||
ARDUINO_PIN_41,
|
||||
ARDUINO_PIN_42,
|
||||
ARDUINO_PIN_43,
|
||||
ARDUINO_PIN_44,
|
||||
ARDUINO_PIN_45,
|
||||
ARDUINO_PIN_46,
|
||||
ARDUINO_PIN_47,
|
||||
ARDUINO_PIN_48,
|
||||
ARDUINO_PIN_49,
|
||||
ARDUINO_PIN_50,
|
||||
ARDUINO_PIN_51,
|
||||
ARDUINO_PIN_52,
|
||||
ARDUINO_PIN_53,
|
||||
ARDUINO_PIN_54,
|
||||
ARDUINO_PIN_55,
|
||||
ARDUINO_PIN_56,
|
||||
ARDUINO_PIN_57,
|
||||
ARDUINO_PIN_58,
|
||||
ARDUINO_PIN_59,
|
||||
ARDUINO_PIN_60,
|
||||
ARDUINO_PIN_61,
|
||||
ARDUINO_PIN_62,
|
||||
ARDUINO_PIN_63,
|
||||
ARDUINO_PIN_64,
|
||||
ARDUINO_PIN_65,
|
||||
ARDUINO_PIN_66,
|
||||
ARDUINO_PIN_67,
|
||||
ARDUINO_PIN_68,
|
||||
ARDUINO_PIN_69,
|
||||
ARDUINO_PIN_70,
|
||||
ARDUINO_PIN_71,
|
||||
ARDUINO_PIN_72,
|
||||
ARDUINO_PIN_73,
|
||||
ARDUINO_PIN_74,
|
||||
ARDUINO_PIN_75,
|
||||
ARDUINO_PIN_76,
|
||||
ARDUINO_PIN_77,
|
||||
ARDUINO_PIN_78,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
ARDUINO_A6,
|
||||
ARDUINO_A7,
|
||||
ARDUINO_A8,
|
||||
ARDUINO_A9,
|
||||
ARDUINO_A10,
|
||||
ARDUINO_A11,
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
@ -19,16 +19,46 @@
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/i2c.h"
|
||||
#include "periph/spi.h"
|
||||
#include "periph/uart.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Arduino's default UART device
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_UART_D0D1 UART_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's default SPI device
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief SPI_DEV(0) is connected to the ISP header
|
||||
*/
|
||||
#define ARDUINO_SPI_ISP SPI_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's I2C buses
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief The only configured I2C
|
||||
*/
|
||||
#define ARDUINO_I2C0 I2C_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
@ -112,6 +142,28 @@ extern "C" {
|
||||
#define ARDUINO_PIN_76 GPIO_PIN(PA, 27)
|
||||
#define ARDUINO_PIN_77 GPIO_PIN(PA, 28)
|
||||
#define ARDUINO_PIN_78 GPIO_PIN(PB, 23)
|
||||
|
||||
#define ARDUINO_PIN_LAST 78
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_54
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_55
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_56
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_57
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_58
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_59
|
||||
#define ARDUINO_PIN_A6 ARDUINO_PIN_60
|
||||
#define ARDUINO_PIN_A7 ARDUINO_PIN_61
|
||||
#define ARDUINO_PIN_A8 ARDUINO_PIN_62
|
||||
#define ARDUINO_PIN_A9 ARDUINO_PIN_63
|
||||
#define ARDUINO_PIN_A10 ARDUINO_PIN_64
|
||||
#define ARDUINO_PIN_A11 ARDUINO_PIN_65
|
||||
#define ARDUINO_PIN_DAC0 ARDUINO_PIN_66
|
||||
#define ARDUINO_PIN_DAC1 ARDUINO_PIN_67
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
@ -130,6 +182,8 @@ extern "C" {
|
||||
#define ARDUINO_A9 ADC_LINE(11)
|
||||
#define ARDUINO_A10 ADC_LINE(12)
|
||||
#define ARDUINO_A11 ADC_LINE(13)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 11
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
@ -138,11 +192,13 @@ extern "C" {
|
||||
*/
|
||||
#define ARDUINO_DAC0 DAC_LINE(0)
|
||||
#define ARDUINO_DAC1 DAC_LINE(1)
|
||||
|
||||
#define ARDUINO_DAC_PIN_LAST 1 /**< DAC1 is the last DAC pin */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -16,7 +16,8 @@ config BOARD_COMMON_ARDUINO_MKR
|
||||
select HAS_PERIPH_TIMER
|
||||
select HAS_PERIPH_UART
|
||||
select HAS_PERIPH_USBDEV
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ARDUINO_PWM
|
||||
select HAS_HIGHLEVEL_STDIO
|
||||
|
||||
|
@ -14,6 +14,7 @@ FEATURES_PROVIDED += periph_uart
|
||||
FEATURES_PROVIDED += periph_usbdev
|
||||
|
||||
# Various other features (if any)
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += arduino_pwm
|
||||
FEATURES_PROVIDED += highlevel_stdio
|
||||
|
@ -1,97 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Freie Universität Berlin
|
||||
* 2016-2017 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino-mkr
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
#include "periph/pwm.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief On-board serial port mapping, stdio is used for Serial
|
||||
*/
|
||||
#ifndef ARDUINO_UART_DEV
|
||||
#define ARDUINO_UART_DEV UART_UNDEF
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_14,
|
||||
ARDUINO_PIN_A0,
|
||||
ARDUINO_PIN_A1,
|
||||
ARDUINO_PIN_A2,
|
||||
ARDUINO_PIN_A3,
|
||||
ARDUINO_PIN_A4,
|
||||
ARDUINO_PIN_A5,
|
||||
ARDUINO_PIN_A6,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
ARDUINO_A6,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief PWM frequency
|
||||
*/
|
||||
#define ARDUINO_PWM_FREQU (732U)
|
||||
|
||||
/**
|
||||
* @brief List of PWM GPIO mappings
|
||||
*/
|
||||
static const arduino_pwm_t arduino_pwm_list[] = {
|
||||
{ .pin = 2, .dev = PWM_DEV(0), .chan = 0 },
|
||||
{ .pin = 3, .dev = PWM_DEV(0), .chan = 1 },
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
119
boards/common/arduino-mkr/include/arduino_iomap.h
Normal file
119
boards/common/arduino-mkr/include/arduino_iomap.h
Normal file
@ -0,0 +1,119 @@
|
||||
/*
|
||||
* Copyright (C) 2016-2017 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino-mkr
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* You can use the defines in this file for simplified interaction with the
|
||||
* Arduino specific pin numbers.
|
||||
*
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin D6 on Arduino MKR derivatives
|
||||
*/
|
||||
#define ARDUINO_LED (6U)
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO_PIN(PA, 22) /**< TC4-W0 */
|
||||
#define ARDUINO_PIN_1 GPIO_PIN(PA, 23) /**< TC4-W1 */
|
||||
#define ARDUINO_PIN_2 GPIO_PIN(PA, 10) /**< TCC0-W2 */
|
||||
#define ARDUINO_PIN_3 GPIO_PIN(PA, 11) /**< TCC0-W3 */
|
||||
#define ARDUINO_PIN_4 GPIO_PIN(PB, 10) /**< TCC0-W4 */
|
||||
#define ARDUINO_PIN_5 GPIO_PIN(PB, 11) /**< TCC0-W5 */
|
||||
#define ARDUINO_PIN_6 GPIO_PIN(PA, 20) /**< TCC0-W6, on-board LED */
|
||||
#define ARDUINO_PIN_7 GPIO_PIN(PA, 21) /**< TCC0-W7 */
|
||||
|
||||
#define ARDUINO_PIN_8 GPIO_PIN(PA, 16) /**< SERCOM1-MOSI */
|
||||
#define ARDUINO_PIN_9 GPIO_PIN(PA, 17) /**< SERCOM1-SCK */
|
||||
#define ARDUINO_PIN_10 GPIO_PIN(PA, 19) /**< SERCOM1-MISO */
|
||||
#define ARDUINO_PIN_11 GPIO_PIN(PA, 8) /**< SERCOM0-SDA, on-board pull-up */
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PA, 9) /**< SERCOM0-SCL, on-board pull-up */
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PB, 23) /**< SERCOM5-RX from MCU */
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PB, 22) /**< SERCOM5-TX from MCU */
|
||||
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PA, 2) /**< AIN0, DAC0 */
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PB, 2) /**< AIN10 */
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PB, 3) /**< AIN11 */
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PA, 4) /**< AIN4 */
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PA, 5) /**< AIN5 */
|
||||
#define ARDUINO_PIN_20 GPIO_PIN(PA, 6) /**< AIN6 */
|
||||
#define ARDUINO_PIN_21 GPIO_PIN(PA, 7) /**< AIN7 */
|
||||
|
||||
#define ARDUINO_PIN_LAST 21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_19
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_20
|
||||
#define ARDUINO_PIN_A6 ARDUINO_PIN_21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of Arduino analog pins to RIOT ADC lines
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_A0 ADC_LINE(0)
|
||||
#define ARDUINO_A1 ADC_LINE(1)
|
||||
#define ARDUINO_A2 ADC_LINE(2)
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
#define ARDUINO_A6 ADC_LINE(6)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 6
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of Arduino pins to RIOT PWM dev and channel pairs
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief PWM frequency
|
||||
*/
|
||||
#define ARDUINO_PWM_FREQU (732U)
|
||||
|
||||
#define ARDUINO_PIN_2_PWM_DEV PWM_DEV(0)
|
||||
#define ARDUINO_PIN_2_PWM_CHAN 0
|
||||
|
||||
#define ARDUINO_PIN_3_PWM_DEV PWM_DEV(0)
|
||||
#define ARDUINO_PIN_3_PWM_CHAN 1
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,80 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016-2017 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino-mkr
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* You can use the defines in this file for simplified interaction with the
|
||||
* Arduino specific pin numbers.
|
||||
*
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO_PIN(PA, 22) /* TC4-W0 */
|
||||
#define ARDUINO_PIN_1 GPIO_PIN(PA, 23) /* TC4-W1 */
|
||||
#define ARDUINO_PIN_2 GPIO_PIN(PA, 10) /* TCC0-W2 */
|
||||
#define ARDUINO_PIN_3 GPIO_PIN(PA, 11) /* TCC0-W3 */
|
||||
#define ARDUINO_PIN_4 GPIO_PIN(PB, 10) /* TCC0-W4 */
|
||||
#define ARDUINO_PIN_5 GPIO_PIN(PB, 11) /* TCC0-W5 */
|
||||
#define ARDUINO_PIN_6 GPIO_PIN(PA, 20) /* TCC0-W6, on-board LED */
|
||||
#define ARDUINO_PIN_7 GPIO_PIN(PA, 21) /* TCC0-W7 */
|
||||
|
||||
#define ARDUINO_PIN_8 GPIO_PIN(PA, 16) /* SERCOM1-MOSI */
|
||||
#define ARDUINO_PIN_9 GPIO_PIN(PA, 17) /* SERCOM1-SCK */
|
||||
#define ARDUINO_PIN_10 GPIO_PIN(PA, 19) /* SERCOM1-MISO */
|
||||
#define ARDUINO_PIN_11 GPIO_PIN(PA, 8) /* SERCOM0-SDA, on-board pull-up */
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PA, 9) /* SERCOM0-SCL, on-board pull-up */
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PB, 23) /* SERCOM5-RX from MCU */
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PB, 22) /* SERCOM5-TX from MCU */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO_PIN(PA, 2) /* AIN0, DAC0 */
|
||||
#define ARDUINO_PIN_A1 GPIO_PIN(PB, 2) /* AIN10 */
|
||||
#define ARDUINO_PIN_A2 GPIO_PIN(PB, 3) /* AIN11 */
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PA, 4) /* AIN4 */
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PA, 5) /* AIN5 */
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PA, 6) /* AIN6 */
|
||||
#define ARDUINO_PIN_A6 GPIO_PIN(PA, 7) /* AIN7 */
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of Arduino analog pins to RIOT ADC lines
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_A0 ADC_LINE(0)
|
||||
#define ARDUINO_A1 ADC_LINE(1)
|
||||
#define ARDUINO_A2 ADC_LINE(2)
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
#define ARDUINO_A6 ADC_LINE(6)
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -16,8 +16,14 @@ config BOARD_COMMON_ARDUINO_ZERO
|
||||
select HAS_PERIPH_TIMER
|
||||
select HAS_PERIPH_UART
|
||||
select HAS_PERIPH_USBDEV
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_I2C
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ARDUINO_PWM
|
||||
select HAS_ARDUINO_SHIELD_ISP
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
select HAS_ARDUINO_SPI
|
||||
select HAS_ARDUINO_UART
|
||||
|
||||
select HAVE_SAUL_GPIO
|
||||
|
||||
|
@ -13,5 +13,11 @@ FEATURES_PROVIDED += periph_uart
|
||||
FEATURES_PROVIDED += periph_usbdev
|
||||
|
||||
# Various other features (if any)
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_i2c
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += arduino_pwm
|
||||
FEATURES_PROVIDED += arduino_shield_isp
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
FEATURES_PROVIDED += arduino_spi
|
||||
FEATURES_PROVIDED += arduino_uart
|
||||
|
@ -1,94 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Freie Universität Berlin
|
||||
* 2016 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino_zero
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
#include "periph/pwm.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 13 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (13)
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_A0,
|
||||
ARDUINO_PIN_A1,
|
||||
ARDUINO_PIN_A2,
|
||||
ARDUINO_PIN_A3,
|
||||
ARDUINO_PIN_A4,
|
||||
ARDUINO_PIN_A5,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief PWM frequency
|
||||
*/
|
||||
#define ARDUINO_PWM_FREQU (732U)
|
||||
|
||||
/**
|
||||
* @brief List of PWM GPIO mappings
|
||||
*/
|
||||
static const arduino_pwm_t arduino_pwm_list[] = {
|
||||
{ .pin = 3, .dev = PWM_DEV(0), .chan = 1 },
|
||||
{ .pin = 4, .dev = PWM_DEV(0), .chan = 0 },
|
||||
{ .pin = 8, .dev = PWM_DEV(1), .chan = 0 },
|
||||
{ .pin = 9, .dev = PWM_DEV(1), .chan = 1 },
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
147
boards/common/arduino-zero/include/arduino_iomap.h
Normal file
147
boards/common/arduino-zero/include/arduino_iomap.h
Normal file
@ -0,0 +1,147 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino_zero
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* You can use the defines in this file for simplified interaction with the
|
||||
* Arduino specific pin numbers.
|
||||
*
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/adc.h"
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/i2c.h"
|
||||
#include "periph/pwm.h"
|
||||
#include "periph/spi.h"
|
||||
#include "periph/uart.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Arduino's UART devices
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_UART_D0D1 UART_DEV(1)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's SPI buses
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief SPI_DEV(0) is connected to the ISP header
|
||||
*/
|
||||
#define ARDUINO_SPI_ISP SPI_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's I2C buses
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief The first I2C bus is next to the AREF pin
|
||||
*/
|
||||
#define ARDUINO_I2C_UNO I2C_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO_PIN(PA, 11)
|
||||
#define ARDUINO_PIN_1 GPIO_PIN(PA, 10)
|
||||
#define ARDUINO_PIN_2 GPIO_PIN(PA, 14)
|
||||
#define ARDUINO_PIN_3 GPIO_PIN(PA, 9)
|
||||
#define ARDUINO_PIN_4 GPIO_PIN(PA, 8)
|
||||
#define ARDUINO_PIN_5 GPIO_PIN(PA, 15)
|
||||
#define ARDUINO_PIN_6 GPIO_PIN(PA, 20)
|
||||
#define ARDUINO_PIN_7 GPIO_PIN(PA, 21)
|
||||
|
||||
#define ARDUINO_PIN_8 GPIO_PIN(PA, 6)
|
||||
#define ARDUINO_PIN_9 GPIO_PIN(PA, 7)
|
||||
#define ARDUINO_PIN_10 GPIO_PIN(PA, 18)
|
||||
#define ARDUINO_PIN_11 GPIO_PIN(PA, 16)
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PA, 19)
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PA, 17) /* on-board LED */
|
||||
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PA, 2)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PB, 8)
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PB, 9)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PA, 4)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PA, 5)
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PB, 2)
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of Arduino analog pins to RIOT ADC lines
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_A0 ADC_LINE(0)
|
||||
#define ARDUINO_A1 ADC_LINE(1)
|
||||
#define ARDUINO_A2 ADC_LINE(2)
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 5
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of Arduino pins to RIOT PWM dev and channel pairs
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief PWM frequency
|
||||
*/
|
||||
#define ARDUINO_PWM_FREQU (732U)
|
||||
|
||||
#define ARDUINO_PIN_3_PWM_DEV PWM_DEV(0)
|
||||
#define ARDUINO_PIN_3_PWM_CHAN 1
|
||||
|
||||
#define ARDUINO_PIN_4_PWM_DEV PWM_DEV(0)
|
||||
#define ARDUINO_PIN_4_PWM_CHAN 0
|
||||
|
||||
#define ARDUINO_PIN_8_PWM_DEV PWM_DEV(1)
|
||||
#define ARDUINO_PIN_8_PWM_CHAN 0
|
||||
|
||||
#define ARDUINO_PIN_9_PWM_DEV PWM_DEV(1)
|
||||
#define ARDUINO_PIN_9_PWM_CHAN 1
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,77 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_arduino_zero
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* You can use the defines in this file for simplified interaction with the
|
||||
* Arduino specific pin numbers.
|
||||
*
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO_PIN(PA, 11)
|
||||
#define ARDUINO_PIN_1 GPIO_PIN(PA, 10)
|
||||
#define ARDUINO_PIN_2 GPIO_PIN(PA, 14)
|
||||
#define ARDUINO_PIN_3 GPIO_PIN(PA, 9)
|
||||
#define ARDUINO_PIN_4 GPIO_PIN(PA, 8)
|
||||
#define ARDUINO_PIN_5 GPIO_PIN(PA, 15)
|
||||
#define ARDUINO_PIN_6 GPIO_PIN(PA, 20)
|
||||
#define ARDUINO_PIN_7 GPIO_PIN(PA, 21)
|
||||
|
||||
#define ARDUINO_PIN_8 GPIO_PIN(PA, 6)
|
||||
#define ARDUINO_PIN_9 GPIO_PIN(PA, 7)
|
||||
#define ARDUINO_PIN_10 GPIO_PIN(PA, 18)
|
||||
#define ARDUINO_PIN_11 GPIO_PIN(PA, 16)
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PA, 19)
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PA, 17) /* on-board LED */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO_PIN(PA, 2)
|
||||
#define ARDUINO_PIN_A1 GPIO_PIN(PB, 8)
|
||||
#define ARDUINO_PIN_A2 GPIO_PIN(PB, 9)
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PA, 4)
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PA, 5)
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PB, 2)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Mapping of Arduino analog pins to RIOT ADC lines
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_A0 ADC_LINE(0)
|
||||
#define ARDUINO_A1 ADC_LINE(1)
|
||||
#define ARDUINO_A2 ADC_LINE(2)
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -6,7 +6,7 @@
|
||||
|
||||
config BOARD_COMMON_ESP8266
|
||||
bool
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_I2C
|
||||
select HAS_PERIPH_PWM
|
||||
|
@ -8,4 +8,4 @@ FEATURES_PROVIDED += periph_pwm
|
||||
FEATURES_PROVIDED += periph_spi
|
||||
FEATURES_PROVIDED += periph_uart
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -7,7 +7,10 @@
|
||||
|
||||
config BOARD_COMMON_NUCLEO144
|
||||
bool
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ARDUINO_SHIELD_MEGA
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
|
||||
# Clock configuration
|
||||
select BOARD_HAS_HSE if !CPU_FAM_L4 && !CPU_FAM_L5
|
||||
|
@ -1,2 +1,5 @@
|
||||
# Various common features of Nucleo-144 boards
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += arduino_shield_mega
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
|
@ -1,73 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2017 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_nucleo144
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_14,
|
||||
ARDUINO_PIN_15,
|
||||
ARDUINO_PIN_A0,
|
||||
ARDUINO_PIN_A1,
|
||||
ARDUINO_PIN_A2,
|
||||
ARDUINO_PIN_A3,
|
||||
ARDUINO_PIN_A4,
|
||||
ARDUINO_PIN_A5,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
@ -19,8 +19,8 @@
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
@ -57,23 +57,37 @@ extern "C" {
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PORT_B, 8)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PORT_B, 9)
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO_PIN(PORT_A, 3)
|
||||
#define ARDUINO_PIN_A1 GPIO_PIN(PORT_C, 0)
|
||||
#define ARDUINO_PIN_A2 GPIO_PIN(PORT_C, 3)
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PORT_A, 3)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PORT_C, 0)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PORT_C, 3)
|
||||
#if defined(CPU_MODEL_STM32F413ZH) || defined(CPU_MODEL_STM32F412ZG) || \
|
||||
defined(CPU_MODEL_STM32L496ZG)
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PORT_C, 1)
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PORT_C, 4)
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PORT_C, 5)
|
||||
# define ARDUINO_PIN_19 GPIO_PIN(PORT_C, 1)
|
||||
# define ARDUINO_PIN_20 GPIO_PIN(PORT_C, 4)
|
||||
# define ARDUINO_PIN_21 GPIO_PIN(PORT_C, 5)
|
||||
#elif defined(CPU_MODEL_STM32F303ZE)
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PORT_D, 11)
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PORT_D, 12)
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PORT_D, 13)
|
||||
# define ARDUINO_PIN_19 GPIO_PIN(PORT_D, 11)
|
||||
# define ARDUINO_PIN_20 GPIO_PIN(PORT_D, 12)
|
||||
# define ARDUINO_PIN_21 GPIO_PIN(PORT_D, 13)
|
||||
#else
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PORT_F, 3)
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PORT_F, 5)
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PORT_F, 10)
|
||||
# define ARDUINO_PIN_19 GPIO_PIN(PORT_F, 3)
|
||||
# define ARDUINO_PIN_20 GPIO_PIN(PORT_F, 5)
|
||||
# define ARDUINO_PIN_21 GPIO_PIN(PORT_F, 10)
|
||||
#endif
|
||||
|
||||
#define ARDUINO_PIN_LAST 21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_19
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_20
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
@ -86,11 +100,13 @@ extern "C" {
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 5
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -7,7 +7,9 @@
|
||||
|
||||
config BOARD_COMMON_NUCLEO32
|
||||
bool
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ARDUINO_SHIELD_NANO
|
||||
|
||||
# Clock configuration
|
||||
select BOARD_HAS_LSE if (CPU_FAM_L0 || CPU_FAM_L4) && !BOARD_NUCLEO_L011K4
|
||||
|
@ -1,2 +1,4 @@
|
||||
# Various common features of Nucleo boards
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += arduino_shield_nano
|
||||
|
@ -1,80 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2017 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_nucleo32
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 13 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (13)
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_A0,
|
||||
ARDUINO_PIN_A1,
|
||||
ARDUINO_PIN_A2,
|
||||
ARDUINO_PIN_A3,
|
||||
ARDUINO_PIN_A4,
|
||||
ARDUINO_PIN_A5,
|
||||
ARDUINO_PIN_A6,
|
||||
ARDUINO_PIN_A7
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
ARDUINO_A6,
|
||||
ARDUINO_A7,
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
@ -19,8 +19,8 @@
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
@ -54,14 +54,31 @@ extern "C" {
|
||||
#define ARDUINO_PIN_12 GPIO_PIN(PORT_B, 4)
|
||||
#define ARDUINO_PIN_13 GPIO_PIN(PORT_B, 3) /* on-board LED */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO_PIN(PORT_A, 0)
|
||||
#define ARDUINO_PIN_A1 GPIO_PIN(PORT_A, 1)
|
||||
#define ARDUINO_PIN_A2 GPIO_PIN(PORT_A, 3)
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PORT_A, 4)
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PORT_A, 5)
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PORT_A, 6)
|
||||
#define ARDUINO_PIN_A6 GPIO_PIN(PORT_A, 7)
|
||||
#define ARDUINO_PIN_A7 GPIO_PIN(PORT_A, 2)
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PORT_A, 0)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PORT_A, 1)
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PORT_A, 3)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PORT_A, 4)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PORT_A, 5)
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PORT_A, 6)
|
||||
#define ARDUINO_PIN_20 GPIO_PIN(PORT_A, 7)
|
||||
#define ARDUINO_PIN_21 GPIO_PIN(PORT_A, 2)
|
||||
|
||||
#define ARDUINO_PIN_LAST 21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
#define ARDUINO_PIN_A6 ARDUINO_PIN_20
|
||||
#define ARDUINO_PIN_A7 ARDUINO_PIN_21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
@ -76,11 +93,13 @@ extern "C" {
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
#define ARDUINO_A6 ADC_LINE(6)
|
||||
#define ARDUINO_A7 ADC_LINE(7)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 7
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -7,7 +7,12 @@
|
||||
|
||||
config BOARD_COMMON_NUCLEO64
|
||||
bool
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_I2C
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ARDUINO_SHIELD_UNO
|
||||
select HAS_ARDUINO_SPI
|
||||
select HAS_ARDUINO_UART
|
||||
|
||||
# Clock configuration
|
||||
select BOARD_HAS_HSE if !CPU_FAM_G0 && !CPU_FAM_L0 && !CPU_FAM_L1 && !CPU_FAM_L4
|
||||
|
@ -1,2 +1,7 @@
|
||||
# Various common features of Nucleo boards
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_i2c
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += arduino_shield_uno
|
||||
FEATURES_PROVIDED += arduino_spi
|
||||
FEATURES_PROVIDED += arduino_uart
|
||||
|
@ -1,78 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Freie Universität Berlin
|
||||
* 2016 Inria
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_nucleo64
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to pin 13 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (13)
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's digital pins
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3,
|
||||
ARDUINO_PIN_4,
|
||||
ARDUINO_PIN_5,
|
||||
ARDUINO_PIN_6,
|
||||
ARDUINO_PIN_7,
|
||||
ARDUINO_PIN_8,
|
||||
ARDUINO_PIN_9,
|
||||
ARDUINO_PIN_10,
|
||||
ARDUINO_PIN_11,
|
||||
ARDUINO_PIN_12,
|
||||
ARDUINO_PIN_13,
|
||||
ARDUINO_PIN_A0,
|
||||
ARDUINO_PIN_A1,
|
||||
ARDUINO_PIN_A2,
|
||||
ARDUINO_PIN_A3,
|
||||
ARDUINO_PIN_A4,
|
||||
ARDUINO_PIN_A5,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Look-up table for the Arduino's analog pins
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0,
|
||||
ARDUINO_A1,
|
||||
ARDUINO_A2,
|
||||
ARDUINO_A3,
|
||||
ARDUINO_A4,
|
||||
ARDUINO_A5,
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
@ -19,8 +19,8 @@
|
||||
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
@ -29,6 +29,33 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Arduino's UART devices
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_UART_D0D1 UART_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's SPI buses
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief SPI_DEV(1) is connected to D11/D12/D13
|
||||
*/
|
||||
#define ARDUINO_SPI_D11D12D13 SPI_DEV(1)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Arduino's I2C buses
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief The first I2C bus is where shields for the Arduino UNO expect it
|
||||
*/
|
||||
#define ARDUINO_I2C_UNO I2C_DEV(0)
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
@ -57,12 +84,27 @@ extern "C" {
|
||||
#define ARDUINO_PIN_14 GPIO_PIN(PORT_B, 9)
|
||||
#define ARDUINO_PIN_15 GPIO_PIN(PORT_B, 8)
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO_PIN(PORT_A, 0)
|
||||
#define ARDUINO_PIN_A1 GPIO_PIN(PORT_A, 1)
|
||||
#define ARDUINO_PIN_A2 GPIO_PIN(PORT_A, 4)
|
||||
#define ARDUINO_PIN_A3 GPIO_PIN(PORT_B, 0)
|
||||
#define ARDUINO_PIN_A4 GPIO_PIN(PORT_C, 1)
|
||||
#define ARDUINO_PIN_A5 GPIO_PIN(PORT_C, 0)
|
||||
/* analog pins as digital pins: */
|
||||
#define ARDUINO_PIN_16 GPIO_PIN(PORT_A, 0)
|
||||
#define ARDUINO_PIN_17 GPIO_PIN(PORT_A, 1)
|
||||
#define ARDUINO_PIN_18 GPIO_PIN(PORT_A, 4)
|
||||
#define ARDUINO_PIN_19 GPIO_PIN(PORT_B, 0)
|
||||
#define ARDUINO_PIN_20 GPIO_PIN(PORT_C, 1)
|
||||
#define ARDUINO_PIN_21 GPIO_PIN(PORT_C, 0)
|
||||
|
||||
#define ARDUINO_PIN_LAST 21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_19
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_20
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_21
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
@ -75,11 +117,13 @@ extern "C" {
|
||||
#define ARDUINO_A3 ADC_LINE(3)
|
||||
#define ARDUINO_A4 ADC_LINE(4)
|
||||
#define ARDUINO_A5 ADC_LINE(5)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 5
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -6,7 +6,8 @@
|
||||
|
||||
config BOARD_COMMON_SILABS
|
||||
bool
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_ANALOG
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_EFM32_CORETEMP
|
||||
select HAS_RIOTBOOT
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
CPU = efm32
|
||||
|
||||
# Various other features (if any)
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_analog
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += efm32_coretemp
|
||||
FEATURES_PROVIDED += riotboot
|
||||
|
@ -1,58 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Federico Pellegrin
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_common_silabs
|
||||
* @brief SiLabs Boards configuration for the Arduino API
|
||||
* @file
|
||||
* @author Federico Pellegrin <fede@evolware.org>
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_pinmap.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Arduino's digital pins mappings
|
||||
*/
|
||||
static const gpio_t arduino_pinmap[] = {
|
||||
ARDUINO_PIN_0,
|
||||
ARDUINO_PIN_1,
|
||||
ARDUINO_PIN_2,
|
||||
ARDUINO_PIN_3
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Arduino's analog pins mappings
|
||||
*/
|
||||
static const adc_t arduino_analog_map[] = {
|
||||
ARDUINO_A0
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief On-board LED mapping
|
||||
*/
|
||||
#define ARDUINO_LED (0)
|
||||
|
||||
/**
|
||||
* @brief On-board serial port mapping
|
||||
*/
|
||||
#define ARDUINO_UART_DEV UART_DEV(0)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
@ -14,8 +14,8 @@
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "board.h"
|
||||
#include "periph_cpu.h"
|
||||
@ -26,21 +26,29 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Arduino's digital pins mappings
|
||||
* @name Arduino's digital pins mappings
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 LED0_PIN
|
||||
#define ARDUINO_PIN_1 LED1_PIN
|
||||
#define ARDUINO_PIN_2 PB0_PIN
|
||||
#define ARDUINO_PIN_3 PB1_PIN
|
||||
|
||||
#define ARDUINO_PIN_LAST 3
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @brief Arduino's analog pins mappings
|
||||
* @name Arduino's analog pins mappings
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_A0 ADC_LINE(0)
|
||||
|
||||
#define ARDUINO_ANALOG_PIN_LAST 0
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -14,7 +14,7 @@ config BOARD_COMMON_SODAQ
|
||||
select HAS_PERIPH_TIMER
|
||||
select HAS_PERIPH_UART
|
||||
select HAS_PERIPH_USBDEV
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_HIGHLEVEL_STDIO
|
||||
|
||||
select HAVE_SAUL_GPIO
|
||||
|
@ -11,5 +11,5 @@ FEATURES_PROVIDED += periph_uart
|
||||
FEATURES_PROVIDED += periph_usbdev
|
||||
|
||||
# Various other features (if any)
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
FEATURES_PROVIDED += highlevel_stdio
|
||||
|
@ -12,7 +12,7 @@ config BOARD_ESP32_HELTEC_LORA32_V2
|
||||
default y
|
||||
select BOARD_COMMON_ESP32
|
||||
select CPU_MODEL_ESP32_D0WD
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ESP_RTC_TIMER_32K
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_I2C
|
||||
|
@ -10,4 +10,4 @@ FEATURES_PROVIDED += periph_pwm
|
||||
FEATURES_PROVIDED += periph_spi
|
||||
FEATURES_PROVIDED += esp_rtc_timer_32k
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2019 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_heltec-lora32-v2
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to Arduino pin 3 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (3)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
80
boards/esp32-heltec-lora32-v2/include/arduino_iomap.h
Normal file
80
boards/esp32-heltec-lora32-v2/include/arduino_iomap.h
Normal file
@ -0,0 +1,80 @@
|
||||
/*
|
||||
* Copyright (C) 2019 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_heltec-lora32-v2
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO12 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO25 /**< Arduino pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO13 /**< Arduino pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO0 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO2 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO22 /**< Arduino pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO23 /**< Arduino pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO17 /**< Arduino pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO18 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO27 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO5 /**< Arduino pin 13 (SCK) */
|
||||
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_14 GPIO36 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO39 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO37 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO38 /**< Arduino pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_18 GPIO4 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO15 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2019 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_heltec-lora32-v2
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino Uno pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO12 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO25 /**< Arduino Uno pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO13 /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO0 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO2 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO22 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO23 /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO17 /**< Arduino Uno pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO18 /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO27 /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO5 /**< Arduino Uno pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO36 /**< Arduino Uno pin A0 */
|
||||
#define ARDUINO_PIN_A1 GPIO39 /**< Arduino Uno pin A1 */
|
||||
#define ARDUINO_PIN_A2 GPIO37 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO38 /**< Arduino Uno pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_A4 GPIO4 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO15 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -12,7 +12,7 @@ config BOARD_ESP32_MH_ET_LIVE_MINIKIT
|
||||
default y
|
||||
select BOARD_COMMON_ESP32
|
||||
select CPU_MODEL_ESP32_WROOM_32
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_DAC
|
||||
select HAS_PERIPH_I2C
|
||||
|
@ -10,4 +10,4 @@ FEATURES_PROVIDED += periph_i2c
|
||||
FEATURES_PROVIDED += periph_pwm
|
||||
FEATURES_PROVIDED += periph_spi
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_mh-et-live-minikit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to Arduino pin 3 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (3)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
80
boards/esp32-mh-et-live-minikit/include/arduino_iomap.h
Normal file
80
boards/esp32-mh-et-live-minikit/include/arduino_iomap.h
Normal file
@ -0,0 +1,80 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_mh-et-live-minikit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO32 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO2 /**< Arduino pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO27 /**< Arduino pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO0 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO4 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO33 /**< Arduino pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO25 /**< Arduino pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO15 /**< Arduino pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO5 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO23 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO18 /**< Arduino pin 13 (SCK) */
|
||||
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_14 GPIO34 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO35 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO36 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO39 /**< Arduino pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_18 GPIO21 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO22 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_mh-et-live-minikit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino Uno pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO32 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO2 /**< Arduino Uno pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO27 /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO0 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO4 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO33 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO25 /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO15 /**< Arduino Uno pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO5 /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO23 /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO18 /**< Arduino Uno pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO34 /**< Arduino Uno pin A0 */
|
||||
#define ARDUINO_PIN_A1 GPIO35 /**< Arduino Uno pin A1 */
|
||||
#define ARDUINO_PIN_A2 GPIO36 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO39 /**< Arduino Uno pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_A4 GPIO21 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO22 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -12,7 +12,7 @@ config BOARD_ESP32_OLIMEX_EVB
|
||||
default y
|
||||
select BOARD_COMMON_ESP32
|
||||
select CPU_MODEL_ESP32_WROOM_32
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ESP_ETH
|
||||
select HAS_PERIPH_ADC if USEMODULE_OLIMEX_ESP32_GATEWAY
|
||||
select HAS_PERIPH_I2C
|
||||
|
@ -16,4 +16,4 @@ FEATURES_PROVIDED += esp_eth # Ethernet MAC (EMAC)
|
||||
FEATURES_PROVIDED += periph_can # CAN peripheral interface
|
||||
FEATURES_PROVIDED += periph_ir # IR peripheral interface
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_olimex-esp32-evb
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is not available
|
||||
*/
|
||||
#define ARDUINO_LED (0)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
77
boards/esp32-olimex-evb/include/arduino_iomap.h
Normal file
77
boards/esp32-olimex-evb/include/arduino_iomap.h
Normal file
@ -0,0 +1,77 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_olimex-esp32-evb
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO32 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO33 /**< Arduino pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO4 /**< Arduino pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO9 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO10 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO7 /**< Arduino pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO8 /**< Arduino pin 8 */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO17 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO15 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO2 /**< Arduino pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO14 /**< Arduino pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_14 GPIO34 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO35 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO36 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO39 /**< Arduino pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_18 GPIO13 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO16 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_olimex-esp32-evb
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino Uno pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO32 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO33 /**< Arduino Uno pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO4 /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO9 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO10 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO7 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO8 /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO_UNDEF /**< Arduino Uno pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO17 /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO15 /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO2 /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO14 /**< Arduino Uno pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO34 /**< Arduino Uno pin A0 */
|
||||
#define ARDUINO_PIN_A1 GPIO35 /**< Arduino Uno pin A1 */
|
||||
#define ARDUINO_PIN_A2 GPIO36 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO39 /**< Arduino Uno pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_A4 GPIO13 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO16 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -12,7 +12,7 @@ config BOARD_ESP32_TTGO_T_BEAM
|
||||
default y
|
||||
select BOARD_COMMON_ESP32
|
||||
select CPU_MODEL_ESP32_D0WD
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ESP_SPI_RAM
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_DAC
|
||||
|
@ -11,7 +11,7 @@ FEATURES_PROVIDED += periph_pwm
|
||||
FEATURES_PROVIDED += periph_spi
|
||||
FEATURES_PROVIDED += periph_uart
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
||||
# unique features provided by the board
|
||||
FEATURES_PROVIDED += esp_spi_ram
|
||||
|
@ -1,40 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2019 Yegor Yefremov
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_ttgo-t-beam
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Yegor Yefremov <yegorslists@googlemail.com>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to Arduino pin 3 on this board
|
||||
*/
|
||||
#ifndef MODULE_ESP32_TTGO_T_BEAM_V1_0
|
||||
#define ARDUINO_LED (3)
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
71
boards/esp32-ttgo-t-beam/include/arduino_iomap.h
Normal file
71
boards/esp32-ttgo-t-beam/include/arduino_iomap.h
Normal file
@ -0,0 +1,71 @@
|
||||
/*
|
||||
* Copyright (C) 2019 Yegor Yefremov
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_ttgo-t-beam
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Yegor Yefremov <yegorslists@googlemail.com>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino pin 1 (TxD) */
|
||||
#define ARDUINO_PIN_2 GPIO0 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO2 /**< Arduino pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO4 /**< Arduino pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO13 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO15 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO21 /**< Arduino pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO22 /**< Arduino pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO23 /**< Arduino pin 9 (PWM) */
|
||||
#define ARDUINO_PIN_13 GPIO14 /**< Arduino pin 13 (LED) */
|
||||
#define ARDUINO_PIN_14 GPIO25 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO32 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO33 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO35 /**< Arduino pin A3 */
|
||||
#define ARDUINO_PIN_18 GPIO36 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO39 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,60 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2019 Yegor Yefremov
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_ttgo-t-beam
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Yegor Yefremov <yegorslists@googlemail.com>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino Uno pin 1 (TxD) */
|
||||
#define ARDUINO_PIN_2 GPIO0 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO2 /**< Arduino Uno pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO4 /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO13 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO15 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO21 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO22 /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO23 /**< Arduino Uno pin 9 (PWM) */
|
||||
#define ARDUINO_PIN_10 GPIO_UNDEF /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO_UNDEF /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO_UNDEF /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO14 /**< Arduino Uno pin 13 (LED) */
|
||||
#define ARDUINO_PIN_A0 GPIO25 /**< Arduino Uno pin A0 */
|
||||
#define ARDUINO_PIN_A1 GPIO32 /**< Arduino Uno pin A1 */
|
||||
#define ARDUINO_PIN_A2 GPIO33 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO35 /**< Arduino Uno pin A3 */
|
||||
#define ARDUINO_PIN_A4 GPIO36 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO39 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -12,7 +12,7 @@ config BOARD_ESP32_WEMOS_LOLIN_D32_PRO
|
||||
default y
|
||||
select BOARD_COMMON_ESP32
|
||||
select CPU_MODEL_ESP32_WROVER
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_DAC
|
||||
select HAS_PERIPH_I2C
|
||||
|
@ -11,4 +11,4 @@ FEATURES_PROVIDED += periph_pwm
|
||||
FEATURES_PROVIDED += periph_spi
|
||||
FEATURES_PROVIDED += sdcard_spi
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_wemos-lolin-d32-pro
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is connected to Arduino pin 10 on this board
|
||||
*/
|
||||
#define ARDUINO_LED (10)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
80
boards/esp32-wemos-lolin-d32-pro/include/arduino_iomap.h
Normal file
80
boards/esp32-wemos-lolin-d32-pro/include/arduino_iomap.h
Normal file
@ -0,0 +1,80 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_wemos-lolin-d32-pro
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO4 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO0 /**< Arduino pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO13 /**< Arduino pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO2 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO15 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO25 /**< Arduino pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO26 /**< Arduino pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO32 /**< Arduino pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO5 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO23 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO18 /**< Arduino pin 13 (SCK) */
|
||||
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_14 GPIO36 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO39 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO34 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO35 /**< Arduino pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_18 GPIO21 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO22 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_wemos-lolin-d32-pro
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino Uno pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO4 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO0 /**< Arduino Uno pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO13 /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO2 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO15 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO25 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO26 /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO32 /**< Arduino Uno pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO5 /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO23 /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO18 /**< Arduino Uno pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO36 /**< Arduino Uno pin A0 */
|
||||
#define ARDUINO_PIN_A1 GPIO39 /**< Arduino Uno pin A1 */
|
||||
#define ARDUINO_PIN_A2 GPIO34 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO35 /**< Arduino Uno pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_A4 GPIO21 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO22 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -12,7 +12,7 @@ config BOARD_ESP32_WROOM_32
|
||||
default y
|
||||
select BOARD_COMMON_ESP32
|
||||
select CPU_MODEL_ESP32_WROOM_32
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_DAC
|
||||
select HAS_PERIPH_I2C
|
||||
|
@ -10,4 +10,4 @@ FEATURES_PROVIDED += periph_i2c
|
||||
FEATURES_PROVIDED += periph_pwm
|
||||
FEATURES_PROVIDED += periph_spi
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_wroom-32
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is not available
|
||||
*/
|
||||
#define ARDUINO_LED (0)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
80
boards/esp32-wroom-32/include/arduino_iomap.h
Normal file
80
boards/esp32-wroom-32/include/arduino_iomap.h
Normal file
@ -0,0 +1,80 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_wroom-32
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO12 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO27 /**< Arduino pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO2 /**< Arduino pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO32 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO33 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO13 /**< Arduino pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO14 /**< Arduino pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO0 /**< Arduino pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO5 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO23 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO18 /**< Arduino pin 13 (SCK) */
|
||||
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_14 GPIO25 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO26 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO4 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO15 /**< Arduino pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_18 GPIO21 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO22 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_wroom-32
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino Uno pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO12 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO27 /**< Arduino Uno pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO2 /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO32 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO33 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO13 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO14 /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO0 /**< Arduino Uno pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO5 /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO23 /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO19 /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO18 /**< Arduino Uno pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO25 /**< Arduino Uno pin A0 */
|
||||
#define ARDUINO_PIN_A1 GPIO26 /**< Arduino Uno pin A1 */
|
||||
#define ARDUINO_PIN_A2 GPIO4 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO15 /**< Arduino Uno pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_A4 GPIO21 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO22 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -12,7 +12,7 @@ config BOARD_ESP32_WROVER_KIT
|
||||
default y
|
||||
select BOARD_COMMON_ESP32
|
||||
select CPU_MODEL_ESP32_WROVER
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ESP_RTC_TIMER_32K
|
||||
select HAS_ESP_JTAG
|
||||
select HAS_PERIPH_ADC
|
||||
|
@ -14,4 +14,4 @@ FEATURES_PROVIDED += sdcard_spi
|
||||
FEATURES_PROVIDED += esp_rtc_timer_32k
|
||||
FEATURES_PROVIDED += esp_jtag
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_esp-wrover-kit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is not available
|
||||
*/
|
||||
#define ARDUINO_LED (0)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
78
boards/esp32-wrover-kit/include/arduino_iomap.h
Normal file
78
boards/esp32-wrover-kit/include/arduino_iomap.h
Normal file
@ -0,0 +1,78 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_esp-wrover-kit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO19 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO0 /**< Arduino pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO22 /**< Arduino pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO4 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO23 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO25 /**< Arduino pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO9 /**< Arduino pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO10 /**< Arduino pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO13 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO15 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO2 /**< Arduino pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO14 /**< Arduino pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_14 GPIO34 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO35 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO36 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO39 /**< Arduino pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_18 GPIO26 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO27 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32_esp-wrover-kit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO3 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO1 /**< Arduino Uno pin 1 (TxD) */
|
||||
|
||||
#define ARDUINO_PIN_2 GPIO19 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO0 /**< Arduino Uno pin 3 (PWM) */
|
||||
#define ARDUINO_PIN_4 GPIO22 /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO4 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO23 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO25 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO9 /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO10 /**< Arduino Uno pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO13 /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO15 /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO2 /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO14 /**< Arduino Uno pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO34 /**< Arduino Uno pin A0 */
|
||||
#define ARDUINO_PIN_A1 GPIO35 /**< Arduino Uno pin A1 */
|
||||
#define ARDUINO_PIN_A2 GPIO36 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO39 /**< Arduino Uno pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_A4 GPIO26 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO27 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -13,7 +13,7 @@ config BOARD_ESP32C3_DEVKIT
|
||||
default y
|
||||
select BOARD_COMMON_ESP32C3
|
||||
select CPU_MODEL_ESP32C3_MINI_1X
|
||||
select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ESP_JTAG
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_I2C
|
||||
|
@ -12,4 +12,4 @@ FEATURES_PROVIDED += periph_spi
|
||||
# unique features provided by the board
|
||||
FEATURES_PROVIDED += esp_jtag
|
||||
|
||||
FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2022 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32c3_devkit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED is not available
|
||||
*/
|
||||
#define ARDUINO_LED (0)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
80
boards/esp32c3-devkit/include/arduino_iomap.h
Normal file
80
boards/esp32c3-devkit/include/arduino_iomap.h
Normal file
@ -0,0 +1,80 @@
|
||||
/*
|
||||
* Copyright (C) 2022 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32c3_devkit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO20 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO21 /**< Arduino pin 1 (TxD) */
|
||||
#if !defined(MODULE_ESP_RTC_TIMER_32K)
|
||||
#define ARDUINO_PIN_2 GPIO0 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO1 /**< Arduino pin 3 (PWM) */
|
||||
#endif
|
||||
#define ARDUINO_PIN_5 GPIO3 /**< Arduino pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO4 /**< Arduino pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO8 /**< Arduino pin 7 */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO10 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO7 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO2 /**< Arduino pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO6 /**< Arduino pin 13 (SCK) */
|
||||
|
||||
/* analog pins as digital pins: */
|
||||
#define ARDUINO_PIN_14 GPIO0 /**< Arduino pin A0 */
|
||||
#if !defined(MODULE_ESP_RTC_TIMER_32K)
|
||||
#define ARDUINO_PIN_15 GPIO1 /**< Arduino pin A1 */
|
||||
#endif
|
||||
#define ARDUINO_PIN_16 GPIO2 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO3 /**< Arduino pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_18 GPIO5 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO4 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
@ -1,71 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2022 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32c3_devkit
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_PINMAP_H
|
||||
#define ARDUINO_PINMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO20 /**< Arduino Uno pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO21 /**< Arduino Uno pin 1 (TxD) */
|
||||
#if !defined(MODULE_ESP_RTC_TIMER_32K)
|
||||
#define ARDUINO_PIN_2 GPIO0 /**< Arduino Uno pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO1 /**< Arduino Uno pin 3 (PWM) */
|
||||
#else
|
||||
#define ARDUINO_PIN_2 GPIO_UNDEF /**< Arduino Uno pin 2 */
|
||||
#endif
|
||||
#define ARDUINO_PIN_4 GPIO_UNDEF /**< Arduino Uno pin 4 */
|
||||
#define ARDUINO_PIN_5 GPIO3 /**< Arduino Uno pin 5 (PWM) */
|
||||
#define ARDUINO_PIN_6 GPIO4 /**< Arduino Uno pin 6 (PWM) */
|
||||
#define ARDUINO_PIN_7 GPIO8 /**< Arduino Uno pin 7 */
|
||||
#define ARDUINO_PIN_8 GPIO_UNDEF /**< Arduino Uno pin 8 */
|
||||
#define ARDUINO_PIN_9 GPIO_UNDEF /**< Arduino Uno pin 9 (PWM) */
|
||||
|
||||
#define ARDUINO_PIN_10 GPIO10 /**< Arduino Uno pin 10 (CS0 / PWM) */
|
||||
#define ARDUINO_PIN_11 GPIO7 /**< Arduino Uno pin 11 (MOSI / PWM) */
|
||||
#define ARDUINO_PIN_12 GPIO2 /**< Arduino Uno pin 12 (MISO) */
|
||||
#define ARDUINO_PIN_13 GPIO6 /**< Arduino Uno pin 13 (SCK) */
|
||||
|
||||
#define ARDUINO_PIN_A0 GPIO0 /**< Arduino Uno pin A0 */
|
||||
#if !defined(MODULE_ESP_RTC_TIMER_32K)
|
||||
#define ARDUINO_PIN_A1 GPIO1 /**< Arduino Uno pin A1 */
|
||||
#else
|
||||
#define ARDUINO_PIN_A1 GPIO_UNDEF /**< Arduino Uno pin A1 */
|
||||
#endif
|
||||
#define ARDUINO_PIN_A2 GPIO2 /**< Arduino Uno pin A2 */
|
||||
#define ARDUINO_PIN_A3 GPIO3 /**< Arduino Uno pin A3 */
|
||||
|
||||
#define ARDUINO_PIN_A4 GPIO5 /**< Arduino Uno pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_A5 GPIO4 /**< Arduino Uno pin A5 (SCL) */
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_PINMAP_H */
|
||||
/** @} */
|
@ -13,7 +13,7 @@ config BOARD_ESP32C3_WEMOS_MINI
|
||||
default y
|
||||
select BOARD_COMMON_ESP32C3
|
||||
select CPU_MODEL_ESP32C3_FH4
|
||||
# select HAS_ARDUINO
|
||||
select HAS_ARDUINO_PINS
|
||||
select HAS_ESP_JTAG
|
||||
select HAS_PERIPH_ADC
|
||||
select HAS_PERIPH_I2C
|
||||
|
@ -12,4 +12,4 @@ FEATURES_PROVIDED += periph_spi
|
||||
# unique features provided by the board
|
||||
FEATURES_PROVIDED += esp_jtag
|
||||
|
||||
#FEATURES_PROVIDED += arduino
|
||||
FEATURES_PROVIDED += arduino_pins
|
||||
|
@ -1,42 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2022 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32c3_wemos_mini
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Board specific configuration for the Arduino API
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_BOARD_H
|
||||
#define ARDUINO_BOARD_H
|
||||
|
||||
#include "arduino_board_common.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The on-board LED (not available on board version 2.1.0)
|
||||
*/
|
||||
#ifdef MODULE_ESP32C3_WEMOS_MINI_V1_0_0
|
||||
#define ARDUINO_LED (5)
|
||||
#else /* MODULE_ESP32C3_WEMOS_MINI_V2_1_0 */
|
||||
#define ARDUINO_LED (0)
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_BOARD_H */
|
||||
/** @} */
|
87
boards/esp32c3-wemos-mini/include/arduino_iomap.h
Normal file
87
boards/esp32c3-wemos-mini/include/arduino_iomap.h
Normal file
@ -0,0 +1,87 @@
|
||||
/*
|
||||
* Copyright (C) 2022 Gunar Schorcht
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
* directory for more details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup boards_esp32c3_wemos_mini
|
||||
* @{
|
||||
*
|
||||
* @file
|
||||
* @brief Mapping from MCU pins to Arduino pins
|
||||
*
|
||||
* @author Gunar Schorcht <gunar@schorcht.net>
|
||||
*/
|
||||
|
||||
#ifndef ARDUINO_IOMAP_H
|
||||
#define ARDUINO_IOMAP_H
|
||||
|
||||
#include "periph/gpio.h"
|
||||
#include "periph/adc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @name Mapping of MCU pins to Arduino pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_0 GPIO20 /**< Arduino pin 0 (RxD) */
|
||||
#define ARDUINO_PIN_1 GPIO21 /**< Arduino pin 1 (TxD) */
|
||||
#define ARDUINO_PIN_2 GPIO9 /**< Arduino pin 2 */
|
||||
#define ARDUINO_PIN_3 GPIO6 /**< Arduino pin 3 (PWM) */
|
||||
|
||||
#ifdef MODULE_ESP32C3_WEMOS_MINI_V1_0_0
|
||||
# define ARDUINO_PIN_5 GPIO7 /**< Arduino pin 5 (PWM) */
|
||||
# define ARDUINO_PIN_6 GPIO1 /**< Arduino pin 6 (PWM) */
|
||||
# define ARDUINO_PIN_7 GPIO0 /**< Arduino pin 7 */
|
||||
#else /* MODULE_ESP32C3_WEMOS_MINI_V2_1_0 */
|
||||
# define ARDUINO_PIN_6 GPIO2 /**< Arduino pin 6 (PWM) */
|
||||
# define ARDUINO_PIN_7 GPIO3 /**< Arduino pin 7 */
|
||||
#endif
|
||||
|
||||
#ifdef MODULE_ESP32C3_WEMOS_MINI_V1_0_0
|
||||
# define ARDUINO_PIN_10 GPIO5 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
# define ARDUINO_PIN_11 GPIO4 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
# define ARDUINO_PIN_12 GPIO3 /**< Arduino pin 12 (MISO) */
|
||||
# define ARDUINO_PIN_13 GPIO2 /**< Arduino pin 13 (SCK) */
|
||||
#else /* MODULE_ESP32C3_WEMOS_MINI_V2_1_0 */
|
||||
# define ARDUINO_PIN_10 GPIO5 /**< Arduino pin 10 (CS0 / PWM) */
|
||||
# define ARDUINO_PIN_11 GPIO4 /**< Arduino pin 11 (MOSI / PWM) */
|
||||
# define ARDUINO_PIN_12 GPIO0 /**< Arduino pin 12 (MISO) */
|
||||
# define ARDUINO_PIN_13 GPIO1 /**< Arduino pin 13 (SCK) */
|
||||
#endif
|
||||
|
||||
/* analog pins as digital pin: */
|
||||
#define ARDUINO_PIN_14 GPIO0 /**< Arduino pin A0 */
|
||||
#define ARDUINO_PIN_15 GPIO1 /**< Arduino pin A1 */
|
||||
#define ARDUINO_PIN_16 GPIO2 /**< Arduino pin A2 */
|
||||
#define ARDUINO_PIN_17 GPIO3 /**< Arduino pin A3 */
|
||||
#define ARDUINO_PIN_18 GPIO4 /**< Arduino pin A4 (SDA) */
|
||||
#define ARDUINO_PIN_19 GPIO5 /**< Arduino pin A5 (SCL) */
|
||||
|
||||
#define ARDUINO_PIN_LAST 19
|
||||
/** @} */
|
||||
|
||||
/**
|
||||
* @name Aliases for analog pins
|
||||
* @{
|
||||
*/
|
||||
#define ARDUINO_PIN_A0 ARDUINO_PIN_14
|
||||
#define ARDUINO_PIN_A1 ARDUINO_PIN_15
|
||||
#define ARDUINO_PIN_A2 ARDUINO_PIN_16
|
||||
#define ARDUINO_PIN_A3 ARDUINO_PIN_17
|
||||
#define ARDUINO_PIN_A4 ARDUINO_PIN_18
|
||||
#define ARDUINO_PIN_A5 ARDUINO_PIN_19
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARDUINO_IOMAP_H */
|
||||
/** @} */
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user