ubuntu系统使用eclipse+openocd+openjtag/jlink开发stm32

2023-05-16

环境搭建篇

ubuntu系统使用eclipse+openocd+openjtag/jlink开发stm32

相信很多同学在学习stm32,环境搭建很麻烦,这里总结一下,希望可以方便小伙伴们。

  • ubuntu系统使用eclipse+openocd+openjtag/jlink开发stm32
    • 环境介绍
    • 安装openjtag或jlink
      • openjtag驱动安装
      • jlink驱动
    • 安装openocd
    • 安装trueSTUDIO
    • 安装emm插件
  • https://www.segger.com/downloads/supported-devices.php
  • https://launchpad.net/gcc-arm-embedded/+download
  • https://my.st.com/content/my_st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.license=1520037054485.html

环境介绍

stm32的开发环境有很多种,其中最强大、最方便的就是SDK和IAR,但是这两个软件收费,所以向企业只能寻找免费开发工具,免费方案包括:eclipse、vim,其中eclipse是ide比较好用,纯vim编辑+makefile更原始化,如果vim用的很6,可以考虑vim。
编辑器使用eclipse,ST公司官网有一款类似的软件trueSTUDIO,2017年以前也是收费的,但是现在免费了,这款软件其实就是eclipse,只不过再次基础上配置了交叉编译工具链等插件,可以直接使用,无需配置。
仿真器使用openocd+openjtag/jlink,市面上有很多支持stm32的仿真器,其实仿真器很贵的,正版的 仿真器可能要七八百,但是自从jlink被破解后,淘宝上就出现了白菜价的jlink(50RMB),我这里openjtag和jlink都有,下面会介绍如何使用,方法一样,就是是改个参数而已。

安装openjtag或jlink

openjtag驱动安装

1首先插上openjtag,记下ID 1457:5118

    user@ubuntu:~/$ lsusb  
    Bus 002 Device 005: ID 093a:2521 Pixart Imaging, Inc.   
    Bus 002 Device 003: ID 1457:5118 First International Computer, Inc. OpenMoko Neo1973 Debug board (V2+)  

2 sudo gedit /etc/udev/rules.d/45-ftdi2232-libftdi.rules 添加驱动规则,加入下面内容


SYSFS{idProduct}=="5118", SYSFS{idVendor}=="1457", MODE="666", GROUP="plugdev"

3.重启服务

sudo /etc/init.d/udev restart

重新插拔openjtag

jlink驱动

1.SEGGER官网下载最新jlink驱动,网址 https://www.segger.com/downloads/jlink
2.下载完成后,找到下载好的文件,双击JLink_Linux_V614b_i386.deb,会自动在ubuntu software center安装,比压缩文件安装方便多啦。
3.找到路径 /opt/SEGGER/JLink/ ;执行JLinkExe,能进入则成功

这里写图片描述
4.顺便可以查看下jlink支持那些设备
https://www.segger.com/downloads/supported-devices.php

安装openocd

两种安装方式,任选其一。

apt安装方式:

apt install openocd

源码安装:
下载源码https://sourceforge.net/projects/openocd/
解压、执行

root@zjy-PC:/workSpace/software/f4# tar xvf openocd-0.10.0.tar.bz2 ^C
root@zjy-PC:/workSpace/software/f4# cd openocd-0.10.0
root@zjy-PC:/workSpace/software/f4/openocd-0.10.0# ./configure ^C
root@zjy-PC:/workSpace/software/f4/openocd-0.10.0# make^C
root@zjy-PC:/workSpace/software/f4/openocd-0.10.0# make install 

如果使用的是jlink
则执行

openocd -f /usr/share/openocd/scripts/interface/jlink.cfg  -f /usr/share/openocd/scripts/target/stm32f4x.cfg

如果使用的openJTAG,则执行

gedit /usr/share/openocd/scripts/interface/openjtag.cfg
  1 #
  2 # OpenJTAG
  3 #
  4 # www.openjtag.org
  5 #
  6 
  7 #interface openjtag
  8 #openjtag_device_desc "Open JTAG Project"
  9 
 10 interface ftdi
 11 ftdi_device_desc "USB<=>JTAG&RS232"  
 12 ftdi_vid_pid 0x1457 0x5118
 13 ftdi_layout_init 0x0c08 0x0f1b
 14 ftdi_layout_signal nTRST -data 0x0100 -noe 0x0400
 15 ftdi_layout_signal nSRST -data 0x0200 -noe 0x0800
 16 
 17 #interface ft2232
 18 #ft2232_device_desc "USB<=>JTAG&RS232"  
 19 #ft2232_layout jtagkey  
 20 #ft2232_vid_pid 0x1457 0x5118 

执行:
openocd -f /usr/share/openocd/scripts/interface/openjtag.cfg -f /usr/share/openocd/scripts/target/stm32f4x.cfg

这里写图片描述

至此openocd和jlink/openjtag安装完毕

安装trueSTUDIO

这个直接去官网下载,双击即可,傻瓜式安装,网址:
https://atollic.com/truestudio/
结合cubeMX软件生成初始化代码:
https://www.stmcu.com.cn/Designresource/design_resource_detail?file_name=STM32CubeMX_STM32%E5%88%9D%E5%A7%8B%E5%8C%96%E4%BB%A3%E7%A0%81%E7%94%9F%E6%88%90%E5%99%A8&lang=EN&ver=4.25.0

配置truyeSTUDIO:
使用trueSTUDIO打开cubemx生成的工程,工程上右键并选择:Debug As -> Debug Configuration -> Embedded C/C++ Application
右侧选择Debug,右下方选择openocd,并设置参数即可
这里写图片描述

安装emm插件

http://blog.csdn.net/LIU_YANZHAO/article/details/72736595

——————————————————————————————————

下面内容为个人备份,无需查看

——————————————————————————————————

安装jlink:
http://blog.csdn.net/justloong/article/details/73467875
jlink支持的设备

https://www.segger.com/downloads/supported-devices.php

安装openocd:
http://blog.csdn.net/tugouxp/article/details/54799924
使用方法:
https://www.cnblogs.com/51mcu/p/3404165.html
https://sourceforge.net/projects/openocd/?source=typ_redirect
使用方法:
终端1:openocd -f /usr/share/openocd/scripts/interface/jlink.cfg -f /usr/share/openocd/scripts/target/stm32f4x.cfg
终端2:telnet localhost 4444

halt
flash write_image erase $(dir)/(project name).hex
reset
Open On-Chip Debugger 0.10.0
openocd -f /usr/share/openocd/scripts/interface/openjtag.cfg -f /usr/share/openocd/scripts/target/stm32f4x.cfg
https://www.linuxidc.com/Linux/2015-08/121321.htm

=======================================================================================================================
安装 gcc-arm-none-eabi-xxx :

https://launchpad.net/gcc-arm-embedded/+download

安装eclipse:
http://opensource.zylin.com/embeddedcdt.html
http://download.eclipse.org/eclipse/downloads/drops4/R-4.4.2-201502041700/
http://blog.csdn.net/typa01_kk/article/details/49252513

=======================================================================================================================
安装cube

https://my.st.com/content/my_st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.license=1520037054485.html

安装emm
http://blog.csdn.net/LIU_YANZHAO/article/details/72736595

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ubuntu系统使用eclipse+openocd+openjtag/jlink开发stm32 的相关文章

随机推荐