1.. zephyr:board:: stm32f7508_dk
2
3Overview
4********
5
6The discovery kit enables a wide diversity of applications taking benefit
7from audio, multi-sensor support, graphics, security, security, video,
8and high-speed connectivity features. Important board features include:
9
10- STM32F750N8H6 microcontroller featuring 64 Kbytes of Flash memory and 340 Kbytes of RAM, in BGA216 package
11- On-board ST-LINK/V2-1 supporting USB re-enumeration capability
12- Five power supply options:
13
14  - ST LINK/V2-1
15  - USB FS connector
16  - USB HS connector
17  - VIN from Arduino connector
18  - External 5 V from connector
19
20- Two pushbuttons (user and reset)
21- USB functions: virtual COM port, mass storage, debug port
22- 4.3-inch 480x272 color LCD-TFT with capacitive touch screen
23- SAI audio codec
24- Audio line in and line out jack
25- Two ST MEMS microphones
26- SPDIF RCA input connector
27- 128-Mbit Quad-SPI Flash memory
28- 128-Mbit SDRAM (64 Mbits accessible)
29- Connector for microSD card
30- USB OTG HS with Micro-AB connectors
31- USB OTG FS with Micro-AB connectors
32- Ethernet connector compliant with IEEE-802.3-2002
33
34More information about the board can be found at the `32F7508-DK website`_.
35
36Hardware
37********
38
39The STM32F7508-DK Discovery kit provides the following hardware components:
40
41- STM32F750N8H6 in BGA216 package
42- ARM |reg| 32-bit Cortex |reg| -M7 CPU with FPU
43- 216 MHz max CPU frequency
44- 64 KB Flash
45- 320+16+4 KB SRAM
46- GPIO with external interrupt capability
47- 4.3-inch 480x272 color LCD-TFT with capacitive touch screen
48- 3x12-bit ADC
49- 2x12-bit D/A converters
50- RTC
51- Advanced-control Timer
52- General Purpose Timers (17)
53- Watchdog Timers (2)
54- USART/UART (8)
55- I2C (4)
56- SPI (6)
57- 2xSAI (serial audio interface)
58- 2xCAN
59- USB 2.0 OTG FS with on-chip PHY
60- USB 2.0 OTG HS/FS with dedicated DMA, on-chip full-speed PHY and ULPI
61- 10/100 Ethernet MAC with dedicated DMA
62- 8- to 14-bit parallel camera
63- CRC calculation unit
64- True random number generator
65- DMA Controller
66
67More information about STM32F750x8 can be found here:
68
69- `STM32F750x8 on www.st.com`_
70- `STM32F74xxx reference manual`_
71
72Supported Features
73==================
74
75The Zephyr stm32f7508_dk board configuration supports the following hardware features:
76
77+-----------+------------+-------------------------------------+
78| Interface | Controller | Driver/Component                    |
79+===========+============+=====================================+
80| NVIC      | on-chip    | nested vector interrupt controller  |
81+-----------+------------+-------------------------------------+
82| UART      | on-chip    | serial port-polling;                |
83|           |            | serial port-interrupt               |
84+-----------+------------+-------------------------------------+
85| PINMUX    | on-chip    | pinmux                              |
86+-----------+------------+-------------------------------------+
87| GPIO      | on-chip    | gpio                                |
88+-----------+------------+-------------------------------------+
89| FLASH     | on-chip    | flash memory                        |
90+-----------+------------+-------------------------------------+
91| ETHERNET  | on-chip    | Ethernet                            |
92+-----------+------------+-------------------------------------+
93| PWM       | on-chip    | pwm                                 |
94+-----------+------------+-------------------------------------+
95| I2C       | on-chip    | i2c                                 |
96+-----------+------------+-------------------------------------+
97| USB       | on-chip    | usb                                 |
98+-----------+------------+-------------------------------------+
99| SDMMC     | on-chip    | disk access                         |
100+-----------+------------+-------------------------------------+
101| SPI       | on-chip    | spi                                 |
102+-----------+------------+-------------------------------------+
103| QSPI NOR  | on-chip    | off-chip flash                      |
104+-----------+------------+-------------------------------------+
105| FMC       | on-chip    | memc (SDRAM)                        |
106+-----------+------------+-------------------------------------+
107| LTDC      | on-chip    | display                             |
108+-----------+------------+-------------------------------------+
109
110Other hardware features are not yet supported on Zephyr porting.
111
112The default configuration can be found in
113:zephyr_file:`boards/st/stm32f7508_dk/stm32f7508_dk_defconfig`
114
115Pin Mapping
116===========
117
118STM32F7508-DK Discovery kit has 9 GPIO controllers. These controllers are responsible for pin muxing,
119input/output, pull-up, etc.
120
121For more details please refer to `32F7508-DK board User Manual`_.
122
123Default Zephyr Peripheral Mapping:
124----------------------------------
125
126The STM32F7508 Discovery kit features an Arduino Uno V3 connector. Board is
127configured as follows
128
129- UART_1 TX/RX : PA9/PB7 (ST-Link Virtual Port Com)
130- UART_6 TX/RX : PC6/PC7 (Arduino Serial)
131- I2C1 SCL/SDA : PB8/PB9 (Arduino I2C)
132- SDMMC_1 D0/D1/D2/D3/CK/CD/CMD: PC8/PC9/PC10/PC11/PC12/PC13/PD2
133- SPI2 NSS/SCK/MISO/MOSI : PA8/PI1/PB14/PB15 (Arduino SPI)
134- PWM_3_CH1 : PB4
135- ETH : PA1, PA2, PA7, PC1, PC4, PC5, PG11, PG13, PG14
136- USER_PB : PI11
137- LD1 : PI1
138- USB DM : PA11
139- USB DP : PA12
140- FMC SDRAM :
141
142   - D0-D15 : PD14/PD15/PD0/PD1/PE7/PE8/PE9/PE10/PE11/PE12/PE13/PE14/PE15/PD8/PD9/PD10
143   - A0-A11 : PF0/PF1/PF2/PF3/PF4/PF5/PF12/PF13/PF14/PF15/PG0/PG1
144   - A14/A15 : PG4/PG5
145   - SDNRAS/SDNCAS : PF11/PG15
146   - NBL0/NBL1 : PE0/PE1
147   - SDCLK/SDNWE/SDCKE0/SDNE0 : PG8/PH5/PC3/PH3
148
149- LTDC :
150
151   - R0-R7 : PI15/PJ0/PJ1/PJ2/PJ3/PJ4/PJ5/PJ6
152   - G0-G7 : PJ7/PJ8/PJ9/PJ10/PJ11/PK0/PK1/PK2
153   - B0-B7 : PJ12/PK13/PJ14/PJ15/PK3/PK4/PK5/PK6
154   - DE/CLK/HSYNC/VSYNC : PK7/PI14/PI12/PI13
155
156
157System Clock
158============
159
160The STM32F7508 System Clock can be driven by an internal or external oscillator,
161as well as by the main PLL clock. By default, the System clock is driven by the PLL
162clock at 216MHz, driven by a 25MHz high speed external clock.
163
164Serial Port
165===========
166
167The STM32F7508-DK Discovery kit has up to 8 UARTs. The Zephyr console output is assigned to UART1
168which connected to the onboard ST-LINK/V2 Virtual COM port interface. Default communication
169settings are 115200 8N1.
170
171Programming and Debugging
172*************************
173
174STM32F7508-DK Discovery kit includes an ST-LINK/V2 embedded debug tool interface.
175
176Applications for the ``stm32f7508_dk`` board configuration can be built and
177flashed in the usual way (see :ref:`build_an_application` and
178:ref:`application_run` for more details).
179
180Flashing
181========
182
183The board is configured to be flashed using west `STM32CubeProgrammer`_ runner,
184so its :ref:`installation <stm32cubeprog-flash-host-tools>` is required.
185
186Alternatively, OpenOCD or JLink can also be used to flash the board using
187the ``--runner`` (or ``-r``) option:
188
189.. code-block:: console
190
191   $ west flash --runner openocd
192   $ west flash --runner jlink
193
194Flashing an application to STM32F7508-DK
195-------------------------------------------
196
197First, connect the STM32F746G Discovery kit to your host computer using
198the USB port to prepare it for flashing. Then build and flash your application.
199
200Here is an example for the :zephyr:code-sample:`hello_world` application.
201
202.. zephyr-app-commands::
203   :zephyr-app: samples/hello_world
204   :board: stm32f7508_dk
205   :goals: build flash
206
207Run a serial host program to connect with your board:
208
209.. code-block:: console
210
211   $ minicom -D /dev/ttyACM0
212
213You should see the following message on the console:
214
215.. code-block:: console
216
217   Hello World! arm
218
219Debugging
220=========
221
222You can debug an application in the usual way.  Here is an example for the
223:zephyr:code-sample:`hello_world` application.
224
225.. zephyr-app-commands::
226   :zephyr-app: samples/hello_world
227   :board: stm32f7508_dk
228   :goals: debug
229
230
231.. _32F7508-DK website:
232   https://www.st.com/en/evaluation-tools/stm32f7508-dk.html
233
234.. _32F7508-DK board User Manual:
235   https://www.st.com/resource/en/user_manual/dm00537062-discovery-kit-for-stm32f7-series-with-stm32f750n8-mcu-stmicroelectronics.pdf
236
237.. _STM32F750x8 on www.st.com:
238   https://www.st.com/resource/en/datasheet/stm32f750z8.pdf
239
240.. _STM32F74xxx reference manual:
241   https://www.st.com/resource/en/reference_manual/dm00124865.pdf
242
243.. _STM32CubeProgrammer:
244   https://www.st.com/en/development-tools/stm32cubeprog.html
245