IAR en la SRAM permitir la ejecución de código en el

Medio Ambiente: IAR 8.40.1 MCU: MK64

1. Palabra clave __ramfunc

        IAR puede utilizar la función __ramfunc voluntad de palabras clave en la memoria RAM, la llamada de función con __ramfunc sin función __ramfunc estará alerta y ejecución de la CPU será más lenta. __ramfunc dirección no se puede especificar.

 

  

        

        ox1fff0015 está en SRAM

2. Modificar el archivo ICF

       1. Añadir copia automática

initialize by copy { readwrite, section RAMCODE};

       2. La sección RAMCODE puso el carnero

place in DATA_region                        {section RAMCODE};

       3. Añadir el código de prueba

       

//方式1
 void testfun(void) @"RAMCODE"
{
  uint8_t a=3, b=4, c;
  c=a+b; 
  PRINTF("\r\n c is value is %d\r\n", c);
}
//方式2
#pragma location = "RAMCODE" 
void testfun(void) //@"RAMCODE"
{
  uint8_t a=3, b=4, c;
  c=a+b; 
  PRINTF("\r\n c is value is %d\r\n", c);
}
//方式3 该方法可以同时将多个函数放到 RAMCODE中
#pragma default_function_attributes = @"RAMCODE" 
void testfun1(void) //@"RAMCODE"
{
  uint8_t a=3, b=4, c;
  c=a+b; 
  PRINTF("\r\n c is value is %d\r\n", c);
}

void testfun2(void) //@"RAMCODE"
{
  uint8_t a=3, b=4, c;
  c=a+b; 
  PRINTF("\r\n c is value is %d\r\n", c);
}
    .
    .
    .
#pragma default_function_attributes =

 

Publicado seis artículos originales · ganado elogios 0 · Vistas 516

Supongo que te gusta

Origin blog.csdn.net/qq_34492122/article/details/99703507
Recomendado
Clasificación