SUPER_CRJ 发表于 2020-9-14 14:20:56

开源:STC自动下载器

本帖最后由 SUPER_CRJ 于 2020-9-14 14:24 编辑

如有不合适,请删除。
本来准备把文件全开源的,找遍电脑,发现只剩下一个空文件夹。。。和当初破解的文档(时间太久了,换了几次电脑。)。

当初刚工作的时候,第一款单片机记得是:STC12C5AS32。因为STC要冷启动。用普通的串口需要手动复位。
于是在网上买了一个自带冷启动的。研究了一段时间。终于自己制作成功。

具体原理:
1:在串口工具上,连接一个额外的单片机STC15单片机,用于检测串口上数据。
2:STC的串口下载命令是:0x7F 0x7F一直发。
3:增加一个IO控制的电源。
4:关键:如何识别不同的波特率呢?答案:把STC15设置一个固定波特率,这样在检测高波特率的0x7F时候,都会检测出连续的定值。当初测试了:9600 14400 4800 很多组。最后9600比较合适。
5:成本:CH340C + STC15 可以做到6RMB左右。

最后写代码的时候:设置成一个固定的波特率:9600
表如下(可以发现,当连续检测到指定数据就可以控制断电冷启动了。):



cheng-8yang 发表于 2020-9-15 08:49:41

什么情况?

大米饭 发表于 2020-9-15 15:06:47

STC后面的芯片支持软复位的,ISP软件设置串口下载指令,软件串口写一段接收到特殊指令直接软复位,ISP检测到文件变化自动启动下载
KEIL编译ISP自动启动,单片机软复位下载软件,不用借助任何外来工具

modbus 发表于 2020-9-15 16:10:26

不用这么麻烦,只用检测TXD的下降沿即可,检测到下降沿接通电源,2至3秒内没有下降沿就关闭电源,类似于可重触发的单稳态触发器

MCUStudent 发表于 2020-11-1 13:20:06

之前几年自己做了一个自适应波特率的,自己做的板子做工不好,用了两三年坏了,之前的资料都找不到了感觉维修重新做太麻烦就又回到原始状态了。

cc224 发表于 2020-11-1 18:14:57

哪怕是自己一个人干的活,建议也要用svn、git之类的版本控制管理起来,还要做好备份和异地备份。
不然迟早会吃苦头的
页: [1]
查看完整版本: 开源:STC自动下载器