-
Notifications
You must be signed in to change notification settings - Fork 44
/
gpio.h
67 lines (54 loc) · 1.25 KB
/
gpio.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#ifndef GPIO_H
#define GPIO_H
#include <string>
using namespace std;
enum GPIO_MAP_PIN {
GPIO2 = 2, GPIO14 = 14,
GPIO3 = 3, GPIO15 = 15,
GPIO4 = 4, GPIO18 = 18,
GPIO17 = 17, GPIO23 = 23,
GPIO27 = 27, GPIO24 = 24,
GPIO22 = 22, GPIO25 = 25,
GPIO10 = 10, GPIO8 = 8,
GPIO9 = 9, GPIO7 = 7,
GPIO11 = 11, GPIO12 = 12,
GPIO5 = 5, GPIO16 = 16,
GPIO6 = 6, GPIO20 = 20,
GPIO13 = 13, GPIO21 = 21,
GPIO19 = 19,
GPIO26 = 26,
};
enum INTERNAL_STATE {
LOW = 0,
HIGH = 1,
OUT = 0,
IN = 1
};
class GPIO {
public:
GPIO();
GPIO(string x);
GPIO(int x);
GPIO(string x, string dir, string val);
GPIO(int x, int dir, int val);
void setup(string x);
void setup(int x);
void setup(string x, string dir, string val);
void setup(int x, int dir, int val);
int export_gpio();
int unexport_gpio();
int close();
int setdir_gpio(string dir);
int setdir_gpio(int dir);
int setval_gpio(string val);
int setval_gpio(int val);
int set(int val);
int getval_gpio(string& val);
int getval_gpio(int& val);
int get();
string get_gpionum();
int get_igpionum();
private:
string gpionum;
};
#endif