STC_STC 发表于 2024-8-8 11:11:40

ISP带电自动下载问题请教

各位大佬好,我现在的产品需要在带电情况下下载更新软件。

我目前是这样处理:
程序设计:开UART(波特率115200),当接受到下载特征字0X7F 若干次次后复位。

如果用ISP软件,必须设置波特率为115200(如下图),才可以实现不断电更新软件。



当我用ISP 发布程序:,生成的.EXE文件,不能更新软件。

请问,要如何处理?谢谢

hsrzq 发表于 2024-8-8 11:14:50

你复位咋实现的?是不是还是复位到用户程序了?

STC_STC 发表于 2024-8-8 11:26:00

hsrzq 发表于 2024-8-8 11:14
你复位咋实现的?是不是还是复位到用户程序了?

芯片复位后,会自动进入bl部分,用ISP已经可以实现不断电升级。
我的问题是用ISP生成的程序,无法实现断点升级。
原因可能在于:生成的程序在切换波特率,导致芯片的程序无法实现芯片复位。

STC_STC 发表于 2024-8-8 11:41:18

搞好了。结帖。

DebugLab 发表于 2024-8-8 11:56:49

不要使用收到7F复位,使用用户自定义下载命令



STC_STC 发表于 2024-8-8 13:46:54

DebugLab 发表于 2024-8-8 11:56
不要使用收到7F复位,使用用户自定义下载命令

用7F有什么隐患没,之前一直这样处理的。

DebugLab 发表于 2024-8-8 14:11:43

STC_STC 发表于 2024-8-8 13:46
用7F有什么隐患没,之前一直这样处理的。

建议波特率默认最低2400最高115200不要动,否则可能影响正常下载
用一串0x7F作为下载命令,容易和正常的数据冲突,还需要调到别的波特率接收

我之前是这样做的
以2400bps发
以1200bps收是0x80
以2400bps收是0xF8
以4800bps收是0xFE
以9600bps收是0x7F
收到这几个都进入下载状态
还能凑合用
但不建议

soma 发表于 2024-8-8 16:41:07

7f还不如自定义指令进入ISP模式

STC_STC 发表于 2024-8-9 08:30:04

DebugLab 发表于 2024-8-8 14:11
建议波特率默认最低2400最高115200不要动,否则可能影响正常下载
用一串0x7F作为下载命令,容易和正常的 ...

好的,谢谢,不过我这个串口仅仅用于下载,没有其他通讯需求,所以数据冲突不用考虑。{:smile:}
页: [1]
查看完整版本: ISP带电自动下载问题请教