MCU에서 스택포인터를 구하기 위해 asm에서 sp를 읽을 수 있지만 다음과 같이 C 코드만으로 쉽게 구할 수도 있다.
void *GetSP(void){ volatile unsigned long var = 0; return (void *)((unsigned long)&var + 4);}
로컬변수는 스택에 저장되기 때문에 로컬변수의 포인터를 구하면 스택 포인터 주소를 알수 있다.
댓글 없음:
댓글 쓰기