发 帖  
原厂入驻New
[原创]

灵动微课堂 (第163讲) | MM32F013x——Linux下搭建MM32开发环境

2021-4-30 09:43:13  167
分享
01开发环境描述
Cortex-M0型号:MM32F0133C7P
下载器与调试接口MM32 DAP-Link + SWD
操作系统Ubuntu20.0.4
集成开发环境平台:eclipse IDE for C/C++ developers
交叉编译链:ARM-none-eabi-gcc
调试服务器:JLink GDB Server

02
安装eclipse IDE for C/C++ developers
2.1     准备工作
需要下载两个软件包:
JDK:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

JDK是Eclipse的必要运行环境,本次实验使用的是jdk-8u231-linux-x64.tar.gz。
Eclipse:
https://www.eclipse.org/downloads/packages/

Eclipses根据开发语言选择合适的安装包,我们主要用C/C++开发,使用的是
Eclipse IDE for C/C++ Developers linux 64-bit。
注:安装包版本可自行选择,但要注意一点,新版本的eclipse可能会与低版本的JDK不兼容。

2.2     JAVA环境
在/opt文件夹下新建一个jvm目录,将解压后得到的jdk1.8.0_231(取决于JDK版本)移动到新建的jvm目录下,添加java路径后,在终端中键入命令

sudo mkdir /opt/jvm
sudo gedit .profile
在文件最后添加如下内容。(JDK版本号可能有所不同,文件夹的名称由实际的文件夹名称为准)

# java path
export JAVA_HOME=/opt/jvm/jdk1.8.0_231
export JRE_HOME=${JAVA_HOME}/jre
export CLasspATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

最后键入命令使得路径生效。

source .profile

此时,在终端中键入java版本查看命令。

java -version

如果出现如下信息,,则说明JAVA环境配置成功。

2.3     安装Eclipse
解压eclipse的软件包会得到一个eclipse的文件夹,将其移动到/opt目录下,建立jre软连接。

sudo mkdir /opt/eclipse/jre
sudo ln -s /opt/jvm/jdk1.8.0_231/bin /opt/eclipse/jre/

添加eclipse的桌面图标。

sudo gedit /usr/share/applications/eclipse.desktop

在打开的文件中键入。(注意Exe和Icon路径是否正确)

[Desktop Entry]
Encoding=UTF-8
Name=Eclipse
Comment=Eclipse
Exec=/opt/eclipse/eclipse
Icon=/opt/eclipse/icon.xpm
Terminal=false
StartupNotIFy=true
Type=Application
Categories=Application;Development;

接着ctrl+s保存文件,然后赋予可执行权限。

sudo chmod u+x /usr/share/applications/eclipse.desktop

最后将eclipse.desktop复制到桌面或者固定在dock上,后面就可以通过图标启动eclipse。

2.4     安装交叉编译链arm-none-eabi-gcc
我们从ARM官方选择合适的版本下载(此处选择了Linux64):
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
微信图片_20210430092341.png
下载的为tar.ba2格式压缩包,使用命令tar -jxf <要解压的文件>解压到我们要安装的目录:
微信图片_20210430092341.png
为了以后使用方便,将文件夹重命名:
微信图片_20210430092341.png
它下面的bin目录就是我们要使用的编译工具链:
微信图片_20210430092341.png
接下来我们要将bin目录添加到环境变量,这样可以直接在命令行输入要使用的工具名,然后系统就可以找到该工具,在此我们仅为当前用户添加环境变量,使用gedit ~/.bashrc编辑当前用户配置文件,在文件最后添加:

export PATH=$PATH:/home/neomissing/gcc-arm-none-eabi/bin
微信图片_20210430092341.png
然后使用命令source ~/.bashrc更新系统路径,使添加的环境变量立即生效:
微信图片_20210430092341.png
然后输入命令arm-none,然后按三下Tab(一定不要输入全部),检查系统是否可以自动补全。如果系统可以提示,说明环境变量配置成功,可以放心使用arm-none-eabi工具链。

2.5     安装GNU ARM Eclipse插件包
The recommended way to install these plug-ins is to use the Eclipse standard install/update mechanism: In the Eclipse menu: Help → Install New Software…
in the Install window, click the Add… button (on future updates, just select the URL in theWork with: combo)
fill in Name: with GNU ARM Eclipse Plug-ins
fill in Location:
with http://gnuarmeclipse.sourceforge.net/updates
微信图片_20210430092341.png
click the Add button
normally the main window should list a group named CDT GNU Cross Development Tools; expand it select all the plug-ins (the one marked End of life is needed only for compatibility with previous version, normally can be safely skipped)
click the Next button and follow the usual installation procedure
微信图片_20210430092341.png
Once you define the update site URL, further updates are greatly simplified (Help → Check For Updates)。

2.6     安装OpenOCD
安装openocd 打开Ubuntu终端(alt+ctrl+t)输入命令:

sudo apt install openocd

完成之后 输入openocd查看版本信息。
微信图片_20210430092341.png
目前默认安装的openocd芯片支持不全,找到openocd安装路径删除,复制替换MindMotion提供的openocd即可。
检查MM32 DAP-Link连接正常。
打开Ubuntu终端(alt+ctrl+t)输入lsusb,查看连接如下:
微信图片_20210430092341.png
03
创建MM32工程并配置、编译、调试
3.1     工程创建
打开eclipse,创建一个c工程,点击file,新建New Project,选择C Project。
微信图片_20210430092341.png
点击next,输入工程名字test,如下配置:
微信图片_20210430092341.png
连续点击next。
微信图片_20210430092341.png
选择选择工具链路径,这一路径就是我们第二步中arm-none-eabi-gdb的路径,需要匹配,点击finish。
微信图片_20210430092341.png
添加自己的工程文件,然后指定头文件路径以及配置路径,在工程浏览器中选中工程,右键单击选择Properties,再选择C/C++ Build-->Settings,跳出如下界面:
微信图片_20210430092341.png
配置汇编器Cross ARM GNU Assembler,主要是添加预处理宏:
微信图片_20210430092341.png
配置编译器Cross ARM C Compiler,添加预处理宏。
微信图片_20210430092341.png
添加头文件搜索目录。
微信图片_20210430092341.png
配置连接器 Cross ARM C Linker,主要是选择连接脚本文件。
微信图片_20210430092341.png
3.2     编译工程
选择Project-> Build Project选项来编译整个工程。
微信图片_20210430092341.png
3.3     连接目标板
在eclipse中配置openocd,连接目标板。点击External Tools Configurations,双击Program选项。
微信图片_20210430092341.png
然后打开终端输入如下命令 which openocd,找可执行文件openocd的路径,然后把路径复制到Location一栏,在Arguments一栏中输入如下配置信息:
-f /usr/share/openocd/scripts/inteRFace/cmsis-dap.cfg
-f /usr/share/openocd/scripts/target/mm32f013x.cfg
其中的mm32f013x.cfg需要根据你的目标板上的MCU不同而会改变。
此配置文件路径是安装openocd通过命令sudo apt install openocd安装的,是系统默认路径。如果用户在此路径中找不到相关文件,那么请自行查找与修改路径。
微信图片_20210430092341.png
微信图片_20210430092341.png
然后点击Apply,Run后会在窗口出现信息,表示连接成功。

3.4     debug调试
配置debug环境:点击Debug Configurations选项,双击GDB OpenOCD Debugging在窗口点击Debugger一栏。
微信图片_20210430092341.png
分别修改如下三个窗口的内容,第一个为可执行openocd命令所在路径,第二个为openocd连接DAP-Link与目标板的命令,第三个为工具链arm-none-eabi-gdb等所在的路径。
微信图片_20210430092341.png
点击Apply,Debug就可以开始调试。







0
微信图片_20210430092341.png
2021-4-30 09:43:13   评论 分享淘帖

只有小组成员才能发言,加入小组>>

1722个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /6 下一条

快速回复 返回顶部 返回列表