File tree Expand file tree Collapse file tree 4 files changed +15
-10
lines changed Expand file tree Collapse file tree 4 files changed +15
-10
lines changed Original file line number Diff line number Diff line change @@ -84,6 +84,7 @@ typedef struct _AnalogPinDescription AnalogPinDescription;
84
84
extern PinDescription g_APinDescription[];
85
85
extern AnalogPinDescription g_AAnalogPinDescription[];
86
86
extern AnalogPinDescription g_AAnalogOutPinDescription[];
87
+ extern AnalogPinDescription g_pureAAnalogPinDescription[];
87
88
88
89
#ifdef ANALOG_CONFIG
89
90
#include "hal/analogin_api.h"
Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ extern PinName digitalPinToPinName(pin_size_t P);
20
20
// ----
21
21
#define PINS_COUNT (PINCOUNT_fn())
22
22
#define NUM_DIGITAL_PINS (103u)
23
- #define NUM_ANALOG_INPUTS (14u)
23
+ #define NUM_ANALOG_INPUTS (10u) // these are analog pins that can also be used as digital
24
24
#define NUM_ANALOG_OUTPUTS (2u)
25
25
26
26
// LEDs
Original file line number Diff line number Diff line change 2
2
#include "AnalogIn.h"
3
3
#include "pinDefinitions.h"
4
4
5
- PureAnalogPin A8(8);
6
- PureAnalogPin A9(9);
7
- PureAnalogPin A10(10);
8
- PureAnalogPin A11(11);
5
+ PureAnalogPin A8(0);
6
+ PureAnalogPin A9(1);
7
+ PureAnalogPin A10(2);
8
+ PureAnalogPin A11(3);
9
+
9
10
10
11
int getAnalogReadResolution();
11
12
12
13
int analogRead(PureAnalogPin pin) {
13
- mbed::AnalogIn* adc = g_AAnalogPinDescription [pin.get()].adc;
14
- auto name = g_AAnalogPinDescription [pin.get()].name;
14
+ mbed::AnalogIn* adc = g_pureAAnalogPinDescription [pin.get()].adc;
15
+ auto name = g_pureAAnalogPinDescription [pin.get()].name;
15
16
if (adc == NULL) {
16
17
adc = new mbed::AnalogIn(name);
17
- g_AAnalogPinDescription [pin.get()].adc = adc;
18
+ g_pureAAnalogPinDescription [pin.get()].adc = adc;
18
19
}
19
20
return (adc->read_u16() >> (16 - getAnalogReadResolution()));
20
21
}
Original file line number Diff line number Diff line change @@ -12,12 +12,15 @@ AnalogPinDescription g_AAnalogPinDescription[] = {
12
12
{ PC_2, NULL }, // A5 ADC1_INP12
13
13
{ PC_0, NULL }, // A6 ADC1_INP10
14
14
{ PA_0, NULL }, // A7 ADC1_INP16
15
+ { PA_4, NULL }, // A12 DAC1_OUT1
16
+ { PA_5, NULL }, // A13 DAC1_OUT2
17
+ };
18
+
19
+ AnalogPinDescription g_pureAAnalogPinDescription[] = {
15
20
{ PC_2C, NULL }, // A8 ADC3_INP0
16
21
{ PC_3C, NULL }, // A9 ADC3_INP1
17
22
{ PA_1C, NULL }, // A10 ADC2_INP1
18
23
{ PA_0C, NULL }, // A11 ADC2_INP0
19
- { PA_4, NULL }, // A12 DAC1_OUT1
20
- { PA_5, NULL }, // A13 DAC1_OUT2
21
24
};
22
25
23
26
AnalogPinDescription g_AAnalogOutPinDescription[] = {
You can’t perform that action at this time.
0 commit comments