stm32f411-i2s
All Classes Files Functions Variables Enumerations Pages
stm32-config-i2s.h
1 #pragma once
2 
3 #define I2S_BUFFER_SIZE 512
4 #define STM32_I2S_WITH_OBJECT
5 #define USE_FULL_ASSERT
6 
7 #ifdef ARDUINO_BLACKPILL_F411CE
8  #define SPI_INSTANCE_FOR_I2S SPI3
9  #define STM_I2S_PINS \
10  {\
11  {mclk, PB_10, GPIO_AF6_SPI3},\
12  {bck, PB_3, GPIO_AF6_SPI3},\
13  {ws, PA_4, GPIO_AF6_SPI3}, \
14  {data_out, PB_4, GPIO_AF7_I2S3ext},\
15  {data_in, PB_5, GPIO_AF6_SPI3},\
16  }
17 // 8 MHz / M * N / R => I2S Freq
18  #define PLLM 16
19  #define PLLN 192
20  #define PLLR 2
21 #endif
22 
23 #ifdef ARDUINO_GENERIC_F411VETX
24  #define SPI_INSTANCE_FOR_I2S SPI3
25  #define STM_I2S_PINS \
26  { \
27  {mclk, PC_7, GPIO_AF6_SPI3},\
28  {bck, PC_10, GPIO_AF6_SPI3},\
29  {ws, PA_4, GPIO_AF6_SPI3},\
30  {data_out, PC_12, GPIO_AF6_SPI3},\
31  {data_in, PC_3, GPIO_AF6_SPI3}\
32  };
33 // 8 MHz / M * N / R => I2S Freq
34  #define PLLM 16
35  #define PLLN 100
36  #define PLLR 2
37 #endif
38