你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
每日签到
STM32团队2
论坛吐槽优化专区
升级测试
ST意法半导体中文论坛
»
论坛
›
【技术区】
›
ST开发工具
›
Linux环境下STM32开发工具TrueSTUDIO初体验
返回列表
查看:
7419
|
回复:
2
[其他]
Linux环境下STM32开发工具TrueSTUDIO初体验
[复制链接]
zoomdy
zoomdy
当前离线
在线时间
51 小时
UID
208217
ST金币
0
蝴蝶豆
17
注册时间
2017-1-17
14
主题
293
回帖
17
蝴蝶豆
金牌会员
金牌会员, 积分 1361, 距离下一级还需 3639 积分
最后登录
2019-5-9
收听TA
发消息
发表于 2017-1-25 15:50:16
|
显示全部楼层
|
阅读模式
a4a.1 32b0c
本帖最后由 zoomdy 于 2017-1-25 20:52 编辑
Linux环境下STM32开发工具TrueSTUDIO初体验
TrueSTUDIO是Atollic公司出品的ARM开发工具,是STM32CubeMX支持的四种开发环境之一,号称“The best FREE C/C++ IDE for ARM® development”,从7.0版本开始推出了
Linux
版,后续还会推出Mac OS X版。截止今日(2017年1月25日)TrueSTUDIO for Linux 最新版本仍然是Alpha1。
http://blog.csdn.net/zoomdy/article/details/54728479
mingdu.zheng
at
gmail
dot
com
下载TrueSTUDIO for Linux
官方下载页面:
http://atollic.com/resources/download/linux/
,截止今日(2017年1月25日)还处于Beta状态,因此要点击
Join Beta Program
填写表单,然后下载链接会发送到表单中填写的邮箱中。也可以试试这个链接,不保证有效,
http://info.atollic.com/atollic-beta-program-download
。
配置要求
硬件配置要求
2GB内存,推荐4GB
4G硬盘空间
支持的Linux发行版
Ubuntu 16.04 LTS 64-bit,包括其它Ubuntu分支,如Xubuntu
Fedora 24 64-bit
理论上也支持其它发行版,但最好使用推荐的发行版
我选用的是Xubuntu 16.04 64位版本,因为我使用VirtualBox虚拟机运行,因此选择比较省资源的Xubuntu。
安装TrueSTUDIO
解压下载到压缩包
$ sudo tar -C /opt -xvf ~/Downloads/Atollic_TrueSTUDIO_for_ARM_linux_x86_64_v7.0.1_20161219-1526-alpha1.tar.gz
复制代码
执行安装脚本
$ cd /opt/Atollic_TrueSTUDIO_for_ARM_7.0.1 && sudo ./install.sh
复制代码
运行TrueSTUDIO
$ cd /opt/Atollic_TrueSTUDIO_for_ARM_7.0.1/ide && ./TrueSTUDIO
复制代码
TrueSTUDIO免费试用版启动后会展示升级到TrueSTUDIO Pro的广告,点击Close Window关闭广告窗口,该窗口会通过网络获取显示内容,有时候会比较慢。关掉该窗口后才能操作主窗口的其它部分。
使用STM32CubeMX生成TrueSTUDIO工程
打开STM32CubeMX,点击
New Project
,点击
Board Selector
选项卡, 选择
NUCLEO-F042K6
开发板,点击
OK
创建工程。
通过菜单
Project>>Settings…
打开
Project Settings
对话框,填入
Project Name
工程名称,选择
Project Location
选择工程保存目录,
Toolchain/IDE
选择
TrueSTUDIO
,点击
OK
完成工程设置 。
通过菜单
Project>>Generate Code
生成代码和工程文件。
完成后会弹出对话框,询问要不要打开工程,目前这个版本(7.0.1alpha1)点击
Open Project
会用浏览器打开TrueSTUDIO的工程文件,而不是用TrueSTUDIO打开,所以这里点击
Close
关闭对话框即可,后面用TrueSTUDIO的导入功能导入工程即可。
TrueSTUDIO导入工程
回到TrueSTUDIO,选择菜单
File>>Import…
,打开
Import
对话框,选择
General
分类下的
Existing Project into Workspace
,点击
Next
,
Select root directory
选择STM32CubeMX导出工程的目录,点击
Finish
完成工程导入。
关掉TrueSTUDIO的Infomation Center子窗口,就可以看到刚导入的工程了。打开Src/main.c文件后的TrueSTUDIO如下图所示。
TrueSTUDIO编译工程
由于使用STM32CubeMX生成的工程文件,因此编译参数都已经正确配置,所以选择菜单
Project>>Build Project
立即开始编译工程。
编译的过程会通过Console视图输出编译器的输出,可以看到调用的编译器、编译参数等。从编译输出可以看到TrueSTUDIO使用的编译器是arm-atollic-eabi-gcc,Atollic自己编译的GCC,随TrueSTUDIO一起安装,在TrueSTUDIO安装目录的ARMTools子目录下。
TrueSTUDIO调试工程
STM32CubeMX生成的工程已经添加了一个默认调试配置,使用ST-Link作为仿真器,但是TrueSTUDIO当前版本(7.0.1alpha1)并不支持ST-Link,还好TrueSTUDIO支持OpenOCD,可以选用OpenOCD作为ST-Link的GDB Server。
安装OpenOCD
首先需要安装OpenOCD,Ubuntu下使用下面的命令安装OpenOCD。
sudo apt install openocd
复制代码
配置TrueSTUDIO中的OpenOCD路径
选择TrueSTUDIO菜单
Window>>Preferences
打开首选项对话框,选择
Run/Debug>>Embedded C/C++ Application>>Debug Hardware>>OpenOCD
,在
Server
输入框内输入
/usr/bin/openocd
,在
Working directory
内输入当前用户的home路径。点击
OK
完成配置。
解决LIBUSB_ERROR_ACCESS问题
默认情况下,普通用户不能直接访问USB设备,为了让普通用户可以访问USB设备(ST-Link),需要创建文件/etc/udev/rules.d/98-stlink.rules,文件内容如下,注意得用sudo创建该文件,重启系统让该文件生效。
SUBSYSTEM=="usb", ATTR{idVendor}=="0483", ATTR{idProduct}=="374b", MODE="666"
SUBSYSTEM=="usb", ATTR{idVendor}=="0483", ATTR{idProduct}=="3748", MODE="666"
SUBSYSTEM=="usb", ATTR{idVendor}=="0483", ATTR{idProduct}=="3744", MODE="666"
复制代码
连接NUCLEO-F042K6
使用数据线将NUCLEO-F042K6连接到电脑。如果和我一样将开发环境建在VirtualBox虚拟机中,那么还需要将USB设备映射到虚拟机内,选择VirtualBox虚拟机菜单
设备>>分配USB设备>>STMicroelectronics STM32 STLink[0100]
将STLink映射到虚拟机内。
修改TrueSTUDIO调试配置
选择TrueSTUDIO菜单
Run>>Debug configurations…
,打开调试配置对话框,可以看到
Embedded C/C++ Application>>test.elf
调试配置,这是STM32CubeMX自动生成的,切换到
Debugger
选项卡,
Debug probe
选择
OpenOCD
,
GDB server arguments:
输入框内输入
-f board/st_nucleo_f0.cfg
。配置完成后,点击
Debug
就可以开始调试了。
OpenOCD输出到
Console
视图的信息,看到这些,说明环境配置成功了。
调试TrueSTUDIO工程
调试连接创建后,点击调试工具栏的按钮开始调试,调试工具栏见下图。按钮从左到右分别是:复位目标机(Restart)、连续执行(Resume)、暂停(Suspend)、停止调试(Terminate)、停止当前会话重新开启一个新会话(Terminate and relaunch)、进入单步(Step Into)、单步(Step Over)、返回当前函数(Step Return)、汇编单步(Instruction Stepping Mode)。和其它IDE差不多,就不多说了。
SFRs视图
SFRs视图提供了外设寄存器的查看和修改,包括核心外设和MCU外设,这对调试外设驱动是非常有帮助的。
总结
除了不支持ST-Link外,Linux版的TrueSTUDIO总体上与Windows版没有太大差异。还好TrueSTUDIO支持OpenOCD,弥补了不支持ST-Link的缺陷,如果没法调试那这个开发工具就显得很鸡肋了。后续的版本或许会完善ST-Link的支持。
trueSTUDIO
评分
参与人数
1
ST金币
+20
收起
理由
zero99
+ 20
查看全部评分
回复
使用道具
举报
Amaker
Amaker
当前离线
在线时间
10 小时
UID
3162078
ST金币
0
蝴蝶豆
0
注册时间
2015-11-5
0
主题
52
回帖
0
蝴蝶豆
初级会员
初级会员, 积分 186, 距离下一级还需 14 积分
最后登录
2020-6-28
收听TA
发消息
发表于 2020-5-29 10:34:52
|
显示全部楼层
a1024a.1 32b0c
赞一个!
回复
支持
反对
使用道具
举报
ucmmcu
ucmmcu
当前离线
在线时间
1 小时
UID
1702649
ST金币
0
蝴蝶豆
0
注册时间
2020-6-1
0
主题
2
回帖
0
蝴蝶豆
新手上路
新手上路, 积分 15, 距离下一级还需 35 积分
最后登录
2020-6-4
收听TA
发消息
发表于 2020-6-1 16:11:04
|
显示全部楼层
a1024a.1 32b0c
看看
回复
支持
反对
使用道具
举报
返回列表
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
13245底部标题123相同标题
12底部标题123相同标题
33333底部标题123相同序号
3435底部标题-无链接
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表