Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo lee y escribe STM32 el FLASH interno del chip? ¿Cuántas variables se deben almacenar?

¿Cómo lee y escribe STM32 el FLASH interno del chip? ¿Cuántas variables se deben almacenar?

Se requieren tres variables. El programa es el siguiente:

void write_buf(u32 addr,u8 *p,u16 n)

{

.

u32 r1;

n=n/4;//Borrar y escribir flash

FLASH_Unlock();//Desbloquear FLASH

FLASH_ClearFlag(FLASH_FLAG_BSY | FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);//Borrar bit de bandera

FLASH_ErasePage(addr);

while(n--)

{r1=*( p++);

r1|=*(p++)<<8;

r1|=*(p++)<<16;

r1|=* (p++)<<24;

FLASH_ProgramWord(dirección, r1);

dirección+=4;

}

}

void read_buf(u32 addr,u8 *p,u16 n)

{

mientras(n--)

{

*(p++)=*((u8*)addr++);

}

}