1# Copyright (c) 2019 Foundries.io
2# Copyright (C) 2019 Peter Bigot Consulting, LLC
3# SPDX-License-Identifier: Apache-2.0
4
5description: |
6    GPIO pins exposed on Arduino Uno (R3) headers.
7
8    The Arduino Uno layout provides four headers, two each along
9    opposite edges of the board.
10
11    Proceeding counter-clockwise:
12    * An 8-pin Power Supply header.  No pins on this header are exposed
13      by this binding.
14    * A 6-pin Analog Input header.  This has analog input signals
15      labeled from A0 at the top through A5 at the bottom.
16    * An 8-pin header (opposite Analog Input).  This has digital input
17      signals labeled from D0 at the bottom D7 at the top;
18    * A 10-pin header (opposite Power Supply).  This has six additional
19      digital input signals labelled from D8 at the bottom through D13
20      towards the top, skipping two pins, then finishing with D14 and
21      D15 at the top.
22
23    This binding provides a nexus mapping for 20 pins where parent pins 0
24    through 5 correspond to A0 through A5, and parent pins 6 through 21
25    correspond to D0 through D15, as depicted below:
26
27                                 D15  21
28                                 D14  20
29                                 AREF -
30                                 GND  -
31        - N/C                    D13  19
32        - IOREF                  D12  18
33        - RESET                  D11  17
34        - 3V3                    D10  16
35        - 5V                     D9   15
36        - GND                    D8   14
37        - GND
38        - VIN                    D7   13
39                                 D6   12
40        0 A0                     D5   11
41        1 A1                     D4   10
42        2 A2                     D3    9
43        3 A3                     D2    8
44        4 A4                     D1    7
45        5 A5                     D0    6
46
47
48compatible: "arduino-header-r3"
49
50include: [gpio-nexus.yaml, base.yaml]
51