linux下进行MCU开发环境搭建

why 为什么要搭建此开发环境?

  • 在linux环境下开发可以利用shell命令实现对文件的批处理
  • 伟大的程序员应该都用类unix系统!
  • 可以实现对底层编译技术的了解,以便于更好的掌握嵌入式技术
  • 通用性,采用开源工具,从底层开发项目,可以不受制于特定厂商的ide工具.可以实现通用架构!

what 开发环境长啥样?

在linux下进行嵌入式技术开发的意思是采用通用,开源的编译工具,实现对项目的开发.

主要用的工具链为:

  1. 编程平台为ubuntu 22.04(VSCODE)
  2. 编译工具 arm-none-eabi-gcc/cl2000(TI C2000的编译器)
  3. 调试工具 openocd以及rm-none-eabi-gdb(尚不支持Ti Tms320x)

需要使用到的技术有:

  1. arm-none-eabi-gcc的编译指令,x86平台的gcc指令差别不大
  2. makefile技术,用于一键编译,生成hex/bin文件
  3. openocd命令,用于链接实物开发板,可以做简单的调试工作.而且可以在不擦除代码的情况下,进行代码调试(比厂商给的ide强的多).但是只能做汇编语言的操作,打断点很麻烦.
  4. rm-none-eabi-gdb可以基于openocd的基础上进行c代码的调试,操作空间比较大.

how 如何安装软件?

  1. 由于编译环节涉及较多arm-gcc命令,因此尚未采用手写makefile的形式进行编译,而是采用stm公司的stm32cubeMX自动生成的makefile.后期可以尝试手写试试.
  2. 安装openocd可以参见此文章进行搭建,基本可以复现使用.linux下开发stm32一 ,linux下开发stm32二 .
  3. 安装好openocd后,使用一下命令可能会报错.
shell 复制代码
rm-none-eabi-gdb test.elf

error message:libncurses.so.5 is not on apt-get anymore.

此时需要使用下列命令安装组件

shell 复制代码
sudo add-apt-repository universe
sudo apt-get install libncurses5 libncurses5:i386
  1. 采用此文章办法可以进行基本运行使用GDB调试你的工程
shell 复制代码
(gdb)target remote localhost:3333
(gdb)monitor reset
(gdb)monitor halt
(gdb)load #此命令必须使得当前工作空间为.elf的目录下
  1. 参加此篇文章也可以了解更多arm gdb指令
  2. 按住减号键'-'可以在命令行中显示断点执行情况
相关推荐
Johny_Zhao9 分钟前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
小毛驴85041 分钟前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
好好学习啊天天向上2 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
tan180°3 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
典学长编程3 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9983 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
独行soc6 小时前
#渗透测试#批量漏洞挖掘#HSC Mailinspector 任意文件读取漏洞(CVE-2024-34470)
linux·科技·安全·网络安全·面试·渗透测试
BD_Marathon6 小时前
Ubuntu下Tomcat的配置
linux·ubuntu·tomcat
饥饿的半导体7 小时前
Linux快速入门
linux·运维
BD_Marathon7 小时前
Ubuntu:Tomcat里面的catalina.sh
linux·ubuntu·tomcat