簡體   English   中英

在Code Composer Studio中為ARM cortex M4f在C變量中保存堆棧指針的值

[英]Saving value of stack pointer in C variable in Code Composer studio for ARM cortex M4f

我想知道一種可以將堆棧指針的值存儲到C中的變量的方法。

我發現內聯asm是無用的,因為它是特定於編譯器的,尤其是像這樣的事情,只需使用asm函數即可。 對於GNU匯編程序:

.thumb
.thumb_func
.globl GETSP
GETSP:
   mov r0,sp
   bx lr

在C

extern unsigned int GETSP ( void );
...
unsigned int sp;
...
sp=GETSP();

了解您每次使用此位置時,每次都會賦予相同的值。 對於許多編譯器來說,整個函數在整個函數中將得出相同的結果,如果該函數被其他不同函數重用,則您可能會得到sp值變化的結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM