我使用avrdude和makefile編寫ATtiny2313。我相信堆棧指針沒有正確初始化,因爲當我調用一個函數時,程序似乎凍結。我發現以下彙編代碼:在ATtiny2313上初始化堆棧指針
.include "tn2313def.inc"
ldi r16, low(RAMEND) ; Main program start
out SPL,r16 ;Set Stack Pointer to top of RAM
我認爲可能會工作,但我不知道如何將它合併到我創建的c代碼中。即。我需要包含一個特殊的頭文件或以某種方式表示它是彙編而不是c。我對編程相對來說比較新,對於如何正確實現這些代碼或者使我當前的c代碼初始化堆棧指針的其他方法,我將不勝感激。
預先感謝您。
斯蒂芬