找回密码
 立即注册
查看: 1055|回复: 3

STC32G无线下载问题

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:13
  • 最近打卡:2025-02-03 07:57:31

6

主题

10

回帖

112

积分

注册会员

积分
112
发表于 2024-2-19 15:38:43 | 显示全部楼层 |阅读模式
在使用lora模块串口无线更新AP程序时,发现 强制执行Dfu程序和软复位指令必须放在主函数中(图1),不能用外部中断触发(图2)。

经过测试发现是:复位的问题,如果复位放在中断中则无法执行到,导致DFU模式下更新程序后无法在线正常运行。
请问各位大佬:
1、是否可以将软复位放在ISP程序中,执行完DFU下载后在ISP程序中复位到AP程序执行?
2、如何生成ISP 的hex文件(keil怎么设置?是否需要像生成AP的hex文件一样限制rom地址?)

放在主函数中可以正常下载完程序后复位

放在主函数中可以正常下载完程序后复位

无法正常复位

无法正常复位
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:415
  • 最近打卡:2025-04-30 09:58:34
已绑定手机

39

主题

2006

回帖

6845

积分

论坛元老

积分
6845
发表于 2024-2-19 17:58:42 | 显示全部楼层
程序更新完成后是执行AP程序,所以触发再次更新的指令也需要在AP程序里面执行。
如果想放在中断里面触发的话,需要确保中断函数能够正常执行,这就需要同步配置好用户ISP程序,与用户AP程序的中断偏移地址。
用户ISP程序,与用户AP程序的配置方法,官方提供的在线升级例程包里面有介绍,下载地址:https://www.stcaimcu.com/plugin. ... /~cateid=9&key=
回复 支持 反对

使用道具 举报 送花

1

主题

29

回帖

87

积分

注册会员

积分
87
发表于 2024-4-6 21:23:15 | 显示全部楼层
乘风*** 发表于 2024-2-19 17:58
程序更新完成后是执行AP程序,所以触发再次更新的指令也需要在AP程序里面执行。
如果想放在中断里面触发的 ...

大佬,能否求助下关于无线下载的问题。我在淘宝上买了个stc32g12k128,在stc-isp的资料下载->用户自定义ISP->STC32G12K128系列用户ISP范例(UART模式),找到了相关的例程和文档。我安装文档的教程一步一步进行,发现可以无线烧录,但是烧录的程序不能正常运行。比如,我先烧录了isp程序,然后用串口烧录了自己的代码,里面是初始化引脚后让P20为0,即系统板的led常亮,但是烧录后发现无法正常运行,led不是常亮,变成了每0.5s闪烁一次。不管怎么写代码,led灯都是常亮,请问您有什么头绪吗?而且我发现,我写P20 = 1编译和P20 = 0编译出来的hex内容完全一样,不知道这是否正常?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:454
  • 最近打卡:2025-05-03 00:18:42
已绑定手机

13

主题

1257

回帖

2979

积分

金牌会员

积分
2979
发表于 2024-4-6 22:33:10 | 显示全部楼层
烧录后发现无法正常运行,led不是常亮,变成了每0.5s闪烁一次。不管怎么写代码,led灯都是常亮------描述前后不一致
写P20 = 1编译和P20 = 0编译出来的hex内容完全一样--肯定不正常,把优化级别改成0再试试

建议把用户ISP和用户AP的代码放上来,不要让大家猜。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-4 01:19 , Processed in 0.163951 second(s), 73 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表