Skip to content

Commit 1b90ad7

Browse files
committedMay 5, 2021
Nano_RP2040: export Nina pins using classic APIs
The cpp file should be moved in WiFiNINA or helper library Please modify the "__attribute__ error" accordingly
1 parent 9218845 commit 1b90ad7

File tree

2 files changed

+53
-3
lines changed

2 files changed

+53
-3
lines changed
 
+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
#ifndef _NINA_PINS_
2+
#define _NINA_PINS_
3+
4+
/******************************************************************************
5+
* INCLUDE
6+
******************************************************************************/
7+
8+
#include "Arduino.h"
9+
10+
/******************************************************************************
11+
* PREPROCESSOR-MAGIC
12+
******************************************************************************/
13+
14+
#if __has_include("WiFiNINA.h")
15+
# define NINA_ATTRIBUTE
16+
#else
17+
# define NINA_ATTRIBUTE __attribute__ ((error("Please include WiFiNINA.h to use this pin")))
18+
#endif
19+
20+
/******************************************************************************
21+
* TYPEDEF
22+
******************************************************************************/
23+
24+
enum NinaPin {
25+
LEDR = 27,
26+
LEDG = 25,
27+
LEDB = 26,
28+
A4 = 34,
29+
A5 = 39,
30+
A6 = 36,
31+
A7 = 35
32+
};
33+
34+
/******************************************************************************
35+
* FUNCTION DECLARATION
36+
******************************************************************************/
37+
38+
void NINA_ATTRIBUTE pinMode (NinaPin pin, PinMode mode);
39+
PinStatus NINA_ATTRIBUTE digitalRead (NinaPin pin);
40+
void NINA_ATTRIBUTE digitalWrite(NinaPin pin, PinStatus value);
41+
int NINA_ATTRIBUTE analogRead (NinaPin pin);
42+
void NINA_ATTRIBUTE analogWrite (NinaPin pin, int value);
43+
44+
#undef NINA_ATTRIBUTE
45+
46+
#endif /* _NINA_PINS_ */

‎variants/NANO_RP2040_CONNECT/pins_arduino.h

+7-3
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ extern PinName digitalPinToPinName(pin_size_t P);
2222
// ----
2323
#define PIN_LED (13u)
2424
#define LED_BUILTIN PIN_LED
25-
#define LEDR (20u)
26-
#define LEDG (21u)
27-
#define LEDB (13u)
25+
//#define LEDR (20u)
26+
//#define LEDG (21u)
27+
//#define LEDB (13u)
2828

2929
// Analog pins
3030
// -----------
@@ -120,4 +120,8 @@ void _ontouch1200bps_();
120120

121121
#define USB_MAX_POWER (500)
122122

123+
#ifdef __cplusplus
124+
#include "nina_pins.h"
125+
#endif
126+
123127
#endif //__PINS_ARDUINO__

0 commit comments

Comments
 (0)
Please sign in to comment.