¿Es ejecutable la pila en el MCU STM32F4? Quiero hacer esto:
unsigned int buffer[3];
buffer[0] = 0x10000FA5; //Address: 0x10000FA0
buffer[1] = 0xA0E1; //Address: 0x10000FA4 NOP
buffer[2] = 0xA0E1; //Address> 0x10000FA8 NOP
__asm __volatile__
(
"movw R1, #0x0fa0\n"
"movt R1, #0x1000\n"
"ldr pc, [r1, #0]\n"
);
En el código de ensamblaje, obtengo el contenido en la dirección 0x10000fa0 (búfer [0]) para obtener mi nuevo contador de programas. El nuevo contador del programa es 0x10000FA5, que es la dirección del contenido del búfer [1]. En el búfer [1] ahora hay una instrucción (NOP) guardada. ¿Es posible ejecutar esto?
Editar: Lo probé con GDB pero obtengo la siguiente excepción: prvGetRegistersFromStack (pulFaultStackAddress = 0x10000f78) de FreeRTOS