-
-
Notifications
You must be signed in to change notification settings - Fork 102
Expand file tree
/
Copy pathgeneric-bk7252.h
More file actions
223 lines (213 loc) · 7.04 KB
/
Copy pathgeneric-bk7252.h
File metadata and controls
223 lines (213 loc) · 7.04 KB
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
/* This file was auto-generated from generic-bk7252.json using boardgen */
#pragma once
// clang-format off
// Pins
// ----
#define PINS_COUNT 38 // Total GPIO count
#define NUM_DIGITAL_PINS 38 // Digital inputs/outputs
#define NUM_ANALOG_INPUTS 7 // ADC inputs
#define NUM_ANALOG_OUTPUTS 4 // PWM & DAC outputs
#define PINS_GPIO_MAX 39 // Last usable GPIO number
// SPI Interfaces
// --------------
#define PIN_SPI0_CS 15u // GPIO15
#define PIN_SPI0_MISO 17u // GPIO17
#define PIN_SPI0_MOSI 16u // GPIO16
#define PIN_SPI0_SCK 14u // GPIO14
#define PINS_SPI0_CS (pin_size_t[]){15u}
#define PINS_SPI0_MISO (pin_size_t[]){17u}
#define PINS_SPI0_MOSI (pin_size_t[]){16u}
#define PINS_SPI0_SCK (pin_size_t[]){14u}
// Wire Interfaces
// ---------------
#define PIN_WIRE1_SCL 20u // GPIO20
#define PIN_WIRE1_SDA 21u // GPIO21
#define PIN_WIRE2_SCL 0u // GPIO0
#define PIN_WIRE2_SDA 1u // GPIO1
#define PINS_WIRE1_SCL (pin_size_t[]){20u}
#define PINS_WIRE1_SDA (pin_size_t[]){21u}
#define PINS_WIRE2_SCL (pin_size_t[]){0u}
#define PINS_WIRE2_SDA (pin_size_t[]){1u}
// Serial ports
// ------------
#define PIN_SERIAL1_CTS 12u // GPIO12
#define PIN_SERIAL1_RTS 13u // GPIO13
#define PIN_SERIAL1_RX 10u // GPIO10
#define PIN_SERIAL1_TX 11u // GPIO11
#define PIN_SERIAL2_RX 1u // GPIO1
#define PIN_SERIAL2_TX 0u // GPIO0
#define PINS_SERIAL1_CTS (pin_size_t[]){12u}
#define PINS_SERIAL1_RTS (pin_size_t[]){13u}
#define PINS_SERIAL1_RX (pin_size_t[]){10u}
#define PINS_SERIAL1_TX (pin_size_t[]){11u}
#define PINS_SERIAL2_RX (pin_size_t[]){1u}
#define PINS_SERIAL2_TX (pin_size_t[]){0u}
// Pin function macros
// -------------------
#define PIN_ADC1 4u // GPIO4
#define PIN_ADC2 5u // GPIO5
#define PIN_ADC3 23u // GPIO23
#define PIN_ADC4 2u // GPIO2
#define PIN_ADC5 3u // GPIO3
#define PIN_ADC6 12u // GPIO12
#define PIN_ADC7 13u // GPIO13
#define PIN_CS 15u // GPIO15
#define PIN_CTS1 12u // GPIO12
#define PIN_MISO 17u // GPIO17
#define PIN_MOSI 16u // GPIO16
#define PIN_P0 0u // GPIO0
#define PIN_P1 1u // GPIO1
#define PIN_P2 2u // GPIO2
#define PIN_P3 3u // GPIO3
#define PIN_P4 4u // GPIO4
#define PIN_P5 5u // GPIO5
#define PIN_P6 6u // GPIO6
#define PIN_P7 7u // GPIO7
#define PIN_P10 10u // GPIO10
#define PIN_P11 11u // GPIO11
#define PIN_P12 12u // GPIO12
#define PIN_P13 13u // GPIO13
#define PIN_P14 14u // GPIO14
#define PIN_P15 15u // GPIO15
#define PIN_P16 16u // GPIO16
#define PIN_P17 17u // GPIO17
#define PIN_P18 18u // GPIO18
#define PIN_P19 19u // GPIO19
#define PIN_P20 20u // GPIO20
#define PIN_P21 21u // GPIO21
#define PIN_P22 22u // GPIO22
#define PIN_P23 23u // GPIO23
#define PIN_P24 24u // GPIO24
#define PIN_P25 25u // GPIO25
#define PIN_P26 26u // GPIO26
#define PIN_P27 27u // GPIO27
#define PIN_P28 28u // GPIO28
#define PIN_P29 29u // GPIO29
#define PIN_P30 30u // GPIO30
#define PIN_P31 31u // GPIO31
#define PIN_P32 32u // GPIO32
#define PIN_P33 33u // GPIO33
#define PIN_P34 34u // GPIO34
#define PIN_P35 35u // GPIO35
#define PIN_P36 36u // GPIO36
#define PIN_P37 37u // GPIO37
#define PIN_P38 38u // GPIO38
#define PIN_P39 39u // GPIO39
#define PIN_PWM0 6u // GPIO6
#define PIN_PWM1 7u // GPIO7
#define PIN_PWM4 24u // GPIO24
#define PIN_PWM5 26u // GPIO26
#define PIN_RTS1 13u // GPIO13
#define PIN_RX1 10u // GPIO10
#define PIN_RX2 1u // GPIO1
#define PIN_SCK 14u // GPIO14
#define PIN_SCL1 20u // GPIO20
#define PIN_SCL2 0u // GPIO0
#define PIN_SDA1 21u // GPIO21
#define PIN_SDA2 1u // GPIO1
#define PIN_TX1 11u // GPIO11
#define PIN_TX2 0u // GPIO0
// Port availability
// -----------------
#define HAS_SERIAL1 1
#define HAS_SERIAL2 1
#define HAS_SPI0 1
#define HAS_WIRE1 1
#define HAS_WIRE2 1
#define SERIAL_INTERFACES_COUNT 2
#define SPI_INTERFACES_COUNT 1
#define WIRE_INTERFACES_COUNT 2
// Arduino pin names
// -----------------
#define PIN_D0 0u // GPIO0
#define PIN_D1 1u // GPIO1
#define PIN_D2 2u // GPIO2
#define PIN_D3 3u // GPIO3
#define PIN_D4 4u // GPIO4
#define PIN_D5 5u // GPIO5
#define PIN_D6 6u // GPIO6
#define PIN_D7 7u // GPIO7
#define PIN_D8 10u // GPIO10
#define PIN_D9 11u // GPIO11
#define PIN_D10 12u // GPIO12
#define PIN_D11 13u // GPIO13
#define PIN_D12 14u // GPIO14
#define PIN_D13 15u // GPIO15
#define PIN_D14 16u // GPIO16
#define PIN_D15 17u // GPIO17
#define PIN_D16 18u // GPIO18
#define PIN_D17 19u // GPIO19
#define PIN_D18 20u // GPIO20
#define PIN_D19 21u // GPIO21
#define PIN_D20 22u // GPIO22
#define PIN_D21 23u // GPIO23
#define PIN_D22 24u // GPIO24
#define PIN_D23 25u // GPIO25
#define PIN_D24 26u // GPIO26
#define PIN_D25 27u // GPIO27
#define PIN_D26 28u // GPIO28
#define PIN_D27 29u // GPIO29
#define PIN_D28 30u // GPIO30
#define PIN_D29 31u // GPIO31
#define PIN_D30 32u // GPIO32
#define PIN_D31 33u // GPIO33
#define PIN_D32 34u // GPIO34
#define PIN_D33 35u // GPIO35
#define PIN_D34 36u // GPIO36
#define PIN_D35 37u // GPIO37
#define PIN_D36 38u // GPIO38
#define PIN_D37 39u // GPIO39
#define PIN_A1 4u // GPIO4
#define PIN_A2 5u // GPIO5
#define PIN_A3 23u // GPIO23
#define PIN_A4 3u // GPIO3
#define PIN_A5 2u // GPIO2
#define PIN_A6 12u // GPIO12
#define PIN_A7 13u // GPIO13
// Static pin names
// ----------------
static const unsigned char A1 = PIN_A1;
static const unsigned char A2 = PIN_A2;
static const unsigned char A3 = PIN_A3;
static const unsigned char A4 = PIN_A4;
static const unsigned char A5 = PIN_A5;
static const unsigned char A6 = PIN_A6;
static const unsigned char A7 = PIN_A7;
static const unsigned char D0 = PIN_D0;
static const unsigned char D1 = PIN_D1;
static const unsigned char D2 = PIN_D2;
static const unsigned char D3 = PIN_D3;
static const unsigned char D4 = PIN_D4;
static const unsigned char D5 = PIN_D5;
static const unsigned char D6 = PIN_D6;
static const unsigned char D7 = PIN_D7;
static const unsigned char D8 = PIN_D8;
static const unsigned char D9 = PIN_D9;
static const unsigned char D10 = PIN_D10;
static const unsigned char D11 = PIN_D11;
static const unsigned char D12 = PIN_D12;
static const unsigned char D13 = PIN_D13;
static const unsigned char D14 = PIN_D14;
static const unsigned char D15 = PIN_D15;
static const unsigned char D16 = PIN_D16;
static const unsigned char D17 = PIN_D17;
static const unsigned char D18 = PIN_D18;
static const unsigned char D19 = PIN_D19;
static const unsigned char D20 = PIN_D20;
static const unsigned char D21 = PIN_D21;
static const unsigned char D22 = PIN_D22;
static const unsigned char D23 = PIN_D23;
static const unsigned char D24 = PIN_D24;
static const unsigned char D25 = PIN_D25;
static const unsigned char D26 = PIN_D26;
static const unsigned char D27 = PIN_D27;
static const unsigned char D28 = PIN_D28;
static const unsigned char D29 = PIN_D29;
static const unsigned char D30 = PIN_D30;
static const unsigned char D31 = PIN_D31;
static const unsigned char D32 = PIN_D32;
static const unsigned char D33 = PIN_D33;
static const unsigned char D34 = PIN_D34;
static const unsigned char D35 = PIN_D35;
static const unsigned char D36 = PIN_D36;
static const unsigned char D37 = PIN_D37;