以前一直在Win系统下用MDK开发STM32,由于电脑原因,一直想在MacOS下搭建一个STM32的开发环境,但是都由于种种原因没有去搞。今天在查阅了N多网站、论坛、博客等,终于实现了,在这里做个总结。
一、相关工具的安装
1. 安装 J-Link 驱动
在 J-Link 官网 下载驱动并安装,支持 Windows,OS X,Linux,Linux ARM.这里我们选择 For Mac 下载
2. 安装 GNU Tools for ARM Embedded Processors
这是由 ARM 维护的一套工具,包括 GCC 编译器,GDB 调试工具等,在此处可以下载和安装。对于 OS X 和 Linux,直接解压即可。
3. 安装 Eclipse 及插件
下载 Eclipse CDT 并安装(我这里下载的是2015年3月27号的,后续可以下载更加新的版本),然后单击菜单栏中的 Help -> Install New Software… ,添加站点 http://gnuarmeclipse.sourceforge.net/updates ,并从中安装 CDT GNU Cross Development Tools.(这一步可能需要翻墙比较快)
PS:如果下载好的Eclipse CDT打不开,提示
则需要下载安装 jdk-7u67-macosx-x64.dmg 就行了。
二、创建工程
1.新建工程
进入 Eclipse,单击 File -> New -> C Project ,在左侧的 Executable 中可看到 STM32 Project,选择对应的工程,单击 Next.
选择芯片种类,我用的是 STM32F030F4,所以在Chip family这里选择STM32F030. 其中 Content 默认为 Blinky,是一个 LED 闪烁的测试程序。
继续单击 Next,会有文件目录和项目配置等,一般保持默认即可,在最后一步中,需要选择之前下载的 GNU ARM Toolchain 的 bin 文件夹所在位置。
单击 Finish,工程创建完毕。其中 STM32 的官方固件库也已经被自动添加到工程目录。单击工具栏上的 Build 按钮,一般情况下可以正常编译。
2.设置调试工具
编译成功后,单击菜单栏中的 Run -> Debug Configurations… 双击左侧的 GDB SEGGER J-Link Debugging,在右边 C/C++ Application 处输入工程中的可执行文件(在 Debug 目录)。
进入 Debugger 选项卡,输入 J-Link GDB Server 所在目录:/Applications/SEGGER/JLink/JLinkGDBServer ,并输入芯片名称,例如 STM32F030F4。之后点击Apply,关闭窗口。
然后单击工具栏中的 Debug 按钮旁边的箭头,在 Organize Favorites… 中添加之前的调试配置。连接好 J-Link 与单片机的电源,再单击该箭头,并选择菜单中的第一项,程序即可自动下载至单片机,并启动调试。
下面是调试窗口输出的信息:
来个LED闪烁的GIF:
用icc 吧,GCC编译出来的执行效率不能忍!
已经好久木有玩32了→_→