嵌入式以太网社区

?找回密码
?立即注册
搜索
365bet官网足球官方开户网利用Python来控制STM32365bet官网足球官方开户网365bet官网足球官方开户网
STM32高速USB数据传输方案,支持多系统!STM32全速USB数据传输方案,支持多系统!Flash高速烧写方案STM32 HID IAP/Bootloader升级方案
查看: 16664|bet365体-在线体育投注_365体育投注地址_365体育投注登录: 82
打印 上一主题 下一主题

STM32 HID一键升级固件(HID Bootloader)方案

? [复制链接]

1110

帖子

173

主题

14万

金币

超级版主

Rank: 8Rank: 8

积分
149607
QQ
跳转到指定楼层
楼主
发表于 2016-5-27 12:47:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 飞鸿踏雪 于 2017-7-17 16:39 编辑

前言:
Bootloader应该是每个成熟产品都必须具备的功能,有了它,我们不用担心产品销售出去后发现产品固件有问题而无法解决的问题,有了Bootloader功能,我们可以非常方便的升级更新我们产品的固件!
该方案主要是基于USB HID协议实现的Bootloader,其升级操作流程如下动画所示:


功能简介:
1,通过USB HID实现数据的传输,该方案也同时集成了USB键盘的功能;
2,App固件传输是经过AES加密的,可以防止非法人员窃取固件;
3,在开始升级固件之前,对固件文件进行严格检测,防止客户选择错误文件;
4,升级操作非常简单,无需在设备上做任何其他的操作,连接USB之后,只需要在软件上选择固件,再点击升级固件按钮即可;
5,固件烧写完成后使用MD5算法对固件进行校验,防止数据出错而导致升级失败;
6,固件升级完成之后,无需断电重启;

验证流程:
1,本方案USB接口电路如下图所示,注意USB上拉电阻控制引脚,该方案中,低电平使能上拉电阻。

2,将Bootloader固件烧入单片机中,一般使用JLINK烧写,本方案的单片机固件为STM32F1 HD系列上可用的固件,若需要其他类型单片机的固件可以联系我。
固件下载: HIDBootloaderFirmware.rar (13.6 KB, 下载次数: 616)

3,下载App固件到本地备用,下载后是一个压缩文件,解压后文件名为firmware_encrypt.bin,这是一个经过AES加密之后的文件,这个文件是可以提供和客户升级使用的。
App固件下载: firmware_encrypt.rar (7.79 KB, 下载次数: 438)

4,第2步下载固件之后,复位或者重新上电,Bootloader就会运行,若一切正常,第一次PC会提示发现新设备,并会自动安装驱动,驱动安装完毕之后在设备管理器里面会看到类似于如下的设备:


5,下载HID Bootloader上位机软件包,解压出来之后双击运行里面的HIDBootloader.exe文件(在Linux系统和Mac系统下启动程序的方式有所不同),然后就可以按照前言里面的动画操作流程来操作了。
上位机软件下载: HIDBootloader.rar (14.55 MB, 下载次数: 2625)


上位机软件简介:
上位机软件使用Qt C/C++编写,同一套代码可以直接在Windows,Linux,Mac上编译使用,所以我们编写的上位机软件也可以直接在不同的系统下编译生成对应系统下的可执行文件,下面是不同系统下的测试界面截图
Windows:


Linux:


Mac:


上位机软件升级流程如下所示:


Bootloader固件简介:
本方案固件的HID有两个功能,一个是自定义的HID数据传输,另外一个是USB键盘功能,它们之间使用不同的报告ID进行区分,两个功能可以同时使用,当然用户若需要使用其他的功能,也可以通过修改HID报告描述符来实现,Bootloader固件程序工作流程如下所示:



App固件简介:
App固件及为实现产品功能的固件,它除了具备原产品的功能之外,它还应该具备另外一个功能,那就是能接收PC主机发送的程序跳转命令,接收到该命令之后,需要擦除App运行标志,然后跳转到Bootloader运行,这样才能实现一键升级功能,其基本流程图如下所示:

当然在生成App加密固件的时候,还需要在工程上做一些配置。
1,修改程序起始地址,如下图所示


2,将固件输出原始bin文件,然后调用我们的加密程序将原始bin文件进行加密。


这样配置之后,每次编译程序,就会自动输出加密之后的bin文件。

后记:
本方案由作者本人开发,已经经过大量测试,程序运行非常稳定,该方案已经有很多客户用于自己的产品之中;
本文只是针对STM32F1系列的单片机,作者可以根据用户的需求进行一些定制开发,比如更改上位机软件界面,使用其他单片机来实现,增加其他功能等;
转载本文请注明出处,本文原始地址为:http://www.embed-net.com/thread-576-1-1.html
源码购买:https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-15987418095.13.57dbe93863kPGk&id=545934302522



人生到处知何似,应似飞鸿踏雪泥。

10

帖子

0

主题

67

金币

注册会员

Rank: 2

积分
85
沙发
发表于 2016-5-27 14:14:21 | 只看该作者
东西太好了





10

帖子

0

主题

67

金币

注册会员

Rank: 2

积分
85
板凳
发表于 2016-5-27 14:19:43 | 只看该作者
再点赞一次







16

帖子

5

主题

199

金币

新手上路

Rank: 1

积分
292
地板
发表于 2016-5-27 22:15:58 | 只看该作者
顶。
发放方发放付芳芳芳芳芳芳芳芳芳芳芳芳芳芳

16

帖子

5

主题

199

金币

新手上路

Rank: 1

积分
292
5#
发表于 2016-5-27 22:16:43 | 只看该作者
好论坛啊

28

帖子

0

主题

1434

金币

金牌会员

Rank: 6Rank: 6

积分
1510
6#
发表于 2016-5-28 22:34:46 | 只看该作者
有这样的工具可以增加一些破解难度。支持!!!

6

帖子

1

主题

270

金币

中级会员

Rank: 3Rank: 3

积分
308
7#
发表于 2016-5-31 10:53:00 | 只看该作者
谢谢板主分享实用资讯!

15

帖子

0

主题

85

金币

注册会员

Rank: 2

积分
122
8#
发表于 2016-6-3 17:42:52 | 只看该作者
厉害,是我需要的就是看得见啊死的

15

帖子

0

主题

85

金币

注册会员

Rank: 2

积分
122
9#
发表于 2016-6-3 17:44:00 | 只看该作者
厉害厉害ihhsidhaiosdha是

9

帖子

0

主题

72

金币

注册会员

Rank: 2

积分
97
10#
发表于 2016-6-3 19:36:40 | 只看该作者
学习了

13

帖子

1

主题

45

金币

注册会员

Rank: 2

积分
73
11#
发表于 2016-6-4 14:31:49 | 只看该作者
不错的资料

14

帖子

1

主题

12

金币

注册会员

Rank: 2

积分
54
12#
发表于 2016-6-7 10:16:42 | 只看该作者
很不错的资料,下载学习

25

帖子

1

主题

819

金币

高级会员

Rank: 4

积分
925
13#
发表于 2016-6-7 16:04:48 | 只看该作者
超级赞的分享啊!

3

帖子

0

主题

33

金币

新手上路

Rank: 1

积分
42
14#
发表于 2016-6-11 16:27:01 | 只看该作者
楼主good !我想在stm32F107上使用,有对应的bootloader吗?

3

帖子

0

主题

33

金币

新手上路

Rank: 1

积分
42
15#
发表于 2016-6-11 16:37:42 | 只看该作者
我的板子不是pd3控制USb上拉的,烧进去显示unkonw device,还请楼主公布源码哈,谢喽

1110

帖子

173

主题

14万

金币

超级版主

Rank: 8Rank: 8

积分
149607
QQ
16#
?楼主| 发表于 2016-6-11 21:25:50 | 只看该作者
casy 发表于 2016-6-11 16:27
楼主good !我想在stm32F107上使用,有对应的bootloader吗?

107的需要单独写程序,USB程序和103的不兼容
人生到处知何似,应似飞鸿踏雪泥。

135

帖子

54

主题

282

金币

高级会员

Rank: 4

积分
959
17#
发表于 2016-6-12 08:58:28 | 只看该作者
好贴,收藏了。

11

帖子

1

主题

2

金币

新手上路

Rank: 1

积分
23
18#
发表于 2016-6-12 11:47:58 | 只看该作者
好东西!谢谢分享!

16

帖子

2

主题

23

金币

注册会员

Rank: 2

积分
76
19#
发表于 2016-7-12 09:47:48 | 只看该作者
好东西啊 学习学习

17

帖子

1

主题

43

金币

注册会员

Rank: 2

积分
119
20#
发表于 2016-7-18 20:30:17 | 只看该作者
很好的学习资料,收藏了,谢谢分享

4

帖子

0

主题

10

金币

新手上路

Rank: 1

积分
22
21#
发表于 2016-7-19 09:45:26 | 只看该作者
这个好啊!
对楼主真的很佩服!!!!!!

10

帖子

0

主题

2

金币

新手上路

Rank: 1

积分
22
22#
发表于 2016-7-25 18:18:01 | 只看该作者
这个好啊!
对楼主真的很佩服!!!!!!

7

帖子

0

主题

99

金币

注册会员

Rank: 2

积分
120
23#
发表于 2016-8-3 09:19:47 | 只看该作者
这个好呀,加个无线就是远程更新了,哈哈

5

帖子

0

主题

47

金币

注册会员

Rank: 2

积分
62
24#
发表于 2016-8-8 13:52:59 | 只看该作者
十分感谢,好东西。

5

帖子

0

主题

30

金币

新手上路

Rank: 1

积分
45
25#
发表于 2016-8-9 09:06:32 | 只看该作者
版主的东西就是给力。

25

帖子

0

主题

79

金币

注册会员

Rank: 2

积分
144
26#
发表于 2016-8-9 10:02:28 | 只看该作者
学习学习,好东西

11

帖子

0

主题

13

金币

新手上路

Rank: 1

积分
36
27#
发表于 2016-8-9 15:00:09 | 只看该作者
很牛逼的东西 感觉还是不太方便 hid 还是需要上位机软件 不如U盘模拟的方式来的快

2

帖子

0

主题

19

金币

新手上路

Rank: 1

积分
25
28#
发表于 2016-8-22 16:25:29 | 只看该作者
谢谢分享,以后可能会用到!

18

帖子

1

主题

2

金币

注册会员

Rank: 2

积分
51
29#
发表于 2016-8-23 14:05:15 | 只看该作者

9

帖子

0

主题

39

金币

注册会员

Rank: 2

积分
66
30#
发表于 2016-9-8 09:41:30 | 只看该作者
感谢楼主分享,如果能作成U盘自动更新APP固件,对于量产在线烧录就很方便了

1110

帖子

173

主题

14万

金币

超级版主

Rank: 8Rank: 8

积分
149607
QQ
31#
?楼主| 发表于 2016-9-8 10:17:14 | 只看该作者
chadhuang 发表于 2016-9-8 09:41
感谢楼主分享,如果能作成U盘自动更新APP固件,对于量产在线烧录就很方便了

这个可以有,后面时间宽松了可以弄一个...
人生到处知何似,应似飞鸿踏雪泥。

8

帖子

0

主题

16

金币

新手上路

Rank: 1

积分
38
32#
发表于 2016-9-21 17:53:56 | 只看该作者
感谢楼主分享,刚好需要到这样子的一个东西。楼主能分享公开下源代码吗?不胜感激

20

帖子

0

主题

6

金币

注册会员

Rank: 2

积分
62
33#
发表于 2016-9-21 18:15:33 | 只看该作者
居然可以直接下载??谢楼主无私

3

帖子

0

主题

0

金币

新手上路

Rank: 1

积分
9
34#
发表于 2016-9-21 23:18:17 | 只看该作者
学习了,很好的

20

帖子

0

主题

11

金币

注册会员

Rank: 2

积分
63
35#
发表于 2016-10-26 09:45:28 | 只看该作者
升级还是很方便的

13

帖子

5

主题

39

金币

注册会员

Rank: 2

积分
111
36#
发表于 2016-11-4 13:39:39 | 只看该作者
这个个网站不错,很专一值得收藏

6

帖子

0

主题

12

金币

新手上路

Rank: 1

积分
30
37#
发表于 2016-11-8 09:26:18 | 只看该作者
不错的资料

10

帖子

0

主题

39

金币

注册会员

Rank: 2

积分
65
38#
发表于 2016-11-8 19:03:35 | 只看该作者
好东西,收藏了。佩服。

15

帖子

0

主题

5

金币

新手上路

Rank: 1

积分
48
QQ
39#
发表于 2016-11-10 10:19:06 | 只看该作者
楼主真是多才多艺啊

6

帖子

0

主题

1190

金币

金牌会员

Rank: 6Rank: 6

积分
1206
40#
发表于 2016-11-16 07:48:46 | 只看该作者
不错的资料感谢楼主分享,以后可能会用到!

25

帖子

0

主题

6

金币

注册会员

Rank: 2

积分
75
41#
发表于 2016-11-21 11:51:19 | 只看该作者
需要的是源码,

8

帖子

0

主题

26

金币

新手上路

Rank: 1

积分
44
42#
发表于 2017-2-5 17:18:12 | 只看该作者
赞,换个金币

19

帖子

0

主题

30

金币

注册会员

Rank: 2

积分
83
43#
发表于 2017-2-7 16:33:07 | 只看该作者
强大!在这里学到好多啊

121

帖子

1

主题

594

金币

金牌会员

Rank: 6Rank: 6

积分
1511
44#
发表于 2017-2-10 00:17:11 | 只看该作者
真是很棒的资料, 谢谢您.

121

帖子

1

主题

594

金币

金牌会员

Rank: 6Rank: 6

积分
1511
45#
发表于 2017-2-10 00:17:42 | 只看该作者
真是很棒的资料, 谢谢您.

7

帖子

0

主题

11

金币

新手上路

Rank: 1

积分
30
46#
发表于 2017-3-6 22:08:52 | 只看该作者
这个资料不错? ?学习一下

25

帖子

3

主题

107

金币

注册会员

Rank: 2

积分
196
47#
发表于 2017-3-8 08:44:01 | 只看该作者
有时间的时候试试? ?? ?? ?? ?? ?? ?

81

帖子

7

主题

284

金币

高级会员

Rank: 4

积分
539
48#
发表于 2017-4-24 14:09:23 | 只看该作者
103的不兼容,眨办呢

1110

帖子

173

主题

14万

金币

超级版主

Rank: 8Rank: 8

积分
149607
QQ
49#
?楼主| 发表于 2017-4-25 08:46:20 | 只看该作者
hefeizdl 发表于 2017-4-24 14:09
103的不兼容,眨办呢

兼容.....
人生到处知何似,应似飞鸿踏雪泥。

4

帖子

0

主题

465

金币

中级会员

Rank: 3Rank: 3

积分
477
50#
发表于 2017-5-12 13:33:31 | 只看该作者
谢谢分享,好东西。

36

帖子

0

主题

10

金币

注册会员

Rank: 2

积分
76
51#
发表于 2017-6-7 22:07:15 | 只看该作者
学习中,非常感谢楼主共享

14

帖子

1

主题

6

金币

注册会员

Rank: 2

积分
50
52#
发表于 2017-6-17 15:34:43 | 只看该作者
学习了》》》》》

8

帖子

1

主题

21

金币

新手上路

Rank: 1

积分
46
53#
发表于 2017-6-18 14:32:16 | 只看该作者
楼主可否提供源代码学习一下呢?

1110

帖子

173

主题

14万

金币

超级版主

Rank: 8Rank: 8

积分
149607
QQ
54#
?楼主| 发表于 2017-6-19 09:18:16 | 只看该作者
人生到处知何似,应似飞鸿踏雪泥。

4

帖子

0

主题

9

金币

新手上路

Rank: 1

积分
21
55#
发表于 2017-6-19 21:02:06 | 只看该作者
好东西,支持源码收费

31

帖子

2

主题

70

金币

注册会员

Rank: 2

积分
170
56#
发表于 2017-6-20 08:22:49 | 只看该作者
学习中??及加拿大看到么快乐玛丽

21

帖子

0

主题

77

金币

注册会员

Rank: 2

积分
138
57#
发表于 2017-7-5 13:48:06 | 只看该作者
晕,打不开taoboa...晕死

10

帖子

0

主题

124

金币

注册会员

Rank: 2

积分
144
58#
发表于 2017-7-28 14:17:59 | 只看该作者
好东西支持一下

7

帖子

0

主题

34

金币

注册会员

Rank: 2

积分
55
59#
发表于 2017-8-16 10:07:06 | 只看该作者
确实是好东东,

11

帖子

0

主题

4

金币

新手上路

Rank: 1

积分
33
60#
发表于 2017-8-17 18:33:36 | 只看该作者
太厉害了,谢谢分享

75

帖子

0

主题

156

金币

中级会员

Rank: 3Rank: 3

积分
355
61#
发表于 2017-8-18 09:27:50 | 只看该作者
挺好的东西

46

帖子

4

主题

27

金币

新手上路

Rank: 1

积分
133
62#
发表于 2017-8-18 21:10:54 | 只看该作者
思路很好,这样方便

12

帖子

0

主题

87

金币

注册会员

Rank: 2

积分
117
63#
发表于 2017-8-30 22:48:17 | 只看该作者
好是好 就是太贵了

196

帖子

1

主题

1961

金币

金牌会员

Rank: 6Rank: 6

积分
2508
64#
发表于 2017-8-31 11:16:12 | 只看该作者
这个必须保存收藏

68

帖子

4

主题

24

金币

金牌会员

Rank: 6Rank: 6

积分
1082
65#
发表于 2017-10-24 17:45:15 | 只看该作者
谢谢分享...

14

帖子

1

主题

56

金币

注册会员

Rank: 2

积分
86
66#
发表于 2017-11-30 14:29:44 | 只看该作者
强强强,厉害了我的哥

13

帖子

0

主题

73

金币

注册会员

Rank: 2

积分
104
67#
发表于 2017-12-15 20:26:45 | 只看该作者
不错的东西,应该开源给大家学习借鉴。

22

帖子

0

主题

2

金币

新手上路

Rank: 1

积分
34
68#
发表于 2018-1-26 14:04:02 | 只看该作者
学习一下 mark

9

帖子

0

主题

4

金币

新手上路

Rank: 1

积分
31
69#
发表于 2018-3-5 16:07:56 | 只看该作者
很复杂的样子

25

帖子

1

主题

3

金币

注册会员

Rank: 2

积分
73
70#
发表于 2018-3-6 21:18:45 | 只看该作者
回帖赚金币

198

帖子

1

主题

621

金币

金牌会员

Rank: 6Rank: 6

积分
1163
71#
发表于 2018-5-19 16:02:57 | 只看该作者
楼主高手,谢谢分享

4

帖子

0

主题

7

金币

新手上路

Rank: 1

积分
19
72#
发表于 2018-8-1 11:25:50 | 只看该作者
这个可以有。。。。。。。。。。。。。

36

帖子

7

主题

58

金币

注册会员

Rank: 2

积分
186
73#
发表于 2018-8-1 22:22:00 | 只看该作者
给坛主点赞,但坛主要薄利多销啊

1

帖子

0

主题

12

金币

新手上路

Rank: 1

积分
15
74#
发表于 2018-10-8 11:27:31 | 只看该作者
价格低点就好了

18

帖子

0

主题

101

金币

注册会员

Rank: 2

积分
151
75#
发表于 2018-11-15 13:32:19 | 只看该作者
好贴!感谢了!

30

帖子

1

主题

10

金币

注册会员

Rank: 2

积分
81
76#
发表于 2018-11-16 23:22:14 | 只看该作者
很好的学习资料, encrypt工具在哪有?

21

帖子

0

主题

16

金币

注册会员

Rank: 2

积分
79
77#
发表于 2018-11-29 15:43:18 | 只看该作者
挣金币啊,好资料,感谢

41

帖子

13

主题

16

金币

注册会员

Rank: 2

积分
189
78#
发表于 2019-2-12 15:44:51 | 只看该作者
后续需要,留个记号

2

帖子

0

主题

15

金币

新手上路

Rank: 1

积分
21
79#
发表于 2019-2-21 11:07:51 | 只看该作者
你好,在STM32F103T8,请问下载了 HIDBootloaderFirmware.rar 固件之后,设备管理器可以找到USB HID设备,但是用您提供的上位机程序扫描不到USB HID设备,是什么原因呢?

1

帖子

0

主题

10

金币

新手上路

Rank: 1

积分
13
QQ
80#
发表于 2019-8-20 21:37:19 | 只看该作者
下载的是bin文件 以为是源码 哈哈哈哈??被秀了一波

1

帖子

0

主题

22

金币

新手上路

Rank: 1

积分
25
81#
发表于 2019-9-10 09:02:53 | 只看该作者
好,很好,非常好,要是开源,那就更好了,大功德一件啊

55

帖子

12

主题

164

金币

中级会员

Rank: 3Rank: 3

积分
445
82#
发表于 2019-9-17 09:25:49 | 只看该作者
看看。。。。。。。。。

9

帖子

0

主题

22

金币

新手上路

Rank: 1

积分
49
83#
发表于 2019-10-9 14:33:26 | 只看该作者
好资料,谢谢分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|嵌入式以太网社区 ( 渝ICP备14007427号 )?

GMT+8, 2019-11-6 12:34 , Processed in 0.110691 second(s), 32 queries .

Powered by Discuz! X3.2

? 2001-2013 Comsenz Inc.

快速bet365体-在线体育投注_365体育投注地址_365体育投注登录 返回顶部 返回列表