Peripheral MCU configuration for the STM32L496G-DISCO board. More...
Peripheral MCU configuration for the STM32L496G-DISCO board.
Definition in file periph_conf.h.
#include "periph_cpu.h"
#include "clk_conf.h"
#include "cfg_rtt_default.h"
#include "cfg_usb_otg_fs.h"
#include "lcd_fmc.h"
Go to the source code of this file.
#define | CONFIG_BOARD_HAS_LSE 1 |
DMA streams configuration | |
#define | DMA_0_ISR isr_dma1_channel2 |
#define | DMA_1_ISR isr_dma1_channel3 |
#define | DMA_2_ISR isr_dma1_channel4 |
#define | DMA_3_ISR isr_dma1_channel5 |
#define | DMA_4_ISR isr_dma1_channel7 |
#define | DMA_5_ISR isr_dma2_channel6 |
#define | DMA_6_ISR isr_dma2_channel4 |
#define | DMA_NUMOF ARRAY_SIZE(dma_config) |
static const dma_conf_t | dma_config [] |
ADC configuration | |
Note that we do not configure all ADC channels, and not in the STM32L496AG order. Instead, we define 6 ADC channels for the Arduino header pins A0-A5, one channel for V_REFINT and one channel that is used for the STMod+ header pin STMOD+_ADC or the DAC1 output if The pin assignment can be found in board's user manual in Table 15, page 26 (Arduino compatible connectors) and Table 26, page 35 (32L496GDISCOVERY Discovery board I/O assignment). These tables are showing pin assignments and information about ADC - a text similar to Channels shared by multiple ADCs are referred to as Output from internal reference voltage V_REFINT is connected to ADC1 channel 0. The V_REF+ pin is not connected to an external reference voltage on the board by default. Instead the the VREFBUF must be used ( If an external reference voltage is used as V_REF+, either by soldering R18 to use V_DDA as reference voltage or by using the AVVD pin of the Arduino connector by closing the solder bridge SB2, the VREFBUF must not be enabled by defining | |
#define | ADC_NUMOF ARRAY_SIZE(adc_config) |
Number of ADC devices. | |
#define | VBAT_ADC ADC_LINE(7) |
V_BAT ADC line. | |
#define | VREFINT_ADC ADC_LINE(6) |
V_REFINT ADC line. | |
#define | VREFBUF_ENABLE (1) |
Enable VREFBUF as V_REF+. | |
static const adc_conf_t | adc_config [] |
DAC configuration | |
The V_REF+ pin is not connected to an external reference voltage on the board by default. Instead the the VREFBUF must be used ( | |
#define | DAC_NUMOF ARRAY_SIZE(dac_config) |
Number of DACs. | |
static const dac_conf_t | dac_config [] |
FMC configuration | |
#define | FMC_BANK_NUMOF ARRAY_SIZE(fmc_bank_config) |
Number of configured FMC banks. | |
#define | LCD_FMC_NUMOF 1 |
Number of LCDs using FMC banks. | |
static const fmc_conf_t | fmc_config |
FMC controller configuration. | |
static const fmc_bank_conf_t | fmc_bank_config [] |
FMC Bank configuration. | |
static const lcd_fmc_desc_t | lcd_fmc_desc [] |
Descriptors of FMC banks used for LCDs. | |
I2C configuration | |
I2C1 is exposed at Arduino Connector D14/D15 (SDA/SCL) and STmod+ connector I2C2 is used for MFX (Multi Function eXpander) | |
#define | I2C_0_ISR isr_i2c1_er |
#define | I2C_1_ISR isr_i2c2_er |
#define | I2C_NUMOF ARRAY_SIZE(i2c_config) |
static const i2c_conf_t | i2c_config [] |
PWM configuration | |
Four PWM channels are defined for the Arduino header pins D3, D5, D6 and D9, and one for the STMod+ header pin STMOD+_PWM. The pin assignment can be found in board's user manual in Table 15, page 26 (Arduino compatible connectors) and Table 26, page 35 (32L496GDISCOVERY Discovery board I/O assignment). | |
#define | PWM_NUMOF ARRAY_SIZE(pwm_config) |
static const pwm_conf_t | pwm_config [] |
SDIO/SDMMC configuration | |
#define | SDMMC_CONFIG_NUMOF 1 |
Number of configured SDIO/SDMMC peripherals. | |
static const sdmmc_conf_t | sdmmc_config [] |
SDIO/SDMMC static configuration struct. | |
SPI configuration | |
| |
#define | SPI_NUMOF ARRAY_SIZE(spi_config) |
static const spi_conf_t | spi_config [] |
Timer configuration | |
#define | TIMER_0_ISR isr_tim2 |
#define | TIMER_1_ISR isr_tim3 |
#define | TIMER_NUMOF ARRAY_SIZE(timer_config) |
static const timer_conf_t | timer_config [] |
UART configuration | |
| |
#define | UART_0_ISR (isr_usart2) |
#define | UART_1_ISR (isr_lpuart1) |
#define | UART_2_ISR (isr_usart1) |
#define | UART_NUMOF ARRAY_SIZE(uart_config) |
static const uart_conf_t | uart_config [] |
#define ADC_NUMOF ARRAY_SIZE(adc_config) |
Number of ADC devices.
Definition at line 119 of file periph_conf.h.
#define CONFIG_BOARD_HAS_LSE 1 |
Definition at line 26 of file periph_conf.h.
#define DAC_NUMOF ARRAY_SIZE(dac_config) |
Number of DACs.
Definition at line 164 of file periph_conf.h.
#define DMA_0_ISR isr_dma1_channel2 |
Definition at line 53 of file periph_conf.h.
#define DMA_1_ISR isr_dma1_channel3 |
Definition at line 54 of file periph_conf.h.
#define DMA_2_ISR isr_dma1_channel4 |
Definition at line 55 of file periph_conf.h.
#define DMA_3_ISR isr_dma1_channel5 |
Definition at line 56 of file periph_conf.h.
#define DMA_4_ISR isr_dma1_channel7 |
Definition at line 57 of file periph_conf.h.
#define DMA_5_ISR isr_dma2_channel6 |
Definition at line 58 of file periph_conf.h.
#define DMA_6_ISR isr_dma2_channel4 |
Definition at line 59 of file periph_conf.h.
#define DMA_NUMOF ARRAY_SIZE(dma_config) |
Definition at line 61 of file periph_conf.h.
#define FMC_BANK_NUMOF ARRAY_SIZE(fmc_bank_config) |
Number of configured FMC banks.
Definition at line 285 of file periph_conf.h.
#define I2C_0_ISR isr_i2c1_er |
Definition at line 346 of file periph_conf.h.
#define I2C_1_ISR isr_i2c2_er |
Definition at line 347 of file periph_conf.h.
#define I2C_NUMOF ARRAY_SIZE(i2c_config) |
Definition at line 349 of file periph_conf.h.
#define LCD_FMC_NUMOF 1 |
Number of LCDs using FMC banks.
Because it is used by the preprocessor it has to be a number. The ARRAY_SIZE can't be used here.
Definition at line 304 of file periph_conf.h.
#define PWM_NUMOF ARRAY_SIZE(pwm_config) |
Definition at line 397 of file periph_conf.h.
#define SDMMC_CONFIG_NUMOF 1 |
Number of configured SDIO/SDMMC peripherals.
Definition at line 431 of file periph_conf.h.
#define SPI_NUMOF ARRAY_SIZE(spi_config) |
Definition at line 490 of file periph_conf.h.
#define TIMER_0_ISR isr_tim2 |
Definition at line 514 of file periph_conf.h.
#define TIMER_1_ISR isr_tim3 |
Definition at line 515 of file periph_conf.h.
#define TIMER_NUMOF ARRAY_SIZE(timer_config) |
Definition at line 517 of file periph_conf.h.
#define UART_0_ISR (isr_usart2) |
Definition at line 599 of file periph_conf.h.
#define UART_1_ISR (isr_lpuart1) |
Definition at line 600 of file periph_conf.h.
#define UART_2_ISR (isr_usart1) |
Definition at line 601 of file periph_conf.h.
#define UART_NUMOF ARRAY_SIZE(uart_config) |
Definition at line 603 of file periph_conf.h.
#define VBAT_ADC ADC_LINE(7) |
V_BAT ADC line.
Definition at line 124 of file periph_conf.h.
#define VREFBUF_ENABLE (1) |
Enable VREFBUF as V_REF+.
If an external reference voltage is used as V_REF+, either by soldering R18 to use V_DDA as reference voltage or by using the AVVD pin of the Arduino connector by closing the solder bridge SB2, the VREFBUF must not be enabled by defining VREFBUF_ENABLE=0
.
Definition at line 140 of file periph_conf.h.
#define VREFINT_ADC ADC_LINE(6) |
V_REFINT ADC line.
Definition at line 129 of file periph_conf.h.
|
static |
Definition at line 100 of file periph_conf.h.
|
static |
|
static |
Definition at line 43 of file periph_conf.h.
|
static |
FMC Bank configuration.
The board has a PSRAM IS66WV51216EBLL-70BLI with 8 MBit on-board. It is organized in 512K x 16 bits and connected to bank 1, subbank 2 at address 0x64000000.
The LCD display of the board is connected to bank 1, subbank1 at address 0x60000000.
Definition at line 239 of file periph_conf.h.
|
static |
FMC controller configuration.
Definition at line 175 of file periph_conf.h.
|
static |
Definition at line 315 of file periph_conf.h.
|
static |
Descriptors of FMC banks used for LCDs.
Definition at line 290 of file periph_conf.h.
|
static |
Definition at line 364 of file periph_conf.h.
|
static |
SDIO/SDMMC static configuration struct.
Definition at line 408 of file periph_conf.h.
|
static |
Definition at line 447 of file periph_conf.h.
|
static |
Definition at line 497 of file periph_conf.h.
|
static |
Definition at line 531 of file periph_conf.h.