1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

9 Commits

Author SHA1 Message Date
Marian Buschsieweke
043e8cc88e
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.
2023-06-26 17:24:07 +02:00
65e0247a9b
boards/arduino-atmega: add mapping for Arduino PWM pins 2019-11-15 17:54:30 +01:00
27f2a19f72
boards/atmega: remove useless provided gpio features
These features are provided at CPU level
2019-10-17 21:42:49 +02:00
Gaëtan Harter
ec93d4c1c4
boards/common/arduino-atmega: remove special case for jiminy-mega256rfr2
The board is deprecated, no need to ignore this board anymore here.

Having the `arduino` and `periph_pwm` features is now required for all
boards using 'arduino-atmega' (as it was except for that board).

If this should change in the future, it should be defined either in each
arduino board, in another board common, or per CPU_MODEL.
2019-10-08 18:37:32 +02:00
Francisco Acosta
7139393394 boards: include potential features from CPU for atmega boards
Features must be provided by the board if they're actually
available on board. Other features might be provided by the
CPU.

Some grouping is also removed as it is not necessary.
2019-02-05 17:12:04 +01:00
Victor Arino
8ff8aefb72 boards/arduino-atmega-common: support for PWM 2018-11-29 08:50:56 +01:00
Joakim Nohlgård
8996cbe313 make: Introduce new feature flag periph_gpio_irq 2018-08-29 08:53:20 +02:00
7f62fd83ed boards/arduino-atmega: don't provide arduino for jiminy-mega256rfr2 2018-04-20 16:23:17 +02:00
Hauke Petersen
0f155db499 boards/arduino-atmega: move shared code to common/arduino-atmega 2017-11-30 10:26:35 +01:00