你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

开源基于CAN总线的Bootloader/IAP,含上位机及STM32单片机源码  

[复制链接]
wdluo 发布时间:2016-12-9 14:59
功能简介:
  • 利用CAN总线实现对有CAN总线接口的设备进行固件升级;
  • 升级采用一键升级方式,傻瓜式操作,方便使用;
  • 用户可以自己修改上位机源码和下位机源码,实现固件的加密传输;
  • 目前此项目包含了STM32F1,STM32F2,STM32F4系列单片机示例源码,后面会增加其他单片机源码;
  • 上位机界面程序目前是用Qt(C++)实现,后面会增加C#,Labview版本代码;
    4 V, F6 n+ c+ g, ^

! V7 U% f0 p) L# Q7 X/ @使用步骤:
4 R- J% L7 T# c6 Z# s% T1,找到和你所使用的单片机对应的源码,比如为STM32F103芯片,用keil 5打开bootloader/RVMDK目录下的工程,检查下你的CAN总线引脚配置是否跟我代码里面的一样,若是一样的,则可以直接编译下载,若不一样,则需要更改CAN总线引脚配置部分代码;
: q/ C" a8 ~* P( C, j2,和bootloader同目录下有个app目录,同样打开app/RVMDK目录下的工程文件,并编译工程,若一切正常的,那么在app/RVMDK/Output目录下应该会生成一个.bin文件,这个就是我们后面用来升级的固件;9 _$ @* `8 O1 Q( A$ _8 T- y
3,使用Qt5打开software/CANBootloader-Qt/project目录下的CAN_Bootloader.pro文件,点击“构建”->“运行”即可编译运行此程序(若没有Qt开发环境,可以直接下载我打包好的程序,安装后即可运行,百度网盘下载地址:https://pan.baidu.com/s/1hsFjZMk ,在“软件”->“CANBootloader”目录)。. y1 G* A3 ?0 a5 B, C6 F
4,运行CANBootloader上位机软件后,点击“操作”->“扫描节点”,此时软件会弹出节点地址范围设置对话框,设置好扫描的节点返回,点击“确定”之后软件就开始扫描节点,同时将扫描到的节点显示在节点列表里面,选择列表里面的节点,然后再点击界面上的“打开文件”按钮,在弹出的文件浏览对话框中找到第2步编译出来的.bin文件,然后再点击“更新固件”按钮,此时就会开始固件更新,固件更新成功后,节点列表里面的节点固件类型会由原来的“BOOT”变成“APP”,到此固件更新完毕。) g1 d. x- f: v8 N4 q2 k- Z
5,若当前固件是“APP”的情况下,一样是可以进行固件更新的,只是在更新固件之前程序会有一个固件跳转的操作,具体流程可以参考源码。
! E( K. X1 _' D: Y( b9 z9 b6 [
4 A4 q/ Q1 J0 G% R7 Z" `软件演示:
; Y8 [( T' u; L' p' L" p
4 O. O/ O# X  D) z9 y# y) ?) @: `$ K7 D! W8 A. L5 ]! g
源码下载:
/ t# i  t; @0 k4 J2 O# Q; S, y; Yhttp://github.com/usbxyz/CAN-Bootloader3 N. j0 e% Q4 L. F. L  _
上位机软件安装程序下载:https://pan.baidu.com/s/1qY6gkJa8 l5 O6 \4 E0 T% l* {/ G: t, U  l
赞 收藏 25 评论29 发布时间:2016-12-9 14:59

举报

29个回答
仙人球W 回答时间:2017-9-11 18:43:54
楼主,调试代码过程中出现如下问题,请指教!不胜感激
' l& i8 j8 y  e& l7 `2 R* g+ ~! i1、扫描设备出现问题[img=0,1]file:///C:\Users\Administrator\Documents\Tencent Files\540709935\Image\C2C\II87NVW_AZ6K}5@2U2[Q70Q.png[/img][img=0,1]file:///C:\Users\Administrator\Documents\Tencent Files\540709935\Image\C2C\II87NVW_AZ6K}5@2U2[Q70Q.png[/img][img=0,1]file:///C:\Users\Administrator\Documents\Tencent Files\540709935\Image\C2C\II87NVW_AZ6K}5@2U2[Q70Q.png[/img] TIM图片20170911184102.png
" v7 M8 V" K: q) c, @是不是DLL要先注册一下,WIN7系统: P( v1 z) o& s- L+ t

+ j$ s! s. D! l8 s2 ^4 ?
9 D& W; |$ D7 @4 i' v8 y2 Q* ?8 Afile:///C:\Users\Administrator\Documents\Tencent Files\540709935\Image\C2C\ICG~)1H)3_L2H{4F%146EVM.png 1.png
" T4 q# ]1 N  t8 L7 H6 M9 o3 G2 U$ u' {4 r5 ~7 k

- ^# g( A- |& T/ ] 2.png ; a( f# D- a% B2 y
) y8 Y7 J7 N. z7 S2 A9 U
2、楼主使用的CAN卡为什么牌子,我使用的是周立功的CAN卡,是否CAN卡有问题。谢谢!!! m& l4 }7 d$ Z/ W/ B( z
wdluo 回答时间:2018-5-31 10:16:44
目前这个程序不支持ZLG的CAN卡哟,提示无法加载USB2XXX.dll是由于没安装我们的驱动程序导致,我把最新的软件发上来,安装后就会自动安装驱动程序。
$ Z* P! E( E8 v+ F链接:https://pan.baidu.com/s/1F8CAQN9ctMSGMdgz1PgD7w 密码:u9g3
lyn521 回答时间:2017-9-23 09:25:38
仙人球W 发表于 2017-9-11 18:43
, R  q0 Q8 `6 o: B6 j; s楼主,调试代码过程中出现如下问题,请指教!不胜感激
  A4 a) S  z2 F6 j/ r1、扫描设备出现问题
! U* o  W0 R9 z. H1 z5 B; I  ~是不是DLL要先注册一下,WIN7系 ...

" f4 `0 U7 d# }9 O4 X; d扫描设备的问题解决了吗?我现在也是用的zlg的USB转CAN,发现连接不上。求指教
leo121_3006061 回答时间:2016-12-9 17:12:46
谢谢分享,正好手头有两块STM32板子,可以跟着学习
disheng4688 回答时间:2016-12-9 17:58:16
谢谢分享
luscu 回答时间:2016-12-9 23:09:12
不明白,PC没有CAN 接口 是怎样通过PC软件将数据发送到MCU?新手 不好意思
luscu 回答时间:2016-12-9 23:10:52
不明白,PC没有CAN接口,是通过什么方式将数据发送给MCU?
春眠不觉晓 回答时间:2016-12-10 19:20:31
买个USB转CAN的卡就可以了
斜阳 回答时间:2016-12-11 10:09:18
谢谢分享
wdluo 回答时间:2016-12-19 12:50:39
协议说明文档,Labview程序源码,C#版本程序源码已经提交到github
wdluo 回答时间:2016-12-19 12:51:26
luscu 发表于 2016-12-9 23:09) i( x/ c9 J- W
不明白,PC没有CAN 接口 是怎样通过PC软件将数据发送到MCU?新手 不好意思
: ]0 c7 ]/ O! m. \4 [
可以用USB转CAN适配器来实现
peter001 回答时间:2016-12-19 12:57:54
谢谢分享
为你分心 回答时间:2017-4-20 09:47:47
你这个软件不支持周立功的USB-CAN啊?????
wdluo 回答时间:2017-4-20 09:51:32
为你分心 发表于 2017-4-20 09:473 `; ~! r) E7 ?* P6 y3 X
你这个软件不支持周立功的USB-CAN啊?????
1 R+ z, ]& _& K" z; b0 x* a: v
不支持,若要支持我可以帮你定制开发,Q,188298598
zbber 回答时间:2017-4-20 11:32:35
协议说明文档,Labview程序源码,C#版本程序源码已经提交到github
12下一页

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版