Skip to content

Commit

Permalink
boards: add support for stm32f7508-dk
Browse files Browse the repository at this point in the history
  • Loading branch information
aabadie committed Apr 14, 2022
1 parent 2790e36 commit 41d4653
Show file tree
Hide file tree
Showing 8 changed files with 123 additions and 15 deletions.
16 changes: 1 addition & 15 deletions boards/stm32f746g-disco/Makefile.features
Original file line number Diff line number Diff line change
@@ -1,17 +1,3 @@
CPU = stm32
CPU_MODEL = stm32f746ng

# Put defined MCU peripherals here (in alphabetical order)
FEATURES_PROVIDED += periph_dma
FEATURES_PROVIDED += periph_eth
FEATURES_PROVIDED += periph_i2c
FEATURES_PROVIDED += periph_ltdc
FEATURES_PROVIDED += periph_rtc
FEATURES_PROVIDED += periph_rtt
FEATURES_PROVIDED += periph_spi
FEATURES_PROVIDED += periph_timer
FEATURES_PROVIDED += periph_uart
FEATURES_PROVIDED += periph_usbdev

# stm32f746g-disco provides a custom default Kconfig clock configuration
KCONFIG_BOARD_CONFIG += $(RIOTBOARD)/stm32f746g-disco/clock.config
include $(RIOTBOARD)/stm32f746g-disco/features-shared.mk
16 changes: 16 additions & 0 deletions boards/stm32f746g-disco/features-shared.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
CPU = stm32

# Put defined MCU peripherals here (in alphabetical order)
FEATURES_PROVIDED += periph_dma
FEATURES_PROVIDED += periph_eth
FEATURES_PROVIDED += periph_i2c
FEATURES_PROVIDED += periph_ltdc
FEATURES_PROVIDED += periph_rtc
FEATURES_PROVIDED += periph_rtt
FEATURES_PROVIDED += periph_spi
FEATURES_PROVIDED += periph_timer
FEATURES_PROVIDED += periph_uart
FEATURES_PROVIDED += periph_usbdev

# stm32f746g-disco provides a custom default Kconfig clock configuration
KCONFIG_BOARD_CONFIG += $(RIOTBOARD)/stm32f746g-disco/clock.config
34 changes: 34 additions & 0 deletions boards/stm32f7508-dk/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Copyright (c) 2022 Inria
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "stm32f7508-dk" if BOARD_STM32F7508_DK

config BOARD_STM32F7508_DK
bool
default y
select CPU_MODEL_STM32F750N8

# Put defined MCU peripherals here (in alphabetical order)
select HAS_PERIPH_DMA
select HAS_PERIPH_ETH
select HAS_PERIPH_I2C
select HAS_PERIPH_LTDC
select HAS_PERIPH_RTC
select HAS_PERIPH_RTT
select HAS_PERIPH_SPI
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV

# Clock configuration
select BOARD_HAS_HSE
select BOARD_HAS_LSE

select HAVE_SAUL_GPIO
select HAVE_FT5X06

source "$(RIOTBOARD)/common/stm32/Kconfig"
5 changes: 5 additions & 0 deletions boards/stm32f7508-dk/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
MODULE = board

DIRS = $(RIOTBOARD)/stm32f746g-disco

include $(RIOTBASE)/Makefile.base
1 change: 1 addition & 0 deletions boards/stm32f7508-dk/Makefile.dep
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
include $(RIOTBOARD)/stm32f746g-disco/Makefile.dep
3 changes: 3 additions & 0 deletions boards/stm32f7508-dk/Makefile.features
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
CPU_MODEL = stm32f750n8

include $(RIOTBOARD)/stm32f746g-disco/features-shared.mk
3 changes: 3 additions & 0 deletions boards/stm32f7508-dk/Makefile.include
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
INCLUDES += -I$(RIOTBOARD)/stm32f746g-disco/include

include $(RIOTBOARD)/stm32f746g-disco/Makefile.include
60 changes: 60 additions & 0 deletions boards/stm32f7508-dk/doc.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
/**
* @defgroup boards_stm32f750n8-dk STM32F750N8-DK
* @ingroup boards
* @brief Support for the STM32F750N8-DK board.

## Overview

The ST [STM32F750N8-DK](https://www.st.com/en/evaluation-tools/stm32f7508-dk.html)
is an evaluation board supporting a ARM Cortex-M7 STM32750N8 microcontroller
with 340KB of RAM and 64KB of ROM Flash. This board is just a clone of the
@ref boards_stm32f746g-disco board with a different microcontroller. The pinout
is identical.

As a result, the main features available on this board are shared with the ones
provided by the @ref boards_stm32f746g-disco:
- a 4"3 RGB 480×272 color LCD-TFT with capacitive touch screen,
- an ethernet port
- 2 user USB ports (FS and HS)
- 2 user digital microphones
- 128M-bit external Quas-SPI flash
- 128M-bit external SDRAM

Current hardware support:

| Feature | Support | Configuration |
| ------------- | :---------------------: | --------------------- |
| UART | X | USART1 on PB7/PA9 (stdio) and USART6 on PC6/PC7 |
| SPI | X | SPI2 on PB15/PB14/PI1 |
| I2C | X | I2C1 on PB8/PB9 |
| Ethernet | X | |
| USB OTG FS | X | |
| USB OTG HS | - | |
| TFT LCD | X | |
| Capacitive touch screen | X | |
| User microphones | - | |
| External Quad-SPI Flash | - | |
| External SDRAM | - | |

## Flashing the device

The STM32F750N8-DK board includes an on-board ST-LINK programmer and can be
flashed using OpenOCD.
The board can be flashed with:

```
make BOARD=stm32f750n8-dk flash
```

and debug via GDB with
```
make BOARD=stm32f750n8-dk debug
```

## Supported Toolchains

For using the STM32F750N8-DK board we recommend the usage of the
[GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
toolchain.

*/

0 comments on commit 41d4653

Please sign in to comment.