pimoroni_interstate75.h
1/*
2 * Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7// -----------------------------------------------------
8// NOTE: THIS HEADER IS ALSO INCLUDED BY ASSEMBLER SO
9// SHOULD ONLY CONSIST OF PREPROCESSOR DIRECTIVES
10// -----------------------------------------------------
11
12#ifndef _BOARDS_PIMORONI_INTERSTATE75_H
13#define _BOARDS_PIMORONI_INTERSTATE75_H
14
15// For board detection
16#define PIMORONI_INTERSTATE75
17
18// --- BOARD SPECIFIC ---
19#ifndef INTERSTATE75_R0_PIN
20#define INTERSTATE75_R0_PIN 0
21#endif
22
23#ifndef INTERSTATE75_G0_PIN
24#define INTERSTATE75_G0_PIN 1
25#endif
26
27#ifndef INTERSTATE75_B0_PIN
28#define INTERSTATE75_B0_PIN 2
29#endif
30
31#ifndef INTERSTATE75_R1_PIN
32#define INTERSTATE75_R1_PIN 3
33#endif
34
35#ifndef INTERSTATE75_G1_PIN
36#define INTERSTATE75_G1_PIN 4
37#endif
38
39#ifndef INTERSTATE75_B1_PIN
40#define INTERSTATE75_B1_PIN 5
41#endif
42
43#ifndef INTERSTATE75_ROW_A_PIN
44#define INTERSTATE75_ROW_A_PIN 6
45#endif
46
47#ifndef INTERSTATE75_ROW_B_PIN
48#define INTERSTATE75_ROW_B_PIN 7
49#endif
50
51#ifndef INTERSTATE75_ROW_C_PIN
52#define INTERSTATE75_ROW_C_PIN 8
53#endif
54
55#ifndef INTERSTATE75_ROW_D_PIN
56#define INTERSTATE75_ROW_D_PIN 9
57#endif
58
59#ifndef INTERSTATE75_ROW_E_PIN
60#define INTERSTATE75_ROW_E_PIN 10
61#endif
62
63#ifndef INTERSTATE75_CLK_PIN
64#define INTERSTATE75_CLK_PIN 11
65#endif
66
67#ifndef INTERSTATE75_LAT_PIN
68#define INTERSTATE75_LAT_PIN 12
69#endif
70
71#ifndef INTERSTATE75_OE_PIN
72#define INTERSTATE75_OE_PIN 13
73#endif
74
75#ifndef INTERSTATE75_SW_A_PIN
76#define INTERSTATE75_SW_A_PIN 14
77#endif
78
79#ifndef INTERSTATE75_LED_R_PIN
80#define INTERSTATE75_LED_R_PIN 16
81#endif
82
83#ifndef INTERSTATE75_LED_G_PIN
84#define INTERSTATE75_LED_G_PIN 17
85#endif
86
87#ifndef INTERSTATE75_LED_B_PIN
88#define INTERSTATE75_LED_B_PIN 18
89#endif
90
91#ifndef INTERSTATE75_I2C
92#define INTERSTATE75_I2C 0
93#endif
94
95#ifndef INTERSTATE75_INT_PIN
96#define INTERSTATE75_INT_PIN 19
97#endif
98
99#ifndef INTERSTATE75_SDA_PIN
100#define INTERSTATE75_SDA_PIN 20
101#endif
102
103#ifndef INTERSTATE75_SCL_PIN
104#define INTERSTATE75_SCL_PIN 21
105#endif
106
107#ifndef INTERSTATE75_USER_SW_PIN
108#define INTERSTATE75_USER_SW_PIN 23
109#endif
110
111#ifndef INTERSTATE75_A0_PIN
112#define INTERSTATE75_A0_PIN 26
113#endif
114
115#ifndef INTERSTATE75_A1_PIN
116#define INTERSTATE75_A1_PIN 27
117#endif
118
119#ifndef INTERSTATE75_A2_PIN
120#define INTERSTATE75_A2_PIN 28
121#endif
122
123#ifndef INTERSTATE75_NUM_ADC_PINS
124#define INTERSTATE75_NUM_ADC_PINS 3
125#endif
126
127#ifndef INTERSTATE75_CURRENT_SENSE_PIN
128#define INTERSTATE75_CURRENT_SENSE_PIN 29
129#endif
130
131// --- UART ---
132// no PICO_DEFAULT_UART
133// no PICO_DEFAULT_UART_TX_PIN
134// no PICO_DEFAULT_UART_RX_PIN
135
136// --- LED ---
137// Included so basic examples will work, and set it to the green LED
138#ifndef PICO_DEFAULT_LED_PIN
139#define PICO_DEFAULT_LED_PIN INTERSTATE75_LED_G_PIN
140#endif
141// no PICO_DEFAULT_WS2812_PIN
142
143#ifndef PICO_DEFAULT_LED_PIN_INVERTED
144#define PICO_DEFAULT_LED_PIN_INVERTED 1
145#endif
146
147// --- I2C ---
148#ifndef PICO_DEFAULT_I2C
149#define PICO_DEFAULT_I2C INTERSTATE75_I2C
150#endif
151#ifndef PICO_DEFAULT_I2C_SDA_PIN
152#define PICO_DEFAULT_I2C_SDA_PIN INTERSTATE75_SDA_PIN
153#endif
154#ifndef PICO_DEFAULT_I2C_SCL_PIN
155#define PICO_DEFAULT_I2C_SCL_PIN INTERSTATE75_SCL_PIN
156#endif
157
158// --- SPI ---
159// no PICO_DEFAULT_SPI
160// no PICO_DEFAULT_SPI_SCK_PIN
161// no PICO_DEFAULT_SPI_TX_PIN
162// no PICO_DEFAULT_SPI_RX_PIN
163// no PICO_DEFAULT_SPI_CSN_PIN
164
165// --- FLASH ---
166#define PICO_BOOT_STAGE2_CHOOSE_W25Q080 1
167
168#ifndef PICO_FLASH_SPI_CLKDIV
169#define PICO_FLASH_SPI_CLKDIV 2
170#endif
171
172#ifndef PICO_FLASH_SIZE_BYTES
173#define PICO_FLASH_SIZE_BYTES (2 * 1024 * 1024)
174#endif
175
176// All boards have B1 RP2040
177#ifndef PICO_RP2040_B0_SUPPORTED
178#define PICO_RP2040_B0_SUPPORTED 0
179#endif
180
181#endif