hpm5100_spi_flash_write.ino
Functionality test of internal Flash memory via XPI.
Uses XPI driver to access 1MB SiP Flash. Warning: sector erase takes time. Check XPI configuration in board.c. Code assumes flash is memory-mapped.
hpm5100_spi_flash_write.ino
#include "board.h"
#include "hpm_spi_drv.h"
#include "hpm_xpi_drv.h"
#define FLASH_BASE_ADDR 0x00000000
#define TEST_OFFSET 0x10000
void flash_test(void) {
uint32_t write_data = 0xDEADBEEF;
uint32_t read_data = 0;
// Effacement de secteur (nécessaire avant écriture)
xpi_flash_sector_erase(HPM_XPI0, TEST_OFFSET);
// Écriture
xpi_flash_write(HPM_XPI0, TEST_OFFSET, (uint8_t*)&write_data, 4);
// Lecture
xpi_flash_read(HPM_XPI0, TEST_OFFSET, (uint8_t*)&read_data, 4);
if (read_data == write_data) {
printf("Flash Test OK\n");
} else {
printf("Flash Test FAIL\n");
}
}
int main(void) {
board_init();
flash_test();
while(1);
}