
如果你想得到的是单片机里别人烧写进去的程序,这是几乎不可能的,你只能根据他的功能自己编写
如果你想吧别人写好的hex文件翻译成C语言或者汇编程序,这也几乎是不可能实现的。
就和win平台的exe程序一样,一旦封装好了,解开是很困难的,绅士解开比你自己写花费的精力还要多
第一看单片机的型号,第二看加密的程度,你像在出厂时就已固化程序的芯片,是不能读出的。一般的51系列,在烤程序后如果没有选择最高级别的加密,用相应的编程器是能读出的,但读出的只是二进制或十六进制的代码,不管你的目的是什么,但一定要尊重原程序员的劳动成果。
下面分步给你介绍如何用EASY 51 PRO对51单片机进行编程:
第一步是硬件连接:
1通讯电缆与编程器连接好,
2将串口插头插入电脑串口,
3USB插头插入电脑任一个USB口,此时编程器上LED点亮,表明电源接通。
4接着安装软件,直接把相关的软件拷贝到硬盘中,运行其中的Easy 51Pro 2_0程序即可。
相信你以上几步已经完成
第二步是如何使用软件
相应编程软件启动后,会自动检测硬件及连接,状态框中显示“就绪”字样,表示编程器连接和设置均正常。否则请检查硬件连接和端口设置。然后把单片机芯片正确地放到编程器的相应插座上,注意,芯片的缺口要朝向插座的把手方向。在把芯片放好后,就可以对芯片进行读写 *** 作了,读写 *** 作按下面的步骤进行:
1、程序运行,请先选择器件(点下选框,选择对应单片机型号)
2、用“打开文件”选择打开要编写的HEX 和 BIN 文件
3、用“保存文件”可以保存读出来的文件
4、用“擦除器件”擦除芯片
5、用“写器件”编程
6、用“读器件”读取芯片中的程序,加密的读不出来
7、用“校验数据”检查编程的正确与否
若用“自动完成”,则将自动执行以上4—7各步骤
在C语言中,程序从Main函数开始执行,在单片机内部,单片机复位后地址指针指向地址00H,即从00H开始执行程序。一般情况下,C语言在编译时会在单片机地址00H处放一条跳转指令,跳到Main函数去执行程序。
第一步:连接编程器,打开编程器电源,在编程器的计算机端软件环境中,将器件选择MCU类型,型号列表中如果有STC89C51RC,那最好,如果没有,只好建议选择ATMEL 89C51试一试,设置好后,将单片机芯片按照编程器的摆放要求(一般在编程器表面有芯片的摆放示意图),插入到管脚插中,压上管脚扣,利用软件读出器件内的程序代码(二进制),保存成HEX格式的文件。第二步:在仿真器的计算机端软件中,利用反汇编功能,打开刚才保存的HEX格式文件,如果单片机内的程序在编译时设置了允许注释,那么,您可以很快得到原程序代码(汇编语句),如果没有注释,那只好根据反汇编的出来的语句(汇编代码),去查询指令代码表,人工翻译出来,对一些跳转地址,可以自己定义成特定的标号。说明:一般来说,根据对方的硬件电路图,产品的使用说明书,即可分析出软件功能,与其去破译或反译芯片内的程序,还不与自己再编一个。
现在的单片机都是加密的,不可能把里面的程序读出来。
但是有各别的单片机可以破解,破解后可以读出来,你需要花钱的,在网上找专业单片机解密的。
破解后,读出来的是二进制代码,即机器码,根本就看不懂的。
如果不想看程序,也不想改,只要程序代码,把这个代码下载到你自己的产品中,这可以直接用破解出来的程序,其实就是一堆机器码。
还想看程序,还想在此基础上修改,那就要用反汇编软件,把这些机器码反汇编成汇编程序,然后才能看,才能改。但是,这反汇编出来的程序实在是太难懂了。
以上就是关于通过什么软件读取单片机里的程序全部的内容,包括:通过什么软件读取单片机里的程序、怎样把单片机中的程序给拷贝出来、请问AT89S52单片机怎么读取里面的程序,我有easy 51PrO 其中有个读器件,可是我不知道读了接着怎么办。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)