1.6 KiB
1.6 KiB
STM32H750XB Hello World Program
Board
Fire H750XB board
Build System
CMake v3.10+
Build Instructions
mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=arm-none-eabi.cmake # Or you can implement yours
make -j${nproc}
Peripherals Utilized
- FMC
- USART0
- TIM2
- TIM3
- TIM7
USART0
- PA9/PA10
- 921600/8N1
TIM2/3
- PWM output on CH3/CH4
- 1kHz base frequency
TIM7
- Tick source
FMC
FMC clock: 133MHz(Maximum frequency under VOS 3 settings)
SDRAM clock: 66.5MHz(FMC clock divided by 2)
Memory component: Winbond W9825G6KH-6(133MHz/CL2)
Memory parameters:
- Column address = 9bits
- Row address = 13bits
- Common clock = 2HCLK
- Burst read = enabled
- Read pipe delay = 0HCLK
- CL = 2 cycles
- tMRD(Load mode rergister) = 2 cycles
- tXSR(Exit self-refresh) = 72ns (~5 cycles)
- tRAS(Self regresh time) = 42ns (~3 cycles)
- tRC(Row cycle delay) = 60ns (~4 cycles)
- tWR(Write recovery) = 2 cycles
- tRP(Row precharge delay) = 15ns (~2 cycles)
- tRCD(Row to column delay) = 15ns (~2 cycles, up to 3 cycles for constraints)
Alternative memory parameters for 250MHz FMC clock(tCK = 8ns):
- Read pipe delay = 1HCLK
- CL = 2 cycles
- tMRD(Load mode rergister) = 2 cycles
- tXSR(Exit self-refresh) = 72ns (~9 cycles)
- tRAS(Self regresh time) = 42ns (~6 cycles)
- tRC(Row cycle delay) = 60ns (~8 cycles)
- tWR(Write recovery) = 2 cycles
- tRP(Row precharge delay) = 15ns (~2 cycles)
- tRCD(Row to column delay) = 15ns (~2 cycles, up to 4 cycles for constraints)