2024-02-27 07:42 AM
Heyho,
just checking the migration guide AN5293 for some peripherals I have not yet ported from F7 to H7:
if not mentioned in the document, are the peripherals completely and 100% identical (registers & bits) ?
Just checked for I2C, and it is not mentioned (except there's an additional I2C5 on H7 or so).
2024-02-27 11:00 PM
My suggestion when you port from F7 to H7:
At the end, with all the "correct" H-files - you should be able to use the "same" register again, even it would be on a different address. As long as the H-Files are the right ones - a "symbolic register' name should be mapped properly, even it would be a different address.
BUT: there is no guarantee, that with "new" HAL and BSP files - there could be a name change (on API calls, on typedefs, on register and pin names). Just be smart.
And it also happen, that something, e.g. a register, a member in a structure, is not available anymore or it works now slightly different.
Best approach is:
look for examples for this new board (in HAL, BSP) and adapt your code: mainly you have features, like SPI, I2C: do not expect a 1:1 code compatibility. But to bring up SPI, I2C again with new HAL drivers and examples as reference will help you.
Embedded FW is very dependent on the HW: do not expect full code compatibility when changing from one MCU to another. But the features should be possible as before, maybe a bit differently to configure and use.
2024-02-27 11:10 PM
@tjaekel thanks for your reply.
I'm already working successfully with H7 (Nucleo H723, H735 disco) for some months now, I know about the hardware and pinout differences.
There is just one peripheral left I have not taken over from the F7 firmware, and that's the I2C peripheral.
For most peripherals I do not use HAL or LL or BSP from ST, so it's important for me to know if a peripheral that is not mentioned in the migration guide is 100% and bit by bit compatible between F7 and H7.
I'm just too lazy to compare that by myself... but I guess I'll better do that.
2024-02-28 04:06 AM
Until now I only found one difference in the I2C registers:
in H7's I2C there is this additional bit:
Bit 18 WUPEN: Wakeup from Stop mode enable
That's not too bad, but it is not mentioned in the migration guide.
2024-02-29 04:36 AM
@Imen.D or @Peter BENSCH Could you please comment on the following basic question:
If not mentioned in the document (migration AN5293), are the peripherals completely and 100% identical (registers & bits) ?
Except for the one bit I already found to be different... but concerning setup, control and data flow and handling?