(一)安装编译环境
因为Eclipse是基于Java的,所以Linux下也可以运行,同时使用Eclipse时,需要确认计算机是否有Java虚拟机的环境,如果没有,登陆甲骨文网http://www.oracle.com/index.html,下载JAVA JDK安装包,本人使用64bit的WIN7,所以下载了 jdk-8u51-windows-x64.exe。要注意,在WIN7/XP下安装完Java JDK后,并不是完成了,还要自己手动配置环境变量,详情可以百度《配置JAVA环境变量的配置》。
JAVA环境配置好后,登陆www.eclipse.org 下载 C/C++ 的Eclipse IDE,免安装,解压即可用(前提是JAVA环境配置好了)
接下来,就是插件的安装了,首先安装的CDT,,下载地址http://www.eclipse.org/cdt/,本人下载的是cdt-master-7.0.2.zip
安装方式:打开Eclipse->Help->Install New software,在弹出的窗口点"Archive",然后选择刚刚下载的CDT压缩包,再点OK。
然后勾选所有项目,按NEXT,等待即可
勾选全部后,一路按"NEXT"
CDT装完以后就可以安装GNU ARM Eclipse Plug-in: http://sourceforge.net/projects/gnuarmeclipse/ ,ilg.gnuarmeclipse.repository-2.7.1-201503211846.zip ,安装方式与CDT插件安装方式相同,目前的版本已经支持基于 GDB SEGGER JLINK 以及 GDB OpenOCD的调试。
5.然后就是安装交叉编译工具链了。目前有好几种Windows环境下的ARM交叉编译工具链,如 CodeSourcery Lite Edition(被Mentor收了), GNU ARM Tools for Embedded,Yagarto GCC, Linaro GCC, 由于是针对Cortex-M, 采用的都是 arm-none-eabi版本。本人使用gcc-arm-none-eabi-4_9-2015q1-20150306-win32.exe (环境变量的配置在最后讲)
下载地址:https://launchpad.net/gcc-arm-embedded/+download
最后,需要安装make工具,否则后面Eclipse无法配置而导致报错。
http://gnuwin32.sourceforge.net/packages/make.htm
下载的是sed安装文件,目前sed安装后不包含make.exe工具
因此需要下载一个make工具make.exe拷贝到安装后GnuWin32的bin目录下,并在环境变量Path中添加bin目录的路径
安装过后,无论是make工具还是GNU编译器,都是需要配置环境变量,详情如下
注意,在系统变量中,需要将编译器的Bin路径都放进去,注意两个路径之间需要用" ; "隔开,
例如,我 的系统变量的路径是这样的:C:\Program Files (x86)\GNU Tools ARM Embedded\4.9 2015q3\bin
在eclipse中,还需要对make工具和编译工具的路径进行添加,如下
__ASM volatile ("strexb %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" (value) );
__ASM volatile ("strexh %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" (value) );
修改完成后,保存!注意,请再选中工程项目,刷新F5,再一次编译。刷新是很重要的。
在Eclipse下想要调试STM32等单片机,需要J-LINK或者ST-LINK,相对来说,可能J-LINK的教程会比较多一些,
但手头上只有ST-LINK,物尽其用,想要在Eclipse下配置调试工具,请参考一下博文
http://blog.163.com/rainsmell_/blog/static/212827113201431443714393/
感谢上面博文的作者。
windows版本下载地址:http://www.st.com/web/en/catalog/tools/PF258168
Linux版本下载地址:https://github.com/texane/stlink
以下步骤是在Windows下进行的,Linux请参考【参考资料】
在Eclipse中,RUN->External Tools->External Tools configurations,对Program右键,新建选项卡,自行命名,只需更改【Main】和【Commom】选项卡,参数如图下
3.配置Openocd
下载地址:http://www.freddiechopin.info/en/download/category/4-openocd
如果是WIN7 64bit,请选择0.7.0版本,0.8.0会有BUG
3-1.解压到不含中文的路径(并且不能包含空格字符的路径中,注意:不能再Program File路径下)
3-2.在目录里openocd-0.7.0\scripts\interface 文件夹下,找到stlink-v2.cfg,并复制到工程目录下(因为我是使用ST-LINK V2的)
3-3.在目录里openocd-0.7.0\scripts\target文件夹下,找到stm32f1x_stlink.cfg,并复制到工程目录下(因为我是使用stm32f1x系列的,并且是非官方DEMO开发板,官方开发板配置请参考下方【参考资料】的博文)
3-4.跟配置ST-LINK的时候一样,RUN->External Tools->External Tools configurations,对Program右键,新建选项卡,自行命名,只需更改【Main】选项卡,其他选项卡为默认,参数栏必须按图填写,因为有先后之分,参数如图下
4.设置DEBUG 选项
4-1.Run->Debug configurations,新建GDB openocd Debugging选项卡
4-2.【MAIN】选项卡,选择工程名称和工程生成的ELF文件目录
4-3.【Debug】选项卡配置如下(此为关键点)
Openocd SETIP选项下的路径是openocd-x64-0.7.0.exe的路径
Openocd Setup选项下的Config option,需要填写上方两个.cfg文件的绝对路径,变量是无效的,并且注意,填写是有先后顺序之分的,务必按图上填写。(两个路径之间用空格隔开,因此路径本身的文件名不能包含空格)
GDB Client SETUP选项下的路径是arm-none-eabi-gdb.exe的路径
至此,连上ST-LINK,点击DEBUG,即可进行调试