在ubuntu下设置eclipse开发STM32等嵌入式设备

本文涉及的产品
资源编排,不限时长
简介: 之前为了能够让ROS与底层能够顺利通讯,我采用可开源开发板arduino ,因为arduino有ROS的库,能够按照ROS wiki上所给的教程就可以顺利的开发,但由于arduino的局限性,我觉得是可以直接用嵌入式开发ROS 与底层的通信的,(不知道为什么我写这样理由的时候,就写不下去了) 。

       之前为了能够让ROS与底层能够顺利通讯,我采用可开源开发板arduino ,因为arduino有ROS的库,能够按照ROS wiki上所给的教程就可以顺利的开发,但由于arduino的局限性,我觉得是可以直接用嵌入式开发ROS 与底层的通信的,(不知道为什么我写这样理由的时候,就写不下去了) 。

   在ubuntu系统下安装ROS ,安装arduino ,安装eclipse,等相关软件的安装,我也是在ubuntu下顺利的配置好eclipse并且正确的下载了STM32 的程序后,觉得有必要在我的博客写一下,但是可能中间的一些具体细节就可能忘记了,,,但整体的思路就是对的,而且得自己慢慢的摸索!

首先给一些网址,我就是根据这些网址自己慢慢摸索吧

QEMU 安装   gnuarmeclipse.github.io/debug/qemu/#define-the-qemufolder-location

How to install the QEMU binaries?      gnuarmeclipse.github.io/qemu/install/

GNU ARM Eclipse Plug-ins Features      gnuarmeclipse.github.io/plugins/features/

Toolchain path management          gnuarmeclipse.github.io/toolchain/path/

JLink驱动下载http://www.segger.com/cms/jlink-software.html

      1. 安装java、配置环境变量
      2. 下载Eclipse IDE for C/C++ Developers 环境
      3. 解压Eclipse, 下载GNU ARM Eclipse Plug-in最新版本

         安装eclipse后点击HELP——eclipse marketpalce 

        在find 里输入ARM我们会看到GNU ARM Eclipse 3.1.1(插件的版本号可能不一样)点击“install”即可安装  

                       

在HELP-software install      GNU ARM Eclipse Plug-ins - http://gnuarmeclipse.sourceforge.net/updates

安装,可以选择全部安装。

                       

一切准备就绪   现在就是新建工程,建立一个STM32fXX的工程一直点击下一步,不需要改什么,但同时我们需要设置编译器的位置,官网下载gcc-arm-none-eabi-5_4-2016q2-20160622-linux.tar.bz2,然后解压,设置好编译器的路径,

 

下载jinkGDBserver,http://www.segger.com/cms/jlink-software.html  使用命令安装,会安装到/opt文件下,

程序建立后点击“build project”,通过JINK链接STM32开发板,之后在run configure  设置

          

在Executable栏目设置JinkGDBServer的路径,手动输入“Device name”比如STM32F103RB其他设置不用改变,

在startup栏目下输入下的设置

# Enable flash download and flash breakpoints.
# Flash download and flash breakpoints are features of
# the J-Link software which require separate licenses 
# from SEGGER.
# Select flash device
    monitor flash device = STM32F103ZE
# Enable FlashDL and FlashBPs
    monitor flash download = 1
    monitor flash breakpoints = 1
# Clear all pendig breakpoints
    monitor clrbp
# Set gdb server to little endian
    monitor endian little
# Set JTAG speed to 5 kHz
    monitor speed 5
# Reset the target
    monitor reset
    monitor sleep 100
# Set JTAG speed in khz
    monitor speed auto
# Vector table placed in Flash
    monitor writeu32 0xE000ED08 = 0x00000000
(可以更改STM32的名称以及晶振频率等)
然后“run”即可下载程序,

出现
GNU gdb (GNU Tools for ARM Embedded Processors) 7.10.1.20160616-cvs
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=i686-linux-gnu --target=arm-none-eabi".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
Remote connection closed
重新给开发板上电就可以正常运行
相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
相关文章
|
20天前
|
数据可视化 关系型数据库 MySQL
嵌入式C++、STM32、MySQL、GPS、InfluxDB和MQTT协议数据可视化
通过本文的介绍,我们详细讲解了如何结合嵌入式C++、STM32、MySQL、GPS、InfluxDB和MQTT协议,实现数据的采集、传输、存储和可视化。这种架构在物联网项目中非常常见,可以有效地处理和展示实时数据。希望本文能帮助您更好地理解和应用这些技术,构建高效、可靠的数据处理和可视化系统。
143 82
|
4月前
|
Ubuntu Shell Python
Ubuntu学习笔记(一):pycharm设置快捷启动图标详解
这篇博客详细讲解了如何在Ubuntu 20.04系统中为PyCharm设置快捷启动图标,包括创建.desktop文件、编辑文件内容以及添加到收藏夹的步骤。
470 0
Ubuntu学习笔记(一):pycharm设置快捷启动图标详解
|
2月前
|
运维 监控 Ubuntu
【运维】如何在Ubuntu中设置一个内存守护进程来确保内存不会溢出
通过设置内存守护进程,可以有效监控和管理系统内存使用情况,防止内存溢出带来的系统崩溃和服务中断。本文介绍了如何在Ubuntu中编写和配置内存守护脚本,并将其设置为systemd服务。通过这种方式,可以在内存使用超过设定阈值时自动采取措施,确保系统稳定运行。
120 4
|
3月前
|
NoSQL 编译器 C语言
C语言调试是开发中的重要技能,涵盖基本技巧如打印输出、断点调试和单步执行,以及使用GCC、GDB、Visual Studio和Eclipse CDT等工具。
C语言调试是开发中的重要技能,涵盖基本技巧如打印输出、断点调试和单步执行,以及使用GCC、GDB、Visual Studio和Eclipse CDT等工具。高级技巧包括内存检查、性能分析和符号调试。通过实践案例学习如何有效定位和解决问题,同时注意保持耐心、合理利用工具、记录过程并避免过度调试,以提高编程能力和开发效率。
77 1
|
4月前
|
网络协议 Ubuntu 网络安全
|
4月前
|
Linux Android开发 Windows
IDEA如何设置成Eclipse的快捷键
【10月更文挑战第9天】这段内容介绍了如何在 IntelliJ IDEA 中设置类似 Eclipse 的快捷键。主要包括:1) 打开设置;2) 进入快捷键设置页面;3) 选择 Eclipse 快捷键方案;4) 可选的自定义调整。通过这些步骤,可以让熟悉 Eclipse 的用户更快适应 IDEA。
1115 4
|
4月前
|
Ubuntu
Ubuntu修改设备名称
本文介绍了如何在Ubuntu系统中通过修改`/etc/hostname`和`/etc/hosts`文件来更改设备名称,并提到了重启设备以应用更改。
70 0
Ubuntu修改设备名称
|
4月前
|
开发框架 缓存 Ubuntu
dotnet开发框架+ubuntu防火墙命令+win11设置自动登录+阿里云短信发送限制
dotnet开发框架+ubuntu防火墙命令+win11设置自动登录+阿里云短信发送限制
65 3
|
4月前
【寄存器开发速成】半小时入门STM32寄存器开发(二)
【寄存器开发速成】半小时入门STM32寄存器开发(二)
|
4月前
|
芯片
【寄存器开发速成】半小时入门STM32寄存器开发(一)
【寄存器开发速成】半小时入门STM32寄存器开发(一)
115 0