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

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

[复制链接]
wdluo 发布时间:2016-12-9 14:59
功能简介:
  • 利用CAN总线实现对有CAN总线接口的设备进行固件升级;
  • 升级采用一键升级方式,傻瓜式操作,方便使用;
  • 用户可以自己修改上位机源码和下位机源码,实现固件的加密传输;
  • 目前此项目包含了STM32F1,STM32F2,STM32F4系列单片机示例源码,后面会增加其他单片机源码;
  • 上位机界面程序目前是用Qt(C++)实现,后面会增加C#,Labview版本代码;* u4 a  l, V# e! U4 p: i
4 i- ?8 V$ C$ M% }" y* h9 k
使用步骤:# J2 k% o& j7 T' W+ c# D
1,找到和你所使用的单片机对应的源码,比如为STM32F103芯片,用keil 5打开bootloader/RVMDK目录下的工程,检查下你的CAN总线引脚配置是否跟我代码里面的一样,若是一样的,则可以直接编译下载,若不一样,则需要更改CAN总线引脚配置部分代码;9 `3 M9 }9 O* [  |0 _) y; \+ M
2,和bootloader同目录下有个app目录,同样打开app/RVMDK目录下的工程文件,并编译工程,若一切正常的,那么在app/RVMDK/Output目录下应该会生成一个.bin文件,这个就是我们后面用来升级的固件;
4 Z% {; e6 g( f  Q3,使用Qt5打开software/CANBootloader-Qt/project目录下的CAN_Bootloader.pro文件,点击“构建”->“运行”即可编译运行此程序(若没有Qt开发环境,可以直接下载我打包好的程序,安装后即可运行,百度网盘下载地址:https://pan.baidu.com/s/1hsFjZMk ,在“软件”->“CANBootloader”目录)。; f1 E! \6 \0 r5 ~/ @1 w! z
4,运行CANBootloader上位机软件后,点击“操作”->“扫描节点”,此时软件会弹出节点地址范围设置对话框,设置好扫描的节点返回,点击“确定”之后软件就开始扫描节点,同时将扫描到的节点显示在节点列表里面,选择列表里面的节点,然后再点击界面上的“打开文件”按钮,在弹出的文件浏览对话框中找到第2步编译出来的.bin文件,然后再点击“更新固件”按钮,此时就会开始固件更新,固件更新成功后,节点列表里面的节点固件类型会由原来的“BOOT”变成“APP”,到此固件更新完毕。
2 H6 U3 a7 s. T4 p# g- l0 l; l/ ~5,若当前固件是“APP”的情况下,一样是可以进行固件更新的,只是在更新固件之前程序会有一个固件跳转的操作,具体流程可以参考源码。
/ E" P, g; @7 Z3 K
1 r* ~% E1 S0 A软件演示:  H/ ]$ {" K+ w% c, Y: u
+ v( Q5 k# e9 I& `& o+ R1 {' B  q
) M; }. C# s- E8 E- }& L
源码下载:
/ `0 f7 N2 g% `" G3 d+ Nhttp://github.com/usbxyz/CAN-Bootloader( d; `3 o' X: e3 W
上位机软件安装程序下载:https://pan.baidu.com/s/1qY6gkJa* B1 t( I9 v" W7 g2 @/ _( q; R3 a
收藏 25 评论29 发布时间:2016-12-9 14:59

举报

29个回答
仙人球W 回答时间:2017-9-11 18:43:54
楼主,调试代码过程中出现如下问题,请指教!不胜感激/ W: {$ v' \. S- }" Z  R) s
1、扫描设备出现问题[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
! y$ R8 A/ S( V" M* a, l1 @% w是不是DLL要先注册一下,WIN7系统6 l$ I# q% g4 |, H2 F" |6 @5 [
- X# ~% O4 |: v, O$ O
; H+ I; y+ S8 {$ D8 B
file:///C:\Users\Administrator\Documents\Tencent Files\540709935\Image\C2C\ICG~)1H)3_L2H{4F%146EVM.png 1.png + }; e5 _% Q0 z9 K& Z6 q

$ m+ A  k' r9 X1 Q' V1 a# o7 X0 d0 _& J- N2 H* D
2.png ; z: H+ \7 P  D2 L
9 r7 C2 v' F  A" v4 @
2、楼主使用的CAN卡为什么牌子,我使用的是周立功的CAN卡,是否CAN卡有问题。谢谢!!
6 I1 K& ~% a- [- u* ?6 ^, D' x+ p
wdluo 回答时间:2018-5-31 10:16:44
目前这个程序不支持ZLG的CAN卡哟,提示无法加载USB2XXX.dll是由于没安装我们的驱动程序导致,我把最新的软件发上来,安装后就会自动安装驱动程序。; d) x0 z0 c8 Q$ h! T3 F$ I% i
链接:https://pan.baidu.com/s/1F8CAQN9ctMSGMdgz1PgD7w 密码:u9g3
lyn521 回答时间:2017-9-23 09:25:38
仙人球W 发表于 2017-9-11 18:43
# c7 ^/ C, A7 F& c6 @; u楼主,调试代码过程中出现如下问题,请指教!不胜感激' A/ T# G+ p8 {6 [- g2 Q, v) ?' O
1、扫描设备出现问题# G  e5 @! P0 Q% O& B
是不是DLL要先注册一下,WIN7系 ...

! {" T( j9 G2 E. X扫描设备的问题解决了吗?我现在也是用的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
! F! t; C( E% M! ^: q不明白,PC没有CAN 接口 是怎样通过PC软件将数据发送到MCU?新手 不好意思
- l' y, g6 ^7 g) f' T) H. M+ {
可以用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:47
& r& [' M1 J* e5 S你这个软件不支持周立功的USB-CAN啊?????

+ z3 l# _1 u& P- t/ |  N/ G) m. ~不支持,若要支持我可以帮你定制开发,Q,188298598
zbber 回答时间:2017-4-20 11:32:35
协议说明文档,Labview程序源码,C#版本程序源码已经提交到github
12下一页

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版