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. 按住减号键'-'可以在命令行中显示断点执行情况
相关推荐
伤不起bb1 小时前
MySQL 高可用
linux·运维·数据库·mysql·安全·高可用
tmacfrank4 小时前
网络编程中的直接内存与零拷贝
java·linux·网络
QQ2740287567 小时前
Soundness Gitpod 部署教程
linux·运维·服务器·前端·chrome·web3
qwfys2007 小时前
How to configure Linux mint desktop
linux·desktop·configure·mint
南方以南_7 小时前
Ubuntu操作合集
linux·运维·ubuntu
冼紫菜8 小时前
[特殊字符]CentOS 7.6 安装 JDK 11(适配国内服务器环境)
java·linux·服务器·后端·centos
Chuncheng's blog9 小时前
RedHat7 如何更换yum镜像源
linux
爱莉希雅&&&9 小时前
shell脚本之条件判断,循环控制,exit详解
linux·运维·服务器·ssh
wei_work@9 小时前
【linux】Web服务—搭建nginx+ssl的加密认证web服务器
linux·服务器·ssl
扶尔魔ocy10 小时前
【Linux C/C++开发】轻量级关系型数据库SQLite开发(包含性能测试代码)
linux·数据库·c++·sqlite