Что то не понимаю.

Сказано что если поток использует PSP а HANDLER MSP то возвращайся через 0xFFFFFFFD
(прерывание у меня собственно одно)
Сам код.
Код
#include <stdint.h>
#define STM32F10X_MD
#include "stm32f10x.h"
#define SYSCLK_FREQ_HSE
register uint32_t CONTROL __asm("control");
register uint32_t LR __asm("lr");
unsigned long AAA;
void SysTick_Handler(void){
AAA=1;
}
int main(void)
{
SysTick_Config(1600);
CONTROL=(uint32_t)0x02;
while(1)
{
AAA=2;
}
}
Действительно в While(1) наблюдаю PSP, в HANDLERе MSP.
Вот возврат LR=0xFFFFFFFD:
Код
0x0800038E 4770 BX lr
22: SysTick_Config(1600);
Вылетаю в HardFault. Почему не пойму.