]> Repositories - Adafruit_Blinka-hackapet.git/blob - src/adafruit_blinka/microcontroller/rp2040/pin.py
Merge pull request #576 from Gadgetoid/patch-rp2040-i2c-permutations
[Adafruit_Blinka-hackapet.git] / src / adafruit_blinka / microcontroller / rp2040 / pin.py
1 # SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
2 #
3 # SPDX-License-Identifier: MIT
4 """RP2040 pins"""
5
6 from ..generic_micropython import Pin
7
8 GP0 = Pin(0)
9 GP1 = Pin(1)
10 GP2 = Pin(2)
11 GP3 = Pin(3)
12 GP4 = Pin(4)
13 GP5 = Pin(5)
14 GP6 = Pin(6)
15 GP7 = Pin(7)
16 GP8 = Pin(8)
17 GP9 = Pin(9)
18 GP10 = Pin(10)
19 GP11 = Pin(11)
20 GP12 = Pin(12)
21 GP13 = Pin(13)
22 GP14 = Pin(14)
23 GP15 = Pin(15)
24 GP16 = Pin(16)
25 GP17 = Pin(17)
26 GP18 = Pin(18)
27 GP19 = Pin(19)
28 GP20 = Pin(20)
29 GP21 = Pin(21)
30 GP22 = Pin(22)
31 GP23 = Pin(23)
32 GP24 = Pin(24)
33 GP25 = Pin(25)
34 GP26 = Pin(26)
35 GP27 = Pin(27)
36 GP28 = Pin(28)
37 GP29 = Pin(29)
38
39 # ordered as spiId, sckId, mosiId (tx), misoId (rx)
40 spiPorts = (
41     (0, GP2, GP3, GP0),
42     (0, GP2, GP3, GP4),
43     (0, GP2, GP3, GP16),
44     (0, GP2, GP7, GP0),
45     (0, GP2, GP7, GP4),
46     (0, GP2, GP7, GP16),
47     (0, GP2, GP19, GP0),
48     (0, GP2, GP19, GP4),
49     (0, GP2, GP19, GP16),
50     (0, GP6, GP3, GP0),
51     (0, GP6, GP3, GP4),
52     (0, GP6, GP3, GP16),
53     (0, GP6, GP7, GP0),
54     (0, GP6, GP7, GP4),
55     (0, GP6, GP7, GP16),
56     (0, GP6, GP19, GP0),
57     (0, GP6, GP19, GP4),
58     (0, GP6, GP19, GP16),
59     (0, GP18, GP3, GP0),
60     (0, GP18, GP3, GP4),
61     (0, GP18, GP3, GP16),
62     (0, GP18, GP7, GP0),
63     (0, GP18, GP7, GP4),
64     (0, GP18, GP7, GP16),
65     (0, GP18, GP19, GP0),
66     (0, GP18, GP19, GP4),
67     (0, GP18, GP19, GP16),
68     (1, GP10, GP11, GP8),
69     (1, GP10, GP11, GP12),
70     (1, GP10, GP15, GP8),
71     (1, GP10, GP15, GP12),
72     (1, GP14, GP11, GP8),
73     (1, GP14, GP11, GP12),
74     (1, GP14, GP15, GP8),
75     (1, GP14, GP15, GP12),
76 )
77
78 # ordered as uartId, txId, rxId
79 uartPorts = (
80     (0, GP0, GP1),
81     (0, GP0, GP13),
82     (0, GP12, GP1),
83     (0, GP12, GP13),
84     (1, GP4, GP5),
85     (1, GP4, GP9),
86     (1, GP8, GP5),
87     (1, GP8, GP9),
88 )
89
90 # ordered as scl, sda
91 i2cPorts = (
92     (0, GP1, GP0),
93     (0, GP1, GP4),
94     (0, GP1, GP8),
95     (0, GP1, GP12),
96     (0, GP1, GP16),
97     (0, GP1, GP20),
98     (0, GP1, GP24),
99     (0, GP1, GP28),
100     (1, GP3, GP2),
101     (1, GP3, GP6),
102     (1, GP3, GP10),
103     (1, GP3, GP14),
104     (1, GP3, GP18),
105     (1, GP3, GP22),
106     (1, GP3, GP26),
107     (0, GP5, GP0),
108     (0, GP5, GP4),
109     (0, GP5, GP8),
110     (0, GP5, GP12),
111     (0, GP5, GP16),
112     (0, GP5, GP20),
113     (0, GP5, GP24),
114     (0, GP5, GP28),
115     (1, GP7, GP2),
116     (1, GP7, GP6),
117     (1, GP7, GP10),
118     (1, GP7, GP14),
119     (1, GP7, GP18),
120     (1, GP7, GP22),
121     (1, GP7, GP26),
122     (0, GP9, GP0),
123     (0, GP9, GP4),
124     (0, GP9, GP8),
125     (0, GP9, GP12),
126     (0, GP9, GP16),
127     (0, GP9, GP20),
128     (0, GP9, GP24),
129     (0, GP9, GP28),
130     (1, GP11, GP2),
131     (1, GP11, GP6),
132     (1, GP11, GP10),
133     (1, GP11, GP14),
134     (1, GP11, GP18),
135     (1, GP11, GP22),
136     (1, GP11, GP26),
137     (0, GP13, GP0),
138     (0, GP13, GP4),
139     (0, GP13, GP8),
140     (0, GP13, GP12),
141     (0, GP13, GP16),
142     (0, GP13, GP20),
143     (0, GP13, GP24),
144     (0, GP13, GP28),
145     (1, GP15, GP2),
146     (1, GP15, GP6),
147     (1, GP15, GP10),
148     (1, GP15, GP14),
149     (1, GP15, GP18),
150     (1, GP15, GP22),
151     (1, GP15, GP26),
152     (0, GP17, GP0),
153     (0, GP17, GP4),
154     (0, GP17, GP8),
155     (0, GP17, GP12),
156     (0, GP17, GP16),
157     (0, GP17, GP20),
158     (0, GP17, GP24),
159     (0, GP17, GP28),
160     (1, GP19, GP2),
161     (1, GP19, GP6),
162     (1, GP19, GP10),
163     (1, GP19, GP14),
164     (1, GP19, GP18),
165     (1, GP19, GP22),
166     (1, GP19, GP26),
167     (0, GP21, GP0),
168     (0, GP21, GP4),
169     (0, GP21, GP8),
170     (0, GP21, GP12),
171     (0, GP21, GP16),
172     (0, GP21, GP20),
173     (0, GP21, GP24),
174     (0, GP21, GP28),
175     (1, GP23, GP2),
176     (1, GP23, GP6),
177     (1, GP23, GP10),
178     (1, GP23, GP14),
179     (1, GP23, GP18),
180     (1, GP23, GP22),
181     (1, GP23, GP26),
182     (0, GP25, GP0),
183     (0, GP25, GP4),
184     (0, GP25, GP8),
185     (0, GP25, GP12),
186     (0, GP25, GP16),
187     (0, GP25, GP20),
188     (0, GP25, GP24),
189     (0, GP25, GP28),
190     (1, GP27, GP2),
191     (1, GP27, GP6),
192     (1, GP27, GP10),
193     (1, GP27, GP14),
194     (1, GP27, GP18),
195     (1, GP27, GP22),
196     (1, GP27, GP26),
197     (0, GP29, GP0),
198     (0, GP29, GP4),
199     (0, GP29, GP8),
200     (0, GP29, GP12),
201     (0, GP29, GP16),
202     (0, GP29, GP20),
203     (0, GP29, GP24),
204     (0, GP29, GP28),
205 )