关于如何使用sdcc编译器,参见 单片机开发,推荐开源跨平台的SDCC编译器,其中较为详细叙述了使用方法和执行效率。
1,IDE基本环境
SDCC在eclipse有一个插件,版本1.0,发表于2006年,较为稳妥的IDE环境是2006年或之前发行的eclipse版本。查看eclipse官网,版本为3.10。在Eclipse Project Archives列出了以往版本,选择3.1下载 Eclipse Project,下载链接在这里 Eclipse Download Click Through。下载下来是一个zip文件,解压就可以使用了。没有解压软件?下载 7-Zip。
要使用eclipse,需要java,Java SE Development Kit 6u45就好,下载页面 Java Archive Downloads - Java SE 6 ,需要32位版本,与eclipse 3.1相对应。具体下载文件为jdk-6u45-windows-i586.exe,需要创建账户登录一下。安装,并设置java环境。如果没有自动设置,按照以下设置:
1)系统变量→新建 JAVA_HOME,变量值填写jdk的安装目录(本人是 D:\Tools\Java\jdk1.6.0_45)
2)系统变量→Path ,在最前面输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
3)系统变量→新建 CLASSPATH,变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点)。
系统变量配置完毕
安装好java,eclipse就可以运行起来了。看了界面,缺省支持java编程,需要安装CDT支持来C语言。在eclipse官网,查到对应eclipse3.1的CDT有CDT3.0.0,3.0.1,3.0.2,见页面 CDT Eclipse 3.1.x Based Releases Update Site ,下载CDT3.0.2:org.eclipse.cdt-3.0.2-win32.x86.zip 。解压,里面是eclipse目录,包含2个子目录 features 和 plugins,将这两个子目录合并到前面解压的eclipse3.1的同名目录中,重启eclipse就支持C开发IDE环境了,可以创建C和C++工程了。使用mingw测试一下。
2,SDCC安装
下载SDCC,Small Device C Compiler download | SourceForge.net ,这里下载32位版本的,sdcc-4.1.0-setup.exe ,下载之后双击安装。安装完毕自动设置好了运行路径path环境。测试一下:打开一个CMD命令窗口,输入 sdcc -v 按enter键,显示
SDCC : mcs51/z80/z180/r2k/r2ka/r3ka/gbz80/tlcs90/ez80_z80/z80n/ds390/pic16/pic14
/TININative/ds400/hc08/s08/stm8/pdk13/pdk14/pdk15 4.1.0 #12072 (MINGW32)
published under GNU General Public License (GPL)
就安装好了。支持的单片机还真不少啊。
3,将SDCC开发集成到eclipse IDE
下载eclipse SDCC插件 eclipseSDCC download | SourceForge.net ,文件为 net.sourceforge.eclipsesdcc-1.0.0-win32.x86.zip ,下载后解压,包含2个子目录 features 和 plugins,将这两个子目录合并到前面解压的eclipse3.1的同名目录中,重启eclipse就支持SDCC C开发IDE环境了。测试:File -> New -> Project,在C栏,选择Managed Make C Project -> Next,输入项目名称test -> Next,在Project Type选择MCS51family(SDCC) ->Finish。在工程项目中,新建一个Source文件 main.c, 内容如下
#include <stdio.h>
main()
{
int c;
c=2;
return 0;
}
在菜单Project,选Build Project(如果没有使用Build Automatically),编译会失败,没有make.exe!
实际在eclipse的SDCC插件目录eclipse\plugins\net.sourceforge.eclipsesdcc.win32_1.0.0\os\win32\x86中,包含了要用到的几个软件,分别是
echo.exe
make.exe
rm.exe
sh.exe
但是运行出错。
打补丁,安装cygwin:setup-x86.exe ,安装的是32位版本,源使用163的cygwin源 Index of /cygwin/ ,View选择pending,增加make等(按需要,增添其它软件),安装完毕之后,在环境变量path添加cygwin的bin目录,并用cygwin的echo.exe,make.exe,rm.exe,sh.exe替换eclipse\plugins\net.sourceforge.eclipsesdcc.win32_1.0.0\os\win32\x86中同名文件。
至此,SDCC的IDE环境安装完毕,编译成功,生成ihx烧写文件。对于STC单片机,用他的ISP直接烧写单片机即可。
================================================
eclipse3.1的界面外观设置不是很好搞。经测试,eclipse4.3.2可用,外观设置方法较多,可用moonrise等设置插件。