Sure, use any STM32 board and get familiar with "embedded SW (FW) programming".
An STM32H7 is fine as well.
It just becomes a bit more tricky when it comes to MCUs with TrustZone and security (e.g. STM32N6).
You have to set some goals (for projects), e.g.:
- toggle an LED ("Hello World")
- to deal with peripherals, e.g. SPI, I2C - how to configure, how to wire HW, ...
- to deal with RTOS (FreeRTOS or Azure RTOS) - a project using RTOS threads...
- use USB (USR USB), e.g. for VCP (virtual USB UART) - here it becomes challenging to use the right drivers and SW stacks
- get familiar with IDE: how to debug?, how to use macros, libraries, to set optimization, ...
- get familiar with FPU (HW Floating Point Unit): how to enable, how to use (e.g. when using "float")
- get familiar with all the HAL and other Libraries provided, e.g. for Sensors, AI, ...
Not rocket science - just to be aware of much more HW related things... like:
- how to enable clock and power in an MCU
- how to configure peripheral devices, pin configuration, ALT modes
- how to debug code, esp. able to look into registers, check peripheral device registers...
- able to compare and understand datasheet and reference manuals
- able to read board schematics (e.g. to figure out which MCU I/O pin is used for what)
Have great fun with "embedded systems" programming... (most of all Linux and server knowledge you can forget, you have to learn how to deal with "tiny" things like MCU chips, HAL drivers, HW limitations, ...).
Good luck.