linux环境对stm32单片机进行程序烧录

bash 复制代码
# 安装依赖
sudo apt update
sudo apt install build-essential cmake git libusb-1.0-0-dev -y

# 克隆并编译 stlink
git clone https://github.com/stlink-org/stlink.git
cd stlink
sudo make release
sudo make install
sudo ldconfig

# 添加 udev 规则(避免每次用 sudo)
sudo cp etc/udev/rules.d/49-stlinkv* /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

2. 烧录 .hex 文件(关键步骤)

.hex 文件包含地址信息,不需要手动指定 0x08000000!

bash 复制代码
# 基本烧录命令
st-flash --format ihex write your_firmware.hex

参数说明:

  • --format ihex:明确告诉工具输入文件是 Intel HEX 格式
  • write:写入操作
  • your_firmware.hex:你的固件文件路径

✅ 成功标志:输出类似
Wrote 32768 bytes to 0x08000000 in 2.1s

3. 验证是否识别到设备(可选)

bash 复制代码
# 检查 ST-Link 和 STM32 是否被识别
st-info --probe

正常输出应包含芯片信息,例如:

bash 复制代码
Found 1 stlink programmers
 serial:     57FF6C06...
 flash:      65536 (pagesize: 1024)
 sram:       20480
 chipid:     0x0410
 descr:      F1xx Medium-density
相关推荐
zhangx1234_2 分钟前
javaEE 多线程1
java·linux·服务器
深圳老胡3 分钟前
STM32 在 VSCode 下 -O0 与 -Os 编译条件的区别
笔记·stm32·单片机·代码规范
沙滩上的一颗石头10 分钟前
裴讯N1刷Armbian后写入EMMC引导失败解决方法
linux
陌上花开缓缓归以2 小时前
arm linux ddr 内存布局
linux·arm开发
龙腾-虎跃2 小时前
Linux 趣味实战|纯 Bash Shell 脚本实现俄罗斯方块终端小游戏(完整源码资源)
linux·运维·bash
新晨单片机设计7 小时前
S021A-基于STM32单片机自动追光系统(步进电机)【Proteus仿真+Keil程序+原理图】
stm32·单片机·proteus·自动追光系统
阳光九叶草LXGZXJ9 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
奔跑的大白啊9 小时前
多容器共享目录权限踩坑记
linux·ubuntu·共享目录·linux权限·docker 容器化部署
zhangzhangkeji11 小时前
stm32 12-2-3 :bkp 备份寄存器和 rtc 实时时钟,原理与代码
stm32
女神下凡12 小时前
芯参谋(43):DDR4_电路设计指南
arm开发·单片机·嵌入式硬件·设计规范