五、sdcc 常用命令
1、查看c语言生产的汇编
sdcc -mstm8 -S -c main.c -o main.asm
_main:
; main.c: 23: CLK_CKDIVR = 0; //16MHz
mov 0x50c6+0, #0x00
; main.c: 24: setbit(pb.ddr,5);//设置pb5为输出
ld a, _pb+2
or a, #0x20
ld _pb+2, a
; main.c: 25: setbit(pb.cr1,5);//设置pb5为推挽输出,实际不存在:)
ld a, _pb+3
or a, #0x20
ld _pb+3, a
; main.c: 26: while(1)
00102$:
; main.c: 28: setbit(pb.odr,5); //高电平灭
ld a, _pb+0
or a, #0x20
ld _pb+0, a
; main.c: 29: delay(100000L);
push #0xa0
push #0x86
push #0x01
push #0x00
call _delay
addw sp, #4
; main.c: 30: rstbit(pb.odr,5); //低电平亮
ld a, _pb+0
and a, #0xdf
ld _pb+0, a
; main.c: 31: delay(300000L);
push #0xe0
push #0x93
push #0x04
push #0x00
call _delay
addw sp, #4
jra 00102$
; main.c: 33: }
ret
2、查看flash使用情况
查看自动生成的.map文件,包括内存和flash使用。其中flash主要看code段
|