OpenEdv-开源电子网

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

请教STM32远程更新问题??

[复制链接]

6

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2014-4-12
在线时间
0 小时
发表于 2015-6-9 23:09:49 | 显示全部楼层 |阅读模式
5金钱
请教STM32远程更新问题??
1、项目远程更新架构:   服务器  ———2416嵌入式系统(lLinux)————STM32
     更新STM32程序
2、设计思路:3个程序,Bootloader程序:负责启动与选择执行哪一个APP
                                        UpdateAPP程序:负责接收更新程序,写入Flash
                                        MeterAPP程序:负责正常的数据检测和嵌入式系统数据通信
3、嵌入式系统将更新程序Hex文件分包发送给STM32,STM32分别进行处理,大约发送150个数据包,每一个包30-40行HEX文件。
问题:请问每一行数据如何处理,并且写入Flash缓存区,数据包全部接收成功,如何一次性复制到存放MeterAPP程序的Flash
Flash操作不太懂??每次写数据不成功
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-9 23:38:42 | 显示全部楼层
可以参考下我们的串口IAP例程
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

6

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2014-4-12
在线时间
0 小时
 楼主| 发表于 2015-6-11 15:02:59 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥:
    再次请教,STM32将接收到的Hex文件处理,02、04类型地址计算、00类型的数据处理、01结束标志。
(1)请问05的main函数入口地址如何处理??
(2)写入Flash的内容就是00里的16个字节数据吗?????
(3)大概60KB的数据如何较快地从一块Flash区域复制到另一个Flash区域??谢谢
目前我复制数据后,重启时if(((*(vu32*)(FLASH_APPBlockAddr+4))&0xFF000000)==0x08000000)出现错误!!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-11 21:27:58 | 显示全部楼层
不知道你说的02,04,啥意思。
hex解析,我也不熟。没搞过呢。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

6

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2014-4-12
在线时间
0 小时
 楼主| 发表于 2015-6-11 22:47:23 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子哥:就是Hex文件解析,数据类型,有6种,00,01,02,03,04,05!!
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2015-2-12
在线时间
9 小时
发表于 2015-6-12 13:22:08 | 显示全部楼层
没必要解析吧,我是直接应用程序采用sim模块的http模式下载升级包(bin文件,hex应该也一样),存储到外部flash,然后置升级标志,进入boot,boot将外部flash存储的bin文件复制到片内flash,然后启动即可,整个过程1分钟内完成。
回复

使用道具 举报

3

主题

62

帖子

0

精华

初级会员

Rank: 2

积分
94
金钱
94
注册时间
2015-5-29
在线时间
0 小时
发表于 2015-6-12 13:34:20 | 显示全部楼层
先把HEX解析成BIN文件,直接把BIN写入FLASH中就可以跑起来了。
回复

使用道具 举报

6

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2014-4-12
在线时间
0 小时
 楼主| 发表于 2015-6-12 16:55:17 | 显示全部楼层
回复【6楼】fangchenyi:
---------------------------------
Bin文件只有数据,没有Flash地址,如何确定写入地址??
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-12 22:35:14 | 显示全部楼层
回复【8楼】dongxinwanwu:
---------------------------------
BIN文件生成的时候,就已经知道地址了。
所以,问题不大。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

15

主题

866

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7634
金钱
7634
注册时间
2016-11-30
在线时间
647 小时
发表于 2017-8-25 11:55:35 | 显示全部楼层
mark!!!
回复

使用道具 举报

1

主题

12

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-7-4
在线时间
4 小时
发表于 2018-7-4 16:30:51 | 显示全部楼层
请问您数据包的问题解决了吗?
回复

使用道具 举报

1

主题

12

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-7-4
在线时间
4 小时
发表于 2018-7-4 16:31:34 | 显示全部楼层
我这块遇到问题,其他地方都解决了,可以和您交流?
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-17 00:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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