OpenEdv-开源电子网

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

STM32F103 串口IAP + 升级终端,心得分享

  [复制链接]

0

主题

1

帖子

0

精华

新手入门

积分
13
金钱
13
注册时间
2018-5-10
在线时间
0 小时
发表于 2018-5-10 19:10:50 | 显示全部楼层
同样的思路,正常升级即升级接收数据全部正确后可以从APP1升级跳转到APP2,也可以从APP2升级跳转到APP1;但是在升级失败的情况如接收数据不全,升级等待超时后从APP1升级到APP2失败时可以返回到APP1,但是从APP2升级到APP1失败时跳转APP2时会死机,请问有没有遇到这种情况?
正点原子逻辑分析仪DL16劲爆上市
回复 支持 反对

使用道具 举报

15

主题

96

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2017-4-21
在线时间
151 小时
发表于 2018-5-12 22:09:52 | 显示全部楼层
回复 支持 反对

使用道具 举报

9

主题

141

帖子

1

精华

高级会员

Rank: 4

积分
606
金钱
606
注册时间
2017-1-3
在线时间
65 小时
 楼主| 发表于 2018-5-14 19:11:07 | 显示全部楼层
学界 发表于 2018-5-10 19:10
同样的思路,正常升级即升级接收数据全部正确后可以从APP1升级跳转到APP2,也可以从APP2升级跳转到APP1;但 ...

其实你的两份种升级方式 应该用的一份代码呀
只需设定一个变量来存储  当前刷写区  和  原来区  就可以了
如果你能实现APP1升级失败返回的话,APP2 到APP1也就应该没有问题的呀
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-5-15 01:52:35 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

10

主题

172

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1479
金钱
1479
注册时间
2016-1-25
在线时间
260 小时
发表于 2018-5-15 11:05:52 | 显示全部楼层
mark 一下  哈   最近也在学习这块
回复 支持 反对

使用道具 举报

14

主题

110

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
304
金钱
304
注册时间
2016-5-16
在线时间
67 小时
发表于 2018-5-28 13:41:33 | 显示全部楼层
有个疑问,不考虑升级问题的情况下。每次上电后先进bootloader,比如里面对串口,定时器等等进行了配置,然后再jumptoapp,然后app的main函数里面可以不配置IAP里配置过的串口之类的,直接使用吗?疑问点就是jump后会不会软复位之类?
回复 支持 反对

使用道具 举报

9

主题

141

帖子

1

精华

高级会员

Rank: 4

积分
606
金钱
606
注册时间
2017-1-3
在线时间
65 小时
 楼主| 发表于 2018-5-29 08:50:11 | 显示全部楼层
624467649 发表于 2018-5-28 13:41
有个疑问,不考虑升级问题的情况下。每次上电后先进bootloader,比如里面对串口,定时器等等进行了配置,然 ...

按道理来说是可以直接使用的,即使你跳转了,因为一些外设像TIMER UART 啊这样的他们的寄存器是没有改变的,也就是说他们是没有复位的,还是保存了原来的值。
不过建议跳转之前deinit 所有的外设,并且disable所有的中断,不然会出现意想不到的bug的,虽然我没有遇到过,,不过看网上的帖子有这样的问题
回复 支持 反对

使用道具 举报

0

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
165
金钱
165
注册时间
2012-4-25
在线时间
10 小时
发表于 2018-5-29 11:28:27 | 显示全部楼层
不错,学习一下        
QQ:747764222?可接项目 和 毕设等
? 可以出售各种LED灯,以及控制方案。
? ? LED灯已经出口到全球各地,控制方案也很有经验。
回复 支持 反对

使用道具 举报

105

主题

522

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1386
金钱
1386
注册时间
2012-10-23
在线时间
97 小时
发表于 2018-5-31 10:46:40 | 显示全部楼层
本帖最后由 miaoguoqiang 于 2018-5-31 10:58 编辑

BUG太多了。多出错几次,上位机就发不出数据了。一直显示升级中,却不发送任何数据。升级过程中,关闭串口会导致软件卡死。
升级app标签界面的时候,连接设备成功后,就无法切换到bootloader标签页,查询bootloader版本等都无效了。这个时候只能选择升级。我觉得不能点击的时候控件应该disable。
一次发送失败就失败了,这个时候为什么没有重新发送这一包数据。

回复 支持 反对

使用道具 举报

9

主题

141

帖子

1

精华

高级会员

Rank: 4

积分
606
金钱
606
注册时间
2017-1-3
在线时间
65 小时
 楼主| 发表于 2018-5-31 20:10:21 | 显示全部楼层
miaoguoqiang 发表于 2018-5-31 10:46
BUG太多了。多出错几次,上位机就发不出数据了。一直显示升级中,却不发送任何数据。升级过程中,关闭串口 ...

回复 支持 反对

使用道具 举报

16

主题

63

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
205
金钱
205
注册时间
2018-4-26
在线时间
33 小时
发表于 2018-6-8 23:38:36 | 显示全部楼层
请问 有没有做过boot是带RTX的  我现在遇到一个boot带RTX系统 跳转到APP后,一进中断就崩溃
回复 支持 反对

使用道具 举报

3

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
185
金钱
185
注册时间
2018-4-22
在线时间
39 小时
发表于 2018-6-9 12:10:27 | 显示全部楼层
一个月以前也想做RF的远程烧录,思路和楼主的也是一样的吧. 然而一个月已经过去还在做低功耗的部分.
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2018-6-9
在线时间
0 小时
发表于 2018-6-9 20:34:37 | 显示全部楼层

谢谢分享
回复 支持 反对

使用道具 举报

6

主题

126

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
207
金钱
207
注册时间
2018-4-18
在线时间
10 小时
发表于 2018-6-19 16:55:26 | 显示全部楼层
学习一下 谢谢分享
回复 支持 反对

使用道具 举报

2

主题

64

帖子

0

精华

高级会员

Rank: 4

积分
960
金钱
960
注册时间
2014-11-2
在线时间
370 小时
发表于 2018-6-20 19:53:17 | 显示全部楼层
mark一下
回复 支持 反对

使用道具 举报

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
发表于 2018-8-1 16:14:32 | 显示全部楼层
这个上位机xp可以运行吗,好像不行啊
回复 支持 反对

使用道具 举报

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
发表于 2018-8-1 16:26:04 | 显示全部楼层
能不能提供上位机源码1640410300@qq.com
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
82
金钱
82
注册时间
2017-11-2
在线时间
18 小时
发表于 2018-8-8 17:24:28 | 显示全部楼层
uart部分的代码能发出来吗
回复 支持 反对

使用道具 举报

0

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2017-3-17
在线时间
47 小时
发表于 2018-9-2 21:33:23 | 显示全部楼层
谢谢分享. 搞好IAP还是比较费功夫.
回复 支持 反对

使用道具 举报

0

主题

101

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
412
金钱
412
注册时间
2017-7-17
在线时间
166 小时
发表于 2018-9-10 16:13:30 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

3

主题

102

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
228
金钱
228
注册时间
2018-9-7
在线时间
22 小时
发表于 2018-9-10 18:52:10 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

3

主题

288

帖子

0

精华

高级会员

Rank: 4

积分
865
金钱
865
注册时间
2018-8-28
在线时间
130 小时
发表于 2018-9-14 15:55:40 | 显示全部楼层
MARK一下 ,谢谢分享
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
142
金钱
142
注册时间
2018-3-27
在线时间
38 小时
发表于 2018-9-20 14:54:38 | 显示全部楼层
请教楼主,APP1和APP2是同一份bin文件吗?如果是同一个bin文件工程设置里面的ROM1设置怎么处理呢?起始地址不一致的话好像起不来吧?
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
142
金钱
142
注册时间
2018-3-27
在线时间
38 小时
发表于 2018-9-20 15:13:02 | 显示全部楼层
望江樵夫 发表于 2018-9-20 14:54
请教楼主,APP1和APP2是同一份bin文件吗?如果是同一个bin文件工程设置里面的ROM1设置怎么处理呢?起始地址 ...

已经搞定了 是我编译的文件出了点问题
回复 支持 反对

使用道具 举报

3

主题

288

帖子

0

精华

高级会员

Rank: 4

积分
865
金钱
865
注册时间
2018-8-28
在线时间
130 小时
发表于 2018-9-30 10:41:23 | 显示全部楼层
MARK 一下
回复 支持 反对

使用道具 举报

1

主题

87

帖子

0

精华

初级会员

Rank: 2

积分
162
金钱
162
注册时间
2018-11-7
在线时间
16 小时
发表于 2018-11-8 23:36:04 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

1

主题

87

帖子

0

精华

初级会员

Rank: 2

积分
162
金钱
162
注册时间
2018-11-7
在线时间
16 小时
发表于 2018-11-11 13:02:10 | 显示全部楼层
这么好的贴子,必须顶
回复 支持 反对

使用道具 举报

8

主题

73

帖子

0

精华

高级会员

Rank: 4

积分
710
金钱
710
注册时间
2014-5-24
在线时间
145 小时
发表于 2018-11-12 23:58:30 | 显示全部楼层
做的不错,感谢分享!楼主也是各种跨平台写代码呀
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2018-10-12
在线时间
10 小时
发表于 2018-11-16 15:59:51 | 显示全部楼层
APP1和APP2在不同的两个区,那是不是两个bin文件的向量偏移都不一样?
那我每次生成bin文件是不是都得事先知道当前工作的App,才能设置另外一个app的起始地址。
是不是这样理解的?(我是通过spi方式进行对单片机升级的)
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
103
金钱
103
注册时间
2018-5-10
在线时间
32 小时
发表于 2018-12-11 11:37:21 | 显示全部楼层
哇,楼主这波操作。学习了!
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2017-3-30
在线时间
15 小时
发表于 2018-12-12 10:44:39 | 显示全部楼层
有个问题想问一下,我的程序可以正常升级到APP程序,但是在APP中中断不管用了,应该怎么查找原因啊?(中断向量表已修改,进入APP程序的时候已经做了关闭所有中断,开启所有中断的处理)
回复 支持 反对

使用道具 举报

3

主题

26

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
223
金钱
223
注册时间
2018-1-15
在线时间
42 小时
发表于 2018-12-28 18:06:10 | 显示全部楼层
问一下,这个需要升级的程序里不是需要设置SCB->VTOR的值还有IROM的值吗,目标程序不好确定这2个值啊
回复 支持 反对

使用道具 举报

4

主题

59

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2016-8-29
在线时间
128 小时
发表于 2019-1-11 10:47:16 | 显示全部楼层
IAP&上位机
回复 支持 反对

使用道具 举报

2

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2017-8-11
在线时间
21 小时
发表于 2019-1-14 11:27:56 | 显示全部楼层
谢谢楼主分享。
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-4-8
在线时间
6 小时
发表于 2019-4-8 18:48:42 | 显示全部楼层
帖子很好点个赞
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
139
金钱
139
注册时间
2017-11-24
在线时间
31 小时
发表于 2019-4-25 15:27:12 | 显示全部楼层
我现在用的F407,代码怎么移植到407啊?有什么要注意的地方吗?
回复 支持 反对

使用道具 举报

10

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
291
金钱
291
注册时间
2017-8-10
在线时间
89 小时
发表于 2019-4-26 11:20:01 | 显示全部楼层
你这个升级客户端,支持STM32F407的芯片吗?还是说只支持STM32F107???
回复 支持 反对

使用道具 举报

0

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2019-5-13
在线时间
26 小时
发表于 2019-7-30 12:38:23 | 显示全部楼层
好贴   谢谢分享
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
5
金钱
5
注册时间
2019-8-6
在线时间
2 小时
发表于 2019-8-6 22:51:48 | 显示全部楼层
学习中
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2019-5-11
在线时间
6 小时
发表于 2019-8-23 19:17:03 | 显示全部楼层
今天调了一下,怎么连接的第二段代码上位机不会发出来
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2019-5-11
在线时间
6 小时
发表于 2019-8-23 19:21:49 | 显示全部楼层
怎么连接的通信的第二段代码上位机没有发出来 例如:AA 01 6B 不会发出来
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2019-8-13
在线时间
7 小时
发表于 2019-8-27 20:37:54 | 显示全部楼层
很好,顶一个!
回复 支持 反对

使用道具 举报

1

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
327
金钱
327
注册时间
2018-10-21
在线时间
108 小时
发表于 2019-9-10 14:31:11 | 显示全部楼层
66666666666666
回复 支持 反对

使用道具 举报

0

主题

16

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5946
金钱
5946
注册时间
2018-1-4
在线时间
353 小时
发表于 2019-9-18 09:20:17 | 显示全部楼层
挺好,基本把流程都讲清楚了。
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
11
金钱
11
注册时间
2019-8-8
在线时间
4 小时
发表于 2020-1-3 10:28:47 | 显示全部楼层
13223123132
回复 支持 反对

使用道具 举报

0

主题

13

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
214
金钱
214
注册时间
2019-6-27
在线时间
90 小时
发表于 2020-2-24 19:36:34 | 显示全部楼层
学习学习
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

初级会员

Rank: 2

积分
64
金钱
64
注册时间
2020-2-25
在线时间
13 小时
发表于 2020-2-26 20:03:04 | 显示全部楼层
正好用到,很多可以参考的地方
回复 支持 反对

使用道具 举报

22

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
664
金钱
664
注册时间
2019-1-30
在线时间
111 小时
发表于 2020-3-23 15:13:20 | 显示全部楼层
如果app1非常大比如有400K,那么怎么办?整个FLASH只有512K,就不能再预留一个APP2的空间位置了
回复 支持 反对

使用道具 举报

22

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
664
金钱
664
注册时间
2019-1-30
在线时间
111 小时
发表于 2020-3-23 15:56:51 | 显示全部楼层
这个支持BootLoader自身的升级功能吗
回复 支持 反对

使用道具 举报

22

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
664
金钱
664
注册时间
2019-1-30
在线时间
111 小时
发表于 2020-3-31 13:27:40 | 显示全部楼层
不通过MDK更改软件的下载地址,程序进行更新的话,运行的程序是怎样做到在APP1和APP2跳转的?
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-30 23:50

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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