硬汉嵌入式论坛

 找回密码
 立即注册
查看: 7193|回复: 22
收起左侧

[Boot Flash] 有关RT1052的IAP升级问题

  [复制链接]

10

主题

31

回帖

61

积分

初级会员

积分
61
发表于 2018-5-22 20:13:41 | 显示全部楼层 |阅读模式
各位大神:
     有哪位大神做了rt1052的IAP升级,能否给与指点!主要为执行跳转后程序运行情况异常问题。
     在做IAP升级跳转验证,使用iar平台烧录两个程序,0x60000000地址开始为IAP程序,0x6000A000为APP程序。IAP程序在调试的时候强制执行跳转到APP程序

     APP程序的做法:去掉xip文件,设置连接icf文件,指定起始地址为0x6000A000
     我做的第一个APP程序为NXP SDK中例子hello_word ,正常!说明跳转没问题!
     做第二个程序,是rtthread官方的程序,直接烧录在板子上是能够正常运行的,但是通过iap跳转后就会出现故障硬件错误中断,显示有非对其内存访问!但是我将xip文件添加,然后修改boot_data数据指定程序入口地址为0x6000A000,运行也是正常的。所以不知道通过跳转,IAP程序运行后的环境会对APP造成什么影响?


    所以请问下,对于做IAP升级,IAP程序和APP程序有哪些要做注意事项点?IAP程序运行后的环境会对APP造成什么影响?

回复

使用道具 举报

7

主题

102

回帖

123

积分

初级会员

积分
123
发表于 2018-5-22 20:52:50 | 显示全部楼层
应该是中断向量没设置好的问题,你调试一下看看中断向量表对着的位置是不是0x6000A000。
回复

使用道具 举报

0

主题

154

回帖

154

积分

初级会员

积分
154
发表于 2018-5-22 21:07:15 | 显示全部楼层
eddy0317兄弟说得对,先查一下 SCB->VTOR是不是指向0x6000a000。
回复

使用道具 举报

10

主题

31

回帖

61

积分

初级会员

积分
61
 楼主| 发表于 2018-5-23 08:41:58 | 显示全部楼层
unknownuser 发表于 2018-5-22 21:07
eddy0317兄弟说得对,先查一下 SCB->VTOR是不是指向0x6000a000。

中断向量表确定是设置为这个地址了
理论上IAP程序运行的环境应该不会对APP运行环境造成影响的吧?
回复

使用道具 举报

7

主题

102

回帖

123

积分

初级会员

积分
123
发表于 2018-5-23 09:40:14 | 显示全部楼层
跑helloworld没问题,跑rt-thread有问题,就跟我之前一样,之前我弄non-XIP的时候,跑helloworld没问题,跑RTX5有问题,后来想了一下应该就是中断那里出问题。所以才问你中断向量表的事情。编译的时候,记得弄到入口是reset_handler,出问题的话大都是两个问题,一个是中断向量( SCB->VTOR)不对,一个是带初值的变量的没有初始化。

IAP的运行环境当然对APP有影响,实际上运行APP也只不过是一次调用程序而已,IAP初始化的东西全部都被APP继承的。例如IAP使能了串口,运行APP前没关闭,运行APP时一样是运行状态,如果IAP开了中断,APP的时候也会触发中断,编程不当可能会有问题。
回复

使用道具 举报

4

主题

40

回帖

194

积分

初级会员

积分
194
发表于 2018-5-23 14:00:19 | 显示全部楼层
如果用IAP升级的话,程序的加密是不是挺麻烦的?
回复

使用道具 举报

7

主题

102

回帖

123

积分

初级会员

积分
123
发表于 2018-5-23 14:06:38 | 显示全部楼层
lwplwp2 发表于 2018-5-23 14:00
如果用IAP升级的话,程序的加密是不是挺麻烦的?

这位兄弟已经弄了程序加密了?能分享一下方法吗?
回复

使用道具 举报

10

主题

31

回帖

61

积分

初级会员

积分
61
 楼主| 发表于 2018-5-23 14:32:15 | 显示全部楼层
lwplwp2 发表于 2018-5-23 14:00
如果用IAP升级的话,程序的加密是不是挺麻烦的?

加密那块主要两部分,一部分为签名,一部分为数据加密,要弄得话确实很麻烦的,只能到时请教原厂的人,我们现在还没到加密那块,还没签保密协议
回复

使用道具 举报

10

主题

31

回帖

61

积分

初级会员

积分
61
 楼主| 发表于 2018-5-23 14:33:07 | 显示全部楼层
eddy0317 发表于 2018-5-23 14:06
这位兄弟已经弄了程序加密了?能分享一下方法吗?

和原厂签保密协议,他们会有加密过程的相关文档的
回复

使用道具 举报

4

主题

40

回帖

194

积分

初级会员

积分
194
发表于 2018-5-23 15:04:28 | 显示全部楼层
eddy0317 发表于 2018-5-23 14:06
这位兄弟已经弄了程序加密了?能分享一下方法吗?

我是照着cst 的文档尝试,但是尝试失败了,等官方应用文档吧。
但是我的理解:它解密需要在用到ivt表中的csf数据中的key blods。这样的话升级固件时就需要去更新ivt内容?
主要还是对它加密和解密原理还不太明白,又没有资料可以参考...
回复

使用道具 举报

4

主题

40

回帖

194

积分

初级会员

积分
194
发表于 2018-5-23 15:14:06 | 显示全部楼层
eddy0317 发表于 2018-5-23 14:06
这位兄弟已经弄了程序加密了?能分享一下方法吗?

这个是cst工具,里面有说明密钥和证书怎么生成,然后结合flashloader 的elftosb工具进行加密,你可以看看。

cst-2.3.3.tar.gz

9.14 MB, 下载次数: 58

回复

使用道具 举报

7

主题

102

回帖

123

积分

初级会员

积分
123
发表于 2018-5-23 17:03:40 | 显示全部楼层
lwplwp2 发表于 2018-5-23 15:04
我是照着cst 的文档尝试,但是尝试失败了,等官方应用文档吧。
但是我的理解:它解密需要在用到ivt表中 ...

不是很想玩cst,其实BEE的也能加密下载了,不过不敢玩加密XIP,因为涉及熔丝位,烧了就不能恢复了,万一搞错了就废板了。
回复

使用道具 举报

7

主题

102

回帖

123

积分

初级会员

积分
123
发表于 2018-5-23 17:05:43 | 显示全部楼层
532791928@qq 发表于 2018-5-23 14:33
和原厂签保密协议,他们会有加密过程的相关文档的

很费解为什么用BEE这类加密还要保密协议,说实在,芯片怎么加密的我真的不关心,只要给我接口就行。

例如使能加密后,用的密钥是芯片内置并且不可读的,不就完事了。
回复

使用道具 举报

10

主题

31

回帖

61

积分

初级会员

积分
61
 楼主| 发表于 2018-5-24 20:16:17 | 显示全部楼层
各位大神,我在调试iap时,跳转自己的工程代码中,发现总是在iar平台的__iar_program_start中跑飞(具体点应该是在__iar_data_init3)函数中飞掉,让我没法理解啊,我的工程在不用iap跳转是运行OK的,虽然工程中确实配置搬运了大量函数之itcm中,但不至于跳转后跑飞啊
回复

使用道具 举报

0

主题

154

回帖

154

积分

初级会员

积分
154
发表于 2018-5-24 21:26:04 | 显示全部楼层
532791928@qq 发表于 2018-5-24 20:16
各位大神,我在调试iap时,跳转自己的工程代码中,发现总是在iar平台的__iar_program_start中跑飞(具体点 ...

请问你的IAP代码里有开d-cache么?
回复

使用道具 举报

10

主题

31

回帖

61

积分

初级会员

积分
61
 楼主| 发表于 2018-5-25 09:09:44 | 显示全部楼层
unknownuser 发表于 2018-5-24 21:26
请问你的IAP代码里有开d-cache么?

有开的,但是iap跳转进去到app的时候,有清除d-cache和i-cache操作
回复

使用道具 举报

0

主题

154

回帖

154

积分

初级会员

积分
154
发表于 2018-5-25 09:47:35 | 显示全部楼层
532791928@qq 发表于 2018-5-25 09:09
有开的,但是iap跳转进去到app的时候,有清除d-cache和i-cache操作

那估计和这个有点关系,试着在跳APP的时候关掉cache,让你的APP在配置好MPU后(把不需要的memory 空间全配成device memory)然后再开cache, 这个工作一般在App的SystemInit里执行
回复

使用道具 举报

0

主题

2

回帖

2

积分

新手上路

积分
2
发表于 2020-12-21 14:42:08 | 显示全部楼层
我在做rt1052的iap时,只要app里面有以太网,就卡住不能初始化,调试输出:Initializing PHY...就不东了,请指教,os可以运行,
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2021-12-30 14:17:08 | 显示全部楼层
你好,最近正在做RT1052的IAP升级,但是目前头绪混乱,能否给一份RT1052的BootLoader和APP程序作为参考呢?谢谢,如可以请发送至邮箱m15170185611@163.com,谢谢
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2022-1-4 11:19:00 | 显示全部楼层
bakeraaa 发表于 2021-12-30 14:17
你好,最近正在做RT1052的IAP升级,但是目前头绪混乱,能否给一份RT1052的BootLoader和APP程序作为参考呢? ...

我给你发了一份,一起学习
我现在是跳转不正常,你做好后一起交流
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2022-10-7 16:06:39 | 显示全部楼层
wwz 发表于 2022-1-4 11:19
我给你发了一份,一起学习
我现在是跳转不正常,你做好后一起交流

请问可以发我一份吗?我也是研究rt1052 iap。我用的是rt-thread操作系统。可否互相交流一下,求+v,谢谢!
回复

使用道具 举报

0

主题

8

回帖

8

积分

新手上路

积分
8
发表于 2022-10-28 18:11:08 | 显示全部楼层
wwz 发表于 2022-1-4 11:19
我给你发了一份,一起学习
我现在是跳转不正常,你做好后一起交流

好兄弟,搞定了吗?发我一份 wangyipeng97@tom.com
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2024-11-18 09:45:13 | 显示全部楼层
请问可以发我一份吗?我也是研究rt1052 iap。我用的是RT1052操作系统。可否互相交流一下,QQ邮箱:734396988@qq.com,非常感谢大佬!
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-12 19:09 , Processed in 0.448318 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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