Arduino TKJHAT
Arduino library for Pico HAT extension board
Loading...
Searching...
No Matches
pins.h
1
9
10
11/* =========================
12 * Board / pin macros
13 * ========================= */
14
47
52
53#define DEFAULT_I2C_SDA_PIN 12
54#define DEFAULT_I2C_SCL_PIN 13
56
60#define HDC2021_INTERRUPT 21
62
66#define SW1_PIN 2
67#define SW2_PIN 22
69
73#define RED_LED_PIN 14
75
79#define BUZZER_PIN 17
81
85#define RGB_LED_R 18
86#define RGB_LED_G 19
87#define RGB_LED_B 20
89
93#define PDM_DATA 16
94#define PDM_CLK 15
96
100#define VEML6030_INTERRUPT 9
101#define HDC2021_INTERRUPT 21
102#define ICM42670_INT 6
104 /* end of group board_pins */
106
107
113
117#define VEML6030_I2C_ADDR 0x10
118#define VEML6030_CONFIG_REG 0x00
119#define VEML6030_ALS_REG 0x04
121
122/* =========================
123 * HDC2021
124 * ========================= */
125
129#define HDC2021_I2C_ADDRESS 0x40
130#define HDC2021_TEMP_LOW 0x00
131#define HDC2021_TEMP_HIGH 0x01
132#define HDC2021_HUMIDITY_LOW 0x02
133#define HDC2021_HUMIDITY_HIGH 0x03
134#define HDC2021_CONFIG 0x0E
135#define HDC2021_MEASUREMENT_CONFIG 0x0F
136#define HDC2021_TEMP_THR_L 0x13
137#define HDC2021_TEMP_THR_H 0x14
138#define HDC2021_HUMID_THR_L 0x15
139#define HDC2021_HUMID_THR_H 0x16
141
142
143/* =========================
144 * SSD1306
145 * ========================= */
146
150#define SSD1306_I2C_ADDRESS 0x3C
152
153/* =========================
154 * MEMS MICROPHONE
155 * ========================= */
159#define MEMS_SAMPLING_FREQUENCY 8000
160#define MEMS_BUFFER_SIZE 256
162
163/* =========================
164 * ICM-42670 (IMU)
165 * ========================= */
166
170#define ICM42670_I2C_ADDRESS 0x69
171#define ICM42670_I2C_ADDRESS_ALT 0x69
172#define ICM42670_REG_WHO_AM_I 0x75
173#define ICM42670_WHO_AM_I_RESPONSE 0x67
175
179#define ICM42670_INT_CONFIG 0x06
180#define ICM42670_INT1_CONFIG_VALUE 0x02
182
186#define ICM42670_MAX_READ_LENGTH 256
187#define ICM42670_MAX_WRITE_LENGTH 256
189
193#define ICM42670_ACCEL_CONFIG0_REG 0x21
194#define ICM42670_GYRO_CONFIG0_REG 0x20
195#define ICM42670_PWR_MGMT0_REG 0x1F
196#define ICM42670_REG_SIGNAL_PATH_RESET 0x02
197#define ICM42670_RESET_CONFIG_BITS 0x10
199
203#define ICM42670_ACCEL_FSR_2G 0x03
204#define ICM42670_ACCEL_FSR_4G 0x02
205#define ICM42670_ACCEL_FSR_8G 0x01
206#define ICM42670_ACCEL_FSR_16G 0x00
207#define ICM42670_ACCEL_FSR_DEFAULT 4
209
213#define ICM42670_GYRO_FSR_250DPS 0x03
214#define ICM42670_GYRO_FSR_500DPS 0x02
215#define ICM42670_GYRO_FSR_1000DPS 0x01
216#define ICM42670_GYRO_FSR_2000DPS 0x00
217#define ICM42670_GYRO_FSR_DEFAULT 250
219
223#define ICM42670_ACCEL_ODR_25HZ 0x0B
224#define ICM42670_ACCEL_ODR_50HZ 0x0A
225#define ICM42670_ACCEL_ODR_100HZ 0x09
226#define ICM42670_ACCEL_ODR_200HZ 0x08
227#define ICM42670_ACCEL_ODR_400HZ 0x07
228#define ICM42670_ACCEL_ODR_800HZ 0x06
229#define ICM42670_ACCEL_ODR_1600HZ 0x05
230#define ICM42670_ACCEL_ODR_DEFAULT 100
232
236#define ICM42670_GYRO_ODR_25HZ 0x0B
237#define ICM42670_GYRO_ODR_50HZ 0x0A
238#define ICM42670_GYRO_ODR_100HZ 0x09
239#define ICM42670_GYRO_ODR_200HZ 0x08
240#define ICM42670_GYRO_ODR_400HZ 0x07
241#define ICM42670_GYRO_ODR_800HZ 0x06
242#define ICM42670_GYRO_ODR_1600HZ 0x05
243#define ICM42670_GYRO_ODR_DEFAULT 100
245
249#define ICM42670_ACCEL_MODE_LN 0x03
250#define ICM42670_GYRO_MODE_LN 0x0C
252
256#define ICM42670_SENSOR_DATA_START_REG 0x09
258 /* end of group of registers*/