OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7091|回复: 7

在做串口IAP试验时,历程用的是ram拷贝到flash。那么如果bin文件的空间大于ram的空间,那是不是拷贝不成功会死机?

[复制链接]

2

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
245
金钱
245
注册时间
2016-9-20
在线时间
33 小时
发表于 2021-7-20 10:18:58 | 显示全部楼层 |阅读模式
2金钱
在做串口IAP试验时,历程用的是ram拷贝到flash。那么如果bin文件的空间大于ram的空间,那是不是拷贝不成功会死机?

最佳答案

查看完整内容[请看2#楼]

bin文件的空间大于ram的空间,这个设计程序时就要避免了。如果你的升级固件比较大,就不能一次传给RAM。RAM里定义一个大小合适的数组,循环接收bin文件就行了。比如接收到1024bytes,就先写入FLASH指定地址,写完后发个消息给服务器或者上位机,然后再接收下一包数据,直至bin文件全部接收。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

821

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3369
金钱
3369
注册时间
2011-11-10
在线时间
207 小时
发表于 2021-7-20 10:18:59 | 显示全部楼层
bin文件的空间大于ram的空间,这个设计程序时就要避免了。如果你的升级固件比较大,就不能一次传给RAM。RAM里定义一个大小合适的数组,循环接收bin文件就行了。比如接收到1024bytes,就先写入FLASH指定地址,写完后发个消息给服务器或者上位机,然后再接收下一包数据,直至bin文件全部接收。
回复

使用道具 举报

2

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2019-4-24
在线时间
17 小时
发表于 2021-7-20 10:42:46 | 显示全部楼层
要分段传输。
回复

使用道具 举报

2

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
245
金钱
245
注册时间
2016-9-20
在线时间
33 小时
 楼主| 发表于 2021-7-20 10:50:02 | 显示全部楼层

谢谢您的回复:

分段:是指每次发一部分,等待拷贝完成,再请求发下一段?

您说分段的话,大概流程是怎么样子的呢?
回复

使用道具 举报

2

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2019-4-24
在线时间
17 小时
发表于 2021-7-20 12:34:04 | 显示全部楼层
只要是这种较大数据量的传输,都需要先规划好,分页(或者叫分包)传输。
回复

使用道具 举报

2

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2019-4-24
在线时间
17 小时
发表于 2021-7-20 12:35:34 | 显示全部楼层
例如传一副图片,可以规划好,每次传一段,比如说200行。
典型例子就是打印机,一段一段的打印。
回复

使用道具 举报

2

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
245
金钱
245
注册时间
2016-9-20
在线时间
33 小时
 楼主| 发表于 2021-7-20 13:45:42 | 显示全部楼层
c2007s 发表于 2021-7-20 13:40
bin文件的空间大于ram的空间,这个设计程序时就要避免了。如果你的升级固件比较大,就不能一次传给RAM。RAM ...

    非常感谢。我去试试。
回复

使用道具 举报

0

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
119
金钱
119
注册时间
2016-11-29
在线时间
31 小时
发表于 2021-9-23 11:47:52 | 显示全部楼层
楼主搞定没有  发出来看看怎么弄
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 07:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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