怎样把单片机中的程序给拷贝出来

随着物联网时代的到来,单片机变得越来越流行。我们经常在学习和生产中经常会遇到这样的问题,可能需要将单片机中的程序拷贝出来,并把其烧写到其他同型号单片机上去进行生产,或者由于debug的需要,需要对单片机flash的状态进行分析。
其实没有通用的方法可以对所以单片机程序进行读取,这里主要介绍现在市面上使用的最广的使用jtag调试接口的单片机,现在用的最多的stm32单片机就是使用的jtag接口。

操作方法

  • 01

    首先,需要准备一个J-Link烧写器,并连接到单片机定义的Jtag调试管脚,如下图,这里作者使用了stm32单片机,板子上自带Jlink接口,如下图所示。 如果没带接口,需要自己看芯片管脚定义,然后引出这几个管脚连接到J-Link上,主要芯片可能需要提供外部供电。

  • 02

    在Segger官网,下载JFlash软件,安装完成后,打开J-Flash软件,这里作者使用的是当前最新的6.30版本,如下图。

  • 03

    在弹出的窗口,勾选Create a new project,点击Start J-Flash,如图一。 然后点击Target Device 后面的...,选择你目前使用的芯片型号,如图二。 这里作者使用的是STM32F103RB系列的单片机,于是选择这款单片机。

  • 04

    建立好工程,接下来需要与单片机,点击菜单栏的target ——> connect,连接成功,底部会有连接成功的Log信息输出。 如果显示连接不成功,请检测线路连接情况和芯片供电情况。

  • 05

    连接成功后,依次点击Target——>Manual Programming——>Read back——>Entire chip,就可以读回芯片上的程序的二进制数据了,如下图。

  • 06

    读取成功之后,点击File——>Save data file,然后将其保存为.bin文件,如下图,就可以把这个.bin文件烧写到同类型的其他单片机上去了。

  • 07

    如果你好奇这个二进制文件做了哪些工作,你可能需要使用IDA之类的反汇编软件来分析它的逻辑了,如下图这是使用IDA反汇编刚刚得到二进制文件得到程序流程框图和反汇编代码。

(0)

相关推荐

  • 如何把lua脚本下载到单片机中运行

    有很多人不了解如何把lua脚本下载到单片机中运行,那么今天小编就在这里给大家分享一点我的小,希望可以给你们带来帮助. 操作方法 01 uBASIC是与普通的BASIC语言极相似的解释型编程语言,在相机 ...

  • Win7系统鼠标随心所欲在多个窗口中激活程序窗口的小技巧

    在使用win7系统时,用户如果打开过多的窗口,以至于选择程序要逐个点击查看,才能找到自己需要用的程序,这样子会很浪费时间,那有什么技巧呢?教大家如何在win7系统中激活程序窗口吧。 Win7系统鼠标随 ...

  • Mac OS X系统中应用程序如何安装与卸载(多种方法)

    MAC OS X系统发布后,许多MAC用户纷纷升级更新了自己的系统。不过更新了新系统之后,有一个比较麻烦的就是要将自己电脑上的应用程序重新安装,并把不需要的应用程序卸载掉。那么,MAC OS X系统该 ...

  • 一键关闭Windows7所有运行中的程序

    当各位经过一天忙碌的工作后,准备关电脑回家的时候却发现Windows 7任务栏上众多正在运行中的程序需要逐个关闭,也许这时候你就在想要是能一下子把它们全关了该多省事。其实,这个想法是完全可以办到的,而 ...

  • 在win7系统中运行程序提示应用程序或dll为无效的windows

    咱们日常在操作Windows系统的时候,总是离不开要运行程序.例如咱们经常需要使用到的一些工具,什么杀毒软件,什么QQ聊天软件,什么IE浏览器,什么360软件等等,这些其实都是咱们Windows系统中 ...

  • 双击电脑中的程序图标无法打开如何通过设置鼠标来解决

    双击电脑中的程序图标无法打开如何通过设置鼠标来解决.当我们在电脑中如果要运行一个应用程序,一般是通过双击该程序图标来打开的.但是有用户发现只有双击电脑图标会出现无法打开程序的问题,而其他方法则可以成功 ...

  • Win8.1附件中的程序如何设置桌面快捷方式

    在Win8.1系统中,如果我们要使用附件中的程序就只能从开始菜单中搜索打开,感觉真是太麻烦了,我们能不能把常用的程序也弄个桌面快捷方式呢? 方法如下: 1.点击左下角的桌面按钮,进入触屏桌面并点击向下 ...

  • macbook应用中的程序怎么退出 macbook应用中的程序退出详细教程

    最近有使用macbook的用户询问小编macbook应用中的程序怎么退出?想知道的伙伴可以跟着小编一起来看看macbook应用中的程序退出教程. macbook应用中的程序退出教程: 一般程序按左上角 ...

  • Win10控制面板中如何添加自定义程序?在win10控制面板中添加程序的方法

    Win10控制面板中如何添加自定义程序?win10系统内置的一些系统工具存在于控制面板中,在控制面板的程序可以快速的被找到,当用户想要将一些经常会使用法的程序添加到控制面板中要如何的操作呢?接下来的文 ...