分享JLINK编程器,,快速版

2019-12-09 19:15发布


之前分享过一个JLINK编程器工具:Python+JLinkARM.dll实现JLINK编程器,原创首发!!

不过它是通过JLINK直接读写Flash控制器寄存器来实现编程的,,速度非常慢,,因此只有技术价值,,不具有实用价值

正常的JLINK编程器一般都是把一段代码下载到单片机的RAM中,然后用JLINK控制这段代码的执行、并传输程序数据给这段儿代码,,让它完成实际的Flash擦除、写入,,Keil MDK、IAR、JFlash给单片机下载程序都是使用的这种方法

实现这种编程器需要克服两个技术问题:
1、通过JLINK控制单片机执行指定函数
2、从Keil MDK的算法文件*.FLM中提取出算法代码和信息(提取现成算法可以节省大量时间,且这些算法都是MCU官方出品、质量可靠)

幸运的是这两个难题都已被国外大神解决,并把相关代码开源到github上,,我的源码中的flash.py和flash_algo.py这两个文件就是github上找到的分别解决上述两个难题的代码

由此,我实现了高速版的JLINK编程器,,下载速度和Keil MDK、IAR、JFlash一样快 ,,而且实际的烧写算法代码不需要自己写,直接从Keil MDK的烧写算法文件中提取即可,,因此,只要是Keil支持的芯片,本工具都可以简单扩展、快速支持,,而且稳定可靠

先把此工具分享给坛友,,希望大家喜欢,,

效果图:
截图.jpg (75.31 KB, 下载次数: 0) 下载附件 2019-2-23 21:47 上传

源代码:https://github.com/XIVN1987/JMCUProgFast (如果喜欢的话可以去给加个星

打包生成的exe免安装文件:
JMCUProgFast.part1.rar (5 MB, 下载次数: 225) 2019-2-23 21:48 上传 点击文件名下载附件
JMCUProgFast.part2.rar (5 MB, 下载次数: 175) 2019-2-23 21:48 上传 点击文件名下载附件
JMCUProgFast.part3.rar (1.56 MB, 下载次数: 159) 2019-2-23 21:48 上传 点击文件名下载附件

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
75条回答
gonboy
1楼-- · 2019-12-16 22:15
正常的JLINK编程器一般都是把一段代码下载到单片机的RAM中,然后用JLINK控制这段代码的执行、并传输程序数据给这段儿代码,,让它完成实际的Flash擦除、写入。  

对你的这句话,持怀疑态度。 从哪里得出的结论? 正常的编程器是这样操作的?
仅仅是支持这种方式而已吧。 没感觉到RAM模式加载写入有多快
zhongsandaoren
2楼-- · 2019-12-17 01:46
JLINK 编程 mark
kevincoooool
3楼-- · 2019-12-17 07:02
楼主,我发现一个BUG,下载好一个芯片后插拔到另一个芯片上,软件会卡死
dam
4楼-- · 2019-12-17 08:43
 精彩回答 2  元偷偷看……
dragonbbc
5楼-- · 2019-12-17 10:25
NB,MARK备用
coolhorse
6楼-- · 2019-12-17 11:16
大神,膜拜,请问二个问题:
1.rw段在哪里初始化的?代码只看到有这句:self.jlink.write_reg('r9', self.flash['static_base'])
2.进入halt 是什么指令,这里有:BLOB_HEADER = '0xE00ABE00, 0x062D780D, 0x24084068, 0xD3000040, 0x1E644058, 0x1C49D1FA, 0x2A001E52, 0x4770D1F2,'

一周热门 更多>