kopia lustrzana https://github.com/Jean-MarcHarvengt/MCUME
47 wiersze
1.3 KiB
C
47 wiersze
1.3 KiB
C
#pragma once
|
|
|
|
#include "hardware/spi.h"
|
|
#include "hardware/clocks.h"
|
|
|
|
#define CLK_SLOW_DEFAULT (100 * KHZ)
|
|
#define CLK_FAST_DEFAULT (50 * MHZ)
|
|
// CLK_FAST: actually set to clk_peri (= 125.0 MHz) / N,
|
|
// which is determined by spi_set_baudrate() in pico-sdk/src/rp2_common/hardware_spi/spi.c
|
|
|
|
/* SPI pin assignment */
|
|
#define PIN_SPI0_MISO_DEFAULT 4 // 0, 4, 16
|
|
#define PIN_SPI0_CS_DEFAULT 5 // 1, 5, 17
|
|
#define PIN_SPI0_SCK_DEFAULT 6 // 2, 6, 18
|
|
#define PIN_SPI0_MOSI_DEFAULT 7 // 3, 7, 19
|
|
|
|
#define PIN_SPI1_MISO_DEFAULT 8 // 8, 12
|
|
#define PIN_SPI1_CS_DEFAULT 9 // 9, 13
|
|
#define PIN_SPI1_SCK_DEFAULT 10 // 10, 14
|
|
#define PIN_SPI1_MOSI_DEFAULT 11 // 11, 15
|
|
|
|
typedef struct _pico_fatfs_spi_config_t {
|
|
spi_inst_t *spi_inst; // spi0 or spi1
|
|
uint clk_slow;
|
|
uint clk_fast;
|
|
uint pin_miso;
|
|
uint pin_cs;
|
|
uint pin_sck;
|
|
uint pin_mosi;
|
|
bool pullup; // miso, mosi pins only
|
|
} pico_fatfs_spi_config_t;
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/**
|
|
* Set configuration
|
|
*
|
|
* @param[in] config the pointer of pico_fatfs_spi_config_t to configure with
|
|
*/
|
|
void pico_fatfs_set_config(pico_fatfs_spi_config_t *config);
|
|
int pico_fatfs_reboot_spi(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif |