微處理器 - STCmicro STC15W104 - 解決SDCC編譯後無法動作的問題



使用自己的startup.asm,不要使用預設的Startup Code

startup.asm

.module startup
    .globl  _main

    .area HOME (CODE)
__reset_vector:
    ljmp __startup

    .area CSEG (CODE)
__startup:
    mov sp, #0x2f
    lcall _main

__halt:
    sjmp __halt

Makefile

all:
	sdcc -c main.c
	sdas8051 -plosgff startup.asm
	sdcc startup.rel main.rel -o main.ihx
	packihx main.ihx > main.hex

flash:
	timeout 10 stcgal -P stc15 -t 35000 main.hex

clean:
	rm -rf main.ihx main.lst main.mem main.rst main.lk main.map main.rel main.sym main.hex main.asm startup.lst  startup.rel  startup.rst  startup.sym