mirror of
https://github.com/raspberrypi/pico-sdk.git
synced 2025-12-10 07:14:36 +01:00
Add upcoming sparkfun board (#2329)
This commit is contained in:
parent
26ab4be834
commit
dd1f48335b
1 changed files with 183 additions and 0 deletions
183
src/boards/include/boards/sparkfun_iotredboard_rp2350.h
Normal file
183
src/boards/include/boards/sparkfun_iotredboard_rp2350.h
Normal file
|
|
@ -0,0 +1,183 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2024 Raspberry Pi (Trading) Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
*/
|
||||||
|
|
||||||
|
// -----------------------------------------------------
|
||||||
|
// NOTE: THIS HEADER IS ALSO INCLUDED BY ASSEMBLER SO
|
||||||
|
// SHOULD ONLY CONSIST OF PREPROCESSOR DIRECTIVES
|
||||||
|
// -----------------------------------------------------
|
||||||
|
// Board definition for the SparkFun IoT RedBoard - RP2350
|
||||||
|
//
|
||||||
|
// This header may be included by other board headers as "boards/sparkfun_iotredboard_rp2350.h"
|
||||||
|
|
||||||
|
// pico_cmake_set PICO_PLATFORM=rp2350
|
||||||
|
// pico_cmake_set PICO_CYW43_SUPPORTED = 1
|
||||||
|
|
||||||
|
#ifndef _BOARDS_SPARKFUN_IOTREDBOARD_RP2350_H
|
||||||
|
#define _BOARDS_SPARKFUN_IOTREDBOARD_RP2350_H
|
||||||
|
|
||||||
|
// For board detection
|
||||||
|
#define SPARKFUN_IOTREDBOARD_RP2350
|
||||||
|
|
||||||
|
// --- RP2350 VARIANT ---
|
||||||
|
#define PICO_RP2350A 0 // 1 for RP2350A, 0 for RP2350B
|
||||||
|
|
||||||
|
// --- BOARD SPECIFIC ---
|
||||||
|
#define SPARKFUN_IOTREDBOARD_RP2350_USER_SW_PIN 39
|
||||||
|
#define SPARKFUN_IOTREDBOARD_RP2350_PSRAM_CS_PIN 47
|
||||||
|
|
||||||
|
|
||||||
|
// --- UART ---
|
||||||
|
#ifndef PICO_DEFAULT_UART
|
||||||
|
#define PICO_DEFAULT_UART 0
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_UART_TX_PIN
|
||||||
|
#define PICO_DEFAULT_UART_TX_PIN 0
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_UART_RX_PIN
|
||||||
|
#define PICO_DEFAULT_UART_RX_PIN 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// --- LED ---
|
||||||
|
#ifndef PICO_DEFAULT_LED_PIN
|
||||||
|
#define PICO_DEFAULT_LED_PIN 25
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef PICO_DEFAULT_WS2812_PIN
|
||||||
|
#define PICO_DEFAULT_WS2812_PIN 3
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// --- I2C --- Qwiic connector is on these pins
|
||||||
|
#ifndef PICO_DEFAULT_I2C
|
||||||
|
#define PICO_DEFAULT_I2C 0
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_I2C_SDA_PIN
|
||||||
|
#define PICO_DEFAULT_I2C_SDA_PIN 4
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_I2C_SCL_PIN
|
||||||
|
#define PICO_DEFAULT_I2C_SCL_PIN 5
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// --- SPI ---
|
||||||
|
#ifndef PICO_DEFAULT_SPI
|
||||||
|
#define PICO_DEFAULT_SPI 0
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_SPI_SCK_PIN
|
||||||
|
#define PICO_DEFAULT_SPI_SCK_PIN 22
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_SPI_TX_PIN
|
||||||
|
#define PICO_DEFAULT_SPI_TX_PIN 23
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_SPI_RX_PIN
|
||||||
|
#define PICO_DEFAULT_SPI_RX_PIN 20
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_DEFAULT_SPI_CSN_PIN
|
||||||
|
#define PICO_DEFAULT_SPI_CSN_PIN 21
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// --- FLASH ---
|
||||||
|
|
||||||
|
#define PICO_BOOT_STAGE2_CHOOSE_W25Q080 1
|
||||||
|
|
||||||
|
#ifndef PICO_FLASH_SPI_CLKDIV
|
||||||
|
#define PICO_FLASH_SPI_CLKDIV 2
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// pico_cmake_set_default PICO_FLASH_SIZE_BYTES = (16 * 1024 * 1024)
|
||||||
|
#ifndef PICO_FLASH_SIZE_BYTES
|
||||||
|
#define PICO_FLASH_SIZE_BYTES (16 * 1024 * 1024)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// The IoT RedBoard has an SD Card.
|
||||||
|
#ifndef PICO_SD_CLK_PIN
|
||||||
|
#define PICO_SD_CLK_PIN 10
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_SD_CMD_PIN
|
||||||
|
#define PICO_SD_CMD_PIN 11
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_SD_DAT0_PIN
|
||||||
|
#define PICO_SD_DAT0_PIN 8
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_SD_DAT3_PIN
|
||||||
|
#define PICO_SD_DAT3_PIN 9 // DAT3 of the SD card is the chip select pin
|
||||||
|
#endif
|
||||||
|
#ifndef PICO_SD_DAT_PIN_COUNT
|
||||||
|
#define PICO_SD_DAT_PIN_COUNT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// The GPIO Pin used to monitor VSYS. Typically you would use this with ADC.
|
||||||
|
// There is an example in adc/read_vsys in pico-examples.
|
||||||
|
#ifndef PICO_VSYS_PIN
|
||||||
|
#define PICO_VSYS_PIN 46
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// pico_cmake_set_default PICO_RP2350_A2_SUPPORTED = 1
|
||||||
|
#ifndef PICO_RP2350_A2_SUPPORTED
|
||||||
|
#define PICO_RP2350_A2_SUPPORTED 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Bootloader activity LED in double reset mode.
|
||||||
|
#ifndef PICO_BOOTSEL_VIA_DOUBLE_RESET_ACTIVITY_LED
|
||||||
|
#define PICO_BOOTSEL_VIA_DOUBLE_RESET_ACTIVITY_LED PICO_DEFAULT_LED_PIN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Bootloader activity LED in USB reset mode.
|
||||||
|
#ifndef PICO_STDIO_USB_RESET_BOOTSEL_ACTIVITY_LED
|
||||||
|
#define PICO_STDIO_USB_RESET_BOOTSEL_ACTIVITY_LED PICO_DEFAULT_LED_PIN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// --- CYW43 ---
|
||||||
|
|
||||||
|
#ifndef CYW43_WL_GPIO_COUNT
|
||||||
|
#define CYW43_WL_GPIO_COUNT 3
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef CYW43_WL_GPIO_LED_PIN
|
||||||
|
#define CYW43_WL_GPIO_LED_PIN 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// If CYW43_WL_GPIO_VBUS_PIN is defined then a CYW43 GPIO has to be used to read VBUS.
|
||||||
|
// This can be passed to cyw43_arch_gpio_get to determine if the device is battery powered.
|
||||||
|
// PICO_VBUS_PIN and CYW43_WL_GPIO_VBUS_PIN should not both be defined.
|
||||||
|
#ifndef CYW43_WL_GPIO_VBUS_PIN
|
||||||
|
#define CYW43_WL_GPIO_VBUS_PIN 2
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// cyw43 SPI pins can't be changed at runtime
|
||||||
|
#ifndef CYW43_PIN_WL_DYNAMIC
|
||||||
|
#define CYW43_PIN_WL_DYNAMIC 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// gpio pin to power up the cyw43 chip
|
||||||
|
#ifndef CYW43_DEFAULT_PIN_WL_REG_ON
|
||||||
|
#define CYW43_DEFAULT_PIN_WL_REG_ON 24u
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// gpio pin for spi data out to the cyw43 chip
|
||||||
|
#ifndef CYW43_DEFAULT_PIN_WL_DATA_OUT
|
||||||
|
#define CYW43_DEFAULT_PIN_WL_DATA_OUT 38u
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// gpio pin for spi data in from the cyw43 chip
|
||||||
|
#ifndef CYW43_DEFAULT_PIN_WL_DATA_IN
|
||||||
|
#define CYW43_DEFAULT_PIN_WL_DATA_IN 38u
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// gpio (irq) pin for the irq line from the cyw43 chip
|
||||||
|
#ifndef CYW43_DEFAULT_PIN_WL_HOST_WAKE
|
||||||
|
#define CYW43_DEFAULT_PIN_WL_HOST_WAKE 38u
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// gpio pin for the spi clock line to the cyw43 chip
|
||||||
|
#ifndef CYW43_DEFAULT_PIN_WL_CLOCK
|
||||||
|
#define CYW43_DEFAULT_PIN_WL_CLOCK 37u
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// gpio pin for the spi chip select to the cyw43 chip
|
||||||
|
#ifndef CYW43_DEFAULT_PIN_WL_CS
|
||||||
|
#define CYW43_DEFAULT_PIN_WL_CS 36u
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // _BOARDS_SPARKFUN_IOTREDBOARD_RP2350_H
|
||||||
Loading…
Add table
Reference in a new issue