|
30 | 30 | * FUNCTION DEFINITION |
31 | 31 | ******************************************************************************/ |
32 | 32 |
|
| 33 | +uint8_t toAnalogPin(NinaPin pin) |
| 34 | +{ |
| 35 | + if (pin == A4) return 6; /* ADC1 - CH6 */ |
| 36 | + else if (pin == A5) return 3; /* ADC1 - CH3 */ |
| 37 | + else if (pin == A6) return 0; /* ADC1 - CH0 */ |
| 38 | + else if (pin == A7) return 7; /* ADC1 - CH7 */ |
| 39 | + else return 0xFF; |
| 40 | +} |
| 41 | + |
33 | 42 | void pinMode(NinaPin pin, PinMode mode) |
34 | 43 | { |
35 | | - WiFiDrv::wifiDriverInit(); |
36 | | - Serial.print(__FUNCTION__); |
37 | | - Serial.print(": pin = "); |
38 | | - Serial.print(pin); |
39 | | - Serial.print(", mode = "); |
40 | | - Serial.println(mode); |
41 | 44 | WiFiDrv::pinMode(static_cast<uint8_t>(pin), static_cast<uint8_t>(mode)); |
42 | 45 | } |
43 | 46 |
|
44 | 47 | PinStatus digitalRead(NinaPin pin) |
45 | 48 | { |
46 | | - WiFiDrv::wifiDriverInit(); |
47 | 49 | return WiFiDrv::digitalRead(static_cast<uint8_t>(pin)); |
48 | 50 | } |
49 | 51 |
|
50 | 52 | void digitalWrite(NinaPin pin, PinStatus value) |
51 | 53 | { |
52 | | - WiFiDrv::wifiDriverInit(); |
53 | | - Serial.print(__FUNCTION__); |
54 | | - Serial.print(": pin = "); |
55 | | - Serial.print(pin); |
56 | | - Serial.print(", value = "); |
57 | | - Serial.println(value); |
58 | 54 | WiFiDrv::digitalWrite(static_cast<uint8_t>(pin), static_cast<uint8_t>(value)); |
59 | 55 | } |
60 | 56 |
|
61 | 57 | int analogRead(NinaPin pin) |
62 | 58 | { |
63 | | - WiFiDrv::wifiDriverInit(); |
64 | | - return WiFiDrv::analogRead(static_cast<uint8_t>(pin)); |
| 59 | + uint8_t const adc_channel = toAnalogPin(pin); |
| 60 | + |
| 61 | + if (adc_channel == 0xFF) |
| 62 | + return 0; |
| 63 | + else |
| 64 | + return WiFiDrv::analogRead(adc_channel); |
65 | 65 | } |
66 | 66 |
|
67 | 67 | void analogWrite(NinaPin pin, int value) |
68 | 68 | { |
69 | | - WiFiDrv::wifiDriverInit(); |
70 | 69 | WiFiDrv::analogWrite(static_cast<uint8_t>(pin), static_cast<uint8_t>(value)); |
71 | 70 | } |
72 | 71 |
|
|
0 commit comments