立即注册

micropython-microbit 中文社区

查看: 2015|回复: 5

【经验分享】PYB Nano 刷固件升级的方法

    [复制链接]
  • TA的每日心情
    擦汗
    2019-9-12 22:27
  • 签到天数: 30 天

    [LV.5]常住居民I

    发表于 2018-2-10 10:33:20 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    本帖最后由 microCPyE 于 2018-2-10 12:00 编辑

    本次介绍的是 Dfu 升级法,献给那些和我一样菜的朋友,助早日脱离苦海。

    当前环境:
            Win7 x86

    升级对象:
            PYB Nano 1.84(本人所使用的板子)

    升级工具:
            硬件部分:跳帽或杜邦线一个
            软件部分:DfuSe Demo V3.05 (可在ST官方网站获取 (建议不要使用 3.03版的,升级过程中会意外中止)

    升级固件:
           firmware_v1.9.3-84_THREAD_PYBNanoV11_MPLR_v1.2.dfu(请选择自己需要的版本,可以在论坛官方github处获取)

    升级步骤:

    • 首先,需要安装 DfuSe Demo 软件。( 注意:当前软件在安装时默认安装在C盘,且安装时没注意有选择盘符的地方,可能是我眼花了,如果介意将软件安装到 C 盘的慎装。

                                     
      登录/注册后可看大图
            

                                     
      登录/注册后可看大图
    • 在断电的情况下(通常是拔下USB连接线),使用跳线帽或杜邦线短接 Boot0 和 3v3 引脚,使 Boot0 置高电平,并保持不要松脱;

                                     
      登录/注册后可看大图
              

                                     
      登录/注册后可看大图


    • 短接好后,插上 USB 数据线,与电脑连接,此时电脑会提示发现新硬件,并尝试安装驱动(如果之前没有安装过类似的驱动的话),Win7及以上系统会自动安装。若自动安装失败、安装后没效果,或未提示安装,则需要手动安装,并在驱动所在路径栏指向 "X:\Program Files\STMicroelectronics\Software\DfuSe v3.0.5\Bin\Driver" (注:X 表示 C:、D:、E:、F:   ....... 中的任意一个,即你所安装的路径盘符,如果安装时未选择,则默认为系统所在盘,当然,系统不一定都是安装在C盘,切记!)


                                     
      登录/注册后可看大图
            
    • 安装好驱动后,请查看计算机管理中是否正确识别了,即在“通用串行总线控制器”栏下是否有一个“STM Device in DFU Mode“的项,若没有,请尝试 扫描检测硬件改动或按一下PYB Nano板上的 sw 按钮,即可出现;

                                     
      登录/注册后可看大图
            

                                     
      登录/注册后可看大图
    • 运行 DefuSe Demo 工具,并检查左上角 Available DFU Devices 下拉列表框中是否存在 STM Device in DFU Mode 的设备,如果没有,则同上,按一下 PYB Nanao 板上的 sw 按钮,则会自动识别,若一次不行可多按几次。

                                     
      登录/注册后可看大图
         

                                     
      登录/注册后可看大图
            

                                     
      登录/注册后可看大图
    • 检查右上角 DFU Mode 区域 Vendor ID 和 Procuct ID 的值是否分别为 0483 和 DF11 ,若不是,则表示当前板子不支持此种方法升级,请尝试其它方案;

                                     
      登录/注册后可看大图
           
    • 点击右下角 Vpgrade or Verify Action 区域 Choose 按钮选择并加载升级固件( *.dfu 文件),加载成功后,下方的进度条上会显示 ” File correctly loaded. " 的提示;

                                     
      登录/注册后可看大图

    • 选中 Choose 按钮上方的 Verify after download 复选框(下载完成后验证是否成功),点击中间的 Upgrade 按钮开始升级,直到下方进度条停止滚动,并显示升级成功为止;
    • 此时可点击旁边的 Verify 按钮进行验证,当然是在软件未自动验证的情况下才需要;
    • 退出升级工具,拔下 USB 数据线,拔下跳线帽或杜邦线,然后再重新连接上 USB 数据线,通过终端工具查看当前固件版本是否为刚升级的固件版本,以验证是否升级成功。

                                     
      登录/注册后可看大图


    总结:
    在升级过程中有几点容易产生问题,需要注意:
    • 升级工具最好通过官方渠道下载,否则要么容易损坏或出故障,要么会被植入木马或一些让你意想不到的插件,要么下载过程繁琐或在你不断地点击链接寻找最终下载地址的过程中会让你的电脑被植入有害插件或对你的电脑进行修改;
    • Dfu驱动在你安装的 DfuSe 软件的安装目录已经给出了,只需要在手动安装时将搜索路径定位到此即可,故而,这个软件得在第一步的时候就进行安装,否则没法安装驱动。另外需要注意的时 Win7 与 WinXP 相互兼容性较好,相同位数的情况下,两种系统下的驱动基本上可以通用,有冲突的很少;
    • 在连接上数据线后,设备经常会出现未被识别为Dfu设备的情况,此时请注意检查 Boot0是否被置成了高电平,若已确认,则可以通过按几次 sw 按钮来激活让其识别。


    以上为本人的一点经历,还望各位有不同经历的补充,谢谢!!

    运行程序.png
    加载与升级.png
    sw按钮.jpg
    检查识别情况.png
    DfuSeInstall.png
    跳线.jpg
    duanjie1.jpg
    驱动识别.png
    连接数据线.jpg
    驱动识别.png
    终端.png

    DFUSE-USB设备固件升级.pdf

    671.12 KB, 下载次数: 45

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-9-4 20:26
  • 签到天数: 89 天

    [LV.6]常住居民II

    发表于 2018-5-12 23:58:26 | 显示全部楼层
    补充:
    步骤3,如果PC任何反应都没有就无法加载驱动安装文件,此时按下RST,设备管理器未知设备一栏会出现黄色感叹号的设备,方可按照楼主所说继续操作。
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-10-23 20:05
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    发表于 2018-2-10 21:59:14 | 显示全部楼层
    非常详细。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2018-4-20 14:47
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2018-4-20 13:45:11 | 显示全部楼层
    大佬V5,非常详细了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2019-4-18 10:31:21 | 显示全部楼层
    想问一下,插上去,并且BT0也拉高了,为什么一点反应都没有,板子上的灯不在闪烁,但是电脑上一点反应都没有。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2019-9-12 22:27
  • 签到天数: 30 天

    [LV.5]常住居民I

     楼主| 发表于 2019-5-7 23:48:42 | 显示全部楼层
    qtxxcj 发表于 2019-4-18 10:31
    想问一下,插上去,并且BT0也拉高了,为什么一点反应都没有,板子上的灯不在闪烁,但是电脑上一点反应都没 ...

    见二楼(推荐)
    回复 支持 反对

    使用道具 举报

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

    Archiver|手机版|小黑屋|micropython-microbit 中文社区

    GMT+8, 2019-12-10 16:45 , Processed in 0.111504 second(s), 24 queries .

    Powered by Discuz! X3.4

    © 2001-2013 Comsenz Inc.

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