找回密码
 立即注册
楼主: yinshiyouquan

4G模块OTA升级

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:254
  • 最近打卡:2025-08-01 08:52:46
已绑定手机

78

主题

2779

回帖

5722

积分

荣誉版主

无情的代码机器

积分
5722
发表于 前天 16:06 | 显示全部楼层
1.有错,映射了中断又使用了中断,跳转也应参考官网例程做最基本的校验;
2.同1,映射了中断又使用了中断。简单点,ISP只使用查询模式,复杂点参考这个:
一种USER_ISP和USER_APP共用中断方法 - ISP下载/做自己的ISP 国芯人工智能技术交流网站 - AI32位8051交流社区

3.AP,只修改了INTVECTOR,没改这里:
截图202507301603427274.jpg

4.STC_ISP下载里注意主频匹配,EEPROM大小匹配。其它按需选择即可。

三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-07-31 01:20:45
已绑定手机

1

主题

9

回帖

35

积分

新手上路

积分
35
发表于 前天 17:46 | 显示全部楼层
erci*** 发表于 2025-7-30 16:06
1.有错,映射了中断又使用了中断,跳转也应参考官网例程做最基本的校验;
2.同1,映射了中断又使用了中断。 ...

1.AP程序,Reserver这边修改为:0xFF0003-0xFF2803?
2.复杂方式,按照这边连接给的示例编译出现报错,如下图
3.void commonisr(void) interrupt(INTERRUPTNUMBER) {
    if (isrinfo.ispflag) {
        // ISP模式下的处理逻辑
        ispisrhandler();
    } else {
        // APP模式下的处理逻辑
        if (isrinfo.appisr1 != NULL) {
            isrinfo.appisr1();
        }
        if (isrinfo.appisr2 != NULL) {
            isrinfo.appisr2();
        }
    }
}  这个函数直接放在程序中编译报错,所以这个函数实际应该怎么使用,这边说的很抽象
跳转.png

点评

1.对 2.抄错代码: [attachimg]110375[/attachimg] 3.只是C语言最基础的if语句和函数指针语法,不存在抽象的 基础不过关啊,建议刷一刷论坛课程和C语言课程 《8051U深度入门到32位51大型实战视频》,【免费 + 包邮  详情 回复 发表于 前天 18:04
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:254
  • 最近打卡:2025-08-01 08:52:46
已绑定手机

78

主题

2779

回帖

5722

积分

荣誉版主

无情的代码机器

积分
5722
发表于 前天 18:04 | 显示全部楼层
yinshiy*** 发表于 2025-7-30 17:46
1.AP程序,Reserver这边修改为:0xFF0003-0xFF2803?
2.复杂方式,按照这边连接给的示例编译出现报错,如 ...

1.对

2.抄错代码:
截图202507301801292930.jpg
3.只是C语言最基础的if语句和函数指针语法,不存在抽象的

基础不过关啊,建议刷一刷论坛课程和C语言课程
《8051U深度入门到32位51大型实战视频》,【免费 + 包邮 送】实验箱@Ai8051U,100万套 - 字库生成,图片取模,串口绘图,串口助手,虚拟硬件,外部串行Flash编程 国芯人工智能技术交流网站 - AI32位8051交流社区
第三十七集 C语言程序设计-函数一-何宾老师-STC单片机教学视频 国芯人工智能技术交流网站 - AI32位8051交流社区
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-07-31 01:20:45
已绑定手机

1

主题

9

回帖

35

积分

新手上路

积分
35
发表于 昨天 01:20 | 显示全部楼层
erci*** 发表于 2025-7-30 18:04
1.对

2.抄错代码:

根据您建议重新调整了boot和app,其中boot调整如下:
1.在asm文件中屏蔽了串口1中断重映射;
2.增加了中断共用管理结构体ISRStruct
app部分调整如下
1.reserver调整为0xFF0003-0xFF2803
2.Hex_fromat选择HEX_386(试过HEX_80,没发现有什么特别不同,而且不同示例,哪怕是large模型也有配置为386)
3.同样增加中断共用管理结构体ISRStruct,位置都在xdata扩展内存0x1000位置

两个编译都没问题,用STC_ISP自带的“自定义ISP模式的ap”,把boot和ap一次烧录程序中,实际测试发现:
1.updateflag被置位时候,boot正常运行,一直有日志输出
2.updateflag置零时,无法正常跳转到app部分,一直重启输出“没有可更新的固件,跳转APP!”(跳转校验部分跳过了,只是想验证能否跳转到app正常执行)
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-07-31 01:20:45
已绑定手机

1

主题

9

回帖

35

积分

新手上路

积分
35
发表于 昨天 01:27 | 显示全部楼层
erci*** 发表于 2025-7-30 18:04
1.对

2.抄错代码:

调整后的固件见附件

Test_Boot.zip

203.7 KB, 下载次数: 1

TestApp.rar

31.55 KB, 下载次数: 1

回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-8-1 14:58 , Processed in 0.121945 second(s), 73 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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