hpm5100_spi_flash_write.ino

HPMicro HPM5100: Microcontrolador RISC-V de 400 MHz para control de motores y adquisición analógica · Archivo : hpm5100_spi_flash_write.ino · Lenguaje : C · Uso : Écrire et lire des données dans la mémoire Flash SiP via l'interface XPI.

Test de fonctionnalité de la mémoire Flash interne via XPI.

Usa el driver XPI para acceder a la Flash SiP de 1 MB. Advertencia: borrar un sectoro toma tiempo. Verifique la configuración de XPI en board.c. El código asume que la flash está mapeada en memoria.

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);
}

← Volver a la ficha