2025-03-12 9:56 AM
Hello everyone,
I have basic knowledge of embedded hardware and I am trying to expand the STM32H562ZI RAM through FMC. My configuration has a SDRAM at bank 1 with 8-bit data bus width (MT48LC64M8A2).
Indeed, I managed to make it work but only for single bytes, I would like to tell the compiler (or to whom it may concern) that when I write a word (32-bit) or half-word (16-bit) variable this is automatically converted in multiple transactions. At the moment, if I try for instance to write a "uint16_t" type I get an Hard Fault (e.g. use HAL_SDRAM_Write_16b() instead of HAL_SDRAM_Write_8b()).
Does FMC of STM32H562ZI support byte splitting? (I haven't noticed anything about that on the documentation or more probably I missed it)
Is there a way to make it work efficiently or writing byte arrays is effectively the only solution?
Thank you in advance for you help!