开源STM8S脱机编程器for ST-LINK V2

2019-12-18 18:50发布

本帖最后由 wdwd 于 2014-6-13 22:30 编辑

将ST-LINK V2改造成脱机编程器,keil MDK代码。
支持hex和s19格式文件,直接将文件打包到到STM32芯片里,Flash和EEPROM的数据一起烧写;
支持ROP, 支持自动烧录和烧录次数限制(采用FLASH模拟EEPROM记录次数)。

hex或s19格式文件放到src目录,将bootload.s的代码中downloader.hex改为要烧写的文件名,需要重新编译下载;
最大次数由main.c的前面定义:
#define MAX_PRGNUM   (10000+200)  //烧录次数
#define MAX_ONNUM         (3*365)   //开关机次数

我的ST-LINK V2是淘宝买的最便宜14.5元的那种,实际用的是STM32F101RBT6芯片,属于超频72MHz使用的;
但有2个指示灯控制,如果只有单LED的注意修改指示方式:
#define GPIO_GRN_PIN                GPIO_Pin_8   //wdwd.PA.8 *不是标准版*
#define GPIO_RED_PIN                GPIO_Pin_9   //wdwd.PA.9

只测试过STM8S003, 其它芯片需要修改块的大小在platform_config.h中定义:
#define PAGEBLOCK                64

代码受益于其它开源代码,这里一并谢过。
(注:没有用到USB, 代码没有打开,无需上位机软件 )
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
68条回答
wdwd
2019-12-20 03:08
本帖最后由 wdwd 于 2014-6-14 00:10 编辑
TANK99 发表于 2014-6-13 21:24
我也来凑一个。

里面的原理图能生个PDF看看吗?不知道怎么触发烧录。


用标准的/山寨的ST-LINK V2硬件,原理图你网上找很多的;
代码是在whimsy的基础上改的,
他的原来用USB下载文件的,相关USB文件没有删去,保留在src目录;
秉承whimsy的开源精神。参考的代码还有SimonQian的和yanggexiaosa的,和半壶水的EEPROM。

固件下载进STM32,下载好能自动烧写STM8S003的,USB用于加电不用电脑;
输出管脚定义按st-link V2的 REST SWIM GND 5V/3V接STM8S芯片即可。

一周热门 更多>