Skip to content

Commit f56cec7

Browse files
committed
[Nucleo_L496ZG] Avoid duplicated analog pins
Signed-off-by: Frederic Pillon <[email protected]>
1 parent ac0ab4f commit f56cec7

File tree

2 files changed

+56
-44
lines changed

2 files changed

+56
-44
lines changed

variants/NUCLEO_L496ZG/variant.cpp

+29-15
Original file line numberDiff line numberDiff line change
@@ -162,25 +162,39 @@ const PinName digitalPin[] = {
162162
PA_1, //D115/A8
163163
PF_4, //D116/A9
164164
PF_6, //D117/A10
165-
// Duplicated pins in order to be aligned with PinMapADC
166-
PA_7, //D118/A11 = D11
167-
PA_6, //D119/A12 = D12
168-
PA_5, //D120/A13 = D13
169-
PA_4, //D121/A14 = D20
170-
PA_2, //D122/A15 = D26
171-
PB_0, //D123/A16 = D29
172-
PA_0, //D124/A17 = D32
173-
PF_3, //D125/A18 = D49
174-
PF_5, //D126/A19 = D50
175-
PF_8, //D127/A20 = D61
176-
PF_7, //D128/A21 = D62
177-
PF_9, //D129/A22 = D63
178-
PF_10,//D130/A23 = D91
179165
#ifdef ARDUINO_NUCLEO_L496ZG
180-
PG_15 //D131
166+
PG_15 //D118
181167
#endif
182168
};
183169

170+
// Analog (Ax) pin number array
171+
const uint32_t analogInPin[] = {
172+
107, //A0
173+
108, //A1
174+
109, //A2
175+
110, //A3
176+
111, //A4
177+
112, //A5
178+
113, //A6
179+
114, //A7
180+
115, //A8
181+
116, //A9
182+
117, //A10
183+
11, //A11
184+
12, //A12
185+
13, //A13
186+
20, //A14
187+
26, //A15
188+
29, //A16
189+
32, //A17
190+
49, //A18
191+
50, //A19
192+
61, //A20
193+
62, //A21
194+
63, //A22
195+
90 //A23
196+
};
197+
184198
#ifdef __cplusplus
185199
}
186200
#endif

variants/NUCLEO_L496ZG/variant.h

+27-29
Original file line numberDiff line numberDiff line change
@@ -52,28 +52,28 @@ extern "C" {
5252
#define PF12 8
5353
#define PD15 9
5454
#define PD14 10
55-
#define PA7 11 // A11
56-
#define PA6 12 // A12
57-
#define PA5 13 // A13
55+
#define PA7 A11
56+
#define PA6 A12
57+
#define PA5 A13
5858
#define PB9 14
5959
#define PB8 15
6060
#define PC6 16
6161
#define PB15 17
6262
#define PB13 18
6363
#define PB12 19
64-
#define PA4 20 // A14
64+
#define PA4 A14
6565
#define PB4 21
6666
#define PB5 22
6767
#define PB3 23
6868
// 24 is PA4 (20)
6969
// 25 is PB4 (21)
70-
#define PA2 26 // A15
70+
#define PA2 A15
7171
#define PB10 27
7272
#define PE15 28
73-
#define PB0 29 // A16
73+
#define PB0 A16
7474
#define PE12 30
7575
#define PE14 31
76-
#define PA0 32 // A17
76+
#define PA0 A17
7777
// 32 is PB0 (29)
7878
#define PE0 34
7979
#ifdef ARDUINO_NUCLEO_L496ZG
@@ -93,8 +93,8 @@ extern "C" {
9393
#define PC11 46
9494
#define PC12 47
9595
#define PD2 48
96-
#define PF3 49 // A18
97-
#define PF5 50 // A19
96+
#define PF3 A18
97+
#define PF5 A19
9898
#define PD7 51
9999
#define PD6 52
100100
#define PD5 53
@@ -105,9 +105,9 @@ extern "C" {
105105
#define PE5 58
106106
#define PE6 59
107107
#define PE3 60
108-
#define PF8 61 // A20
109-
#define PF7 62 // A21
110-
#define PF9 63 // A22
108+
#define PF8 A20
109+
#define PF7 A21
110+
#define PF9 A22
111111
#define PG1 64
112112
#define PG0 65
113113
#define PD1 66
@@ -135,7 +135,7 @@ extern "C" {
135135
#define PD12 87
136136
#define PD13 88
137137
#define PE1 89
138-
#define PF10 90 // A23
138+
#define PF10 A23
139139
#define PF11 91
140140
#define PG2 92
141141
#define PG3 93
@@ -153,20 +153,19 @@ extern "C" {
153153
#define PH0 105
154154
#define PH1 106
155155
// Analog pins
156-
#define PA3 107 // A0
157-
#define PC0 108 // A1
158-
#define PC3 109 // A2
159-
#define PC1 110 // A3
160-
#define PC4 111 // A4
161-
#define PC5 112 // A5
162-
#define PB1 113 // A6
163-
#define PC2 114 // A7
164-
#define PA1 115 // A8
165-
#define PF4 116 // A9
166-
#define PF6 117 // A10
167-
// 118 to 130 reserved fot A11 to A23
156+
#define PA3 A0
157+
#define PC0 A1
158+
#define PC3 A2
159+
#define PC1 A3
160+
#define PC4 A4
161+
#define PC5 A5
162+
#define PB1 A6
163+
#define PC2 A7
164+
#define PA1 A8
165+
#define PF4 A9
166+
#define PF6 A10
168167
#ifdef ARDUINO_NUCLEO_L496ZG
169-
#define PG15 131
168+
#define PG15 118
170169
#endif
171170
// PA13 and PA14 are shared with SWD signals connected to ST-LINK/V2-1.
172171
// If ST-LINK part is not cut, it is not recommended to use them as I/O pins.
@@ -175,13 +174,12 @@ extern "C" {
175174

176175
// This must be a literal with the same value as PEND
177176
#ifdef ARDUINO_NUCLEO_L496ZG
178-
#define NUM_DIGITAL_PINS 132
177+
#define NUM_DIGITAL_PINS 119
179178
#else
180-
#define NUM_DIGITAL_PINS 131
179+
#define NUM_DIGITAL_PINS 118
181180
#endif
182181
// This must be a literal with a value less than or equal to to MAX_ANALOG_INPUTS
183182
#define NUM_ANALOG_INPUTS 24
184-
#define NUM_ANALOG_FIRST 107
185183

186184
// On-board LED pin number
187185
#define LED_BUILTIN PC7

0 commit comments

Comments
 (0)