IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 对stm32程序(HEX)的读取和烧录(使用JLink和JFlash) -> 正文阅读

[嵌入式]对stm32程序(HEX)的读取和烧录(使用JLink和JFlash)

本文主要讲解:使用J-LinK仿真器,借助于J-Flash软件,如何读取现有的stm32内部的程序(HEX文件),并烧录到另一台新的stm32中。

(前提是原stm32未进行加密处理)


先介绍下载器J-LinK?和 软件J-Flash

上一篇介绍了 J-LinK-OB改造版 仿真/调试器 使用说明:

J-LinK-OB改造版 仿真/调试器 使用说明_m0_46511220的博客-CSDN博客https://blog.csdn.net/m0_46511220/article/details/121132945?spm=1001.2014.3001.5501上文中提到了在?驱动安装?之后,桌面出现以下两个软件,分别是 J-Link 控制检测程序和 J-Flash 下载程序。 J-Flash 软件可以通过 J-Link 下载(烧写,烧录,编程)数据文件 HEX。

?


?Bin,HEX,AXF,ELF文件:

BIN文件

bin文件是单纯的二进制程序文件,按照assembly code顺序翻译成binary machine code,内部没有地址信息。

Bin是直接的内存映象表示,二进制文件大小即为文件所包含的数据的实际大小。不能使用记事本直接打开,要使用bin文件阅读器才能打开。

如果使用bin文件烧录程序时,需要指定下载地址。

一些下载器只能使用BIN文件进行下载,在进行OTA远程升级时必须使用bin文件。

HEX文件

一般是指Intel标准的hex文件,可以使用记事本直接打开,是十六进制数据,包含了基地址、偏移量、校验和、文件开始和结束标志等信息,与bin文件最大的不同就是包含了下载地址。由于hex文件是十六进制数据,而bin文件是二进制数据,如十六进制0xFF,用二进制表示为1111 1111,所以HEX文件要比bin文件大得多。与axf文件相比,不含调试信息,不能用于调试。

可以参考:

GENERAL: Intel HEX File Format (arm.com)https://developer.arm.com/documentation/ka003292/1-0

AXF文件

Axf文件由ARM编译器产生,除了包含bin的内容之外,还附加其他调试信息,这些调试信息加在可执行的二进制数据之前。如进行在Keil环境使用Debug功能时,就是先将axf文件下载到芯片内,才能进行调试。如使用J-Link的J-Scope功能时,必须使用axf文件。

调试信息有以下功用:

1、 可将源代码包括注释夹在反汇编代码中,这样我们可随时切换到源代码中进行调试。

2、 我们还可以对程序中的函数调用情况进行跟踪(通过Watch & Call Stack Window查看)。

3、对变量进行跟踪(利用Watch & Call Stack Window)。
?

ELF文件(Executableand linking format

是由GCC编译器生成的,是x86 Linux系统下的一种常用目标文件(objectfile)格式。elf文件可以直接转换为hex和bin

例如Linux系统下使用gcc指令gcc -o test test.c生成的 ELF 文件,可以通过./test直接执行。


读取和烧录stm32程序(HEX)的操作步骤:

Jlink连接配置:

第一步:Options->Project settings或者使用快捷键“Alt-F7”打开工程设置界面。选择默认的USB-Device 0

第二步:目标接口方式和速度设置:打开Target Interface选项,选择SWD方式,下边的SWD speed before init和SWD speed after init可以选择为Auto selection。

?

读取Flash中的程序:

第一步:Option-->Project Settings-->CPU下选择 ?Device 在下拉菜单中找到自己的芯片型号后点击确定。

?

第二步:Targect-->Connect链接JLINK? ,LOG栏中会有连接状态显示

连接成功后,Targect-->Read back-->Entrie chip读取整个Flash区域, 接下来就等待读取完成了。

第三步:File-->Save file as 选择要储存的文件类型如:HEX格式,存储就OK了。

写入读取的HEX文件:

第一步:File-->Open ?data flie打开相应的HEX文件。

第二步:Targect-->Connect链接JLINK ? ;Targect-->Program 等待烧录完成就OK了。

(转载于:JFlash ARM对stm32程序的读取和烧录_白小白-CSDN博客_jflash下载程序步骤


  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-11-15 16:02:04  更:2021-11-15 16:03:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:38:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码