使用SDCC的极简开发方法
常用的8位8051编译方案通常需要建立工程,或者联网下载大量运行库,在临时搭建、教别人搭建时较为麻烦。这里介绍一种Windows下的极简、快速的开发方法,适用于对代码较为熟练,或者代码量很小,不需要代码补全的情况,软件甚至可以放在U盘里。
需要准备的软件:
[*]STC的ISP软件:用于生成SDCC用的头文件、烧录单片机、串口调试等。
[*]SDCC编译器:默认会自动添加到PATH,前不久已更新到4.5.0。
[*]轻量文本编辑器:如记事本、NotePadNext等,用于编辑代码。还有很多同类文本编辑软件可参考此网址。
新建一个文件夹存放工程所有.c, .h文件(可以有子文件夹),并在其中建立一个.bat后缀的批处理文件用于编译:
@echo off
2>nul md build
set objs=
for /r %%f in (*.c) do sdcc %%f -I. -c -o "build\%%~nf.rel"&&call set objs=%%objs%% "build\%%~nf.rel"
sdcc %objs% -o build\output.hex&&type build\output.mem
pause解释:会自动建立build文件夹,递归搜索所有.c文件编译为.rel文件,并链接为output.hex文件。可使用STC的ISP软件下载(可勾选“当目标文件变化时自动装载并发送下载命令”)。
如果工程较小,每次都编译所有文件并不会花费很长时间。
如需清除生成的文件,关闭STC的ISP软件,再删除build目录即可。
如果只有一个.c文件,可以将文件拖到以下批处理上,直接编译成.hex文件:
@echo off
2>nul md build
sdcc %1 -o "build\%~n1.hex"&© "build\%~n1.hex" .&&type "build\%~n1.mem"
pause该批处理还将.hex复制一份,便于保存。
收藏备用,等厌烦keil了就用这套方法试试 MARK sdcc作为免费软件感觉编译效率不是很好。软件延时还要重新计算。
页:
[1]