注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题

dcexpert的个人空间 http://home.eeworld.com.cn/space-uid-573537.html [收藏] [复制] [分享] [RSS]

日志

MAX32630的带自动复位功能DAPLink固件

已有 280 次阅读2017-8-2 18:26 |个人分类:开发板

MAX32630开发板带有一个DAPLink仿真器(MAXREFDES100HDK)。DAPLink是CMSIS-DAP的升级,支持CMSIS-DAP的所有功能,支持的芯片型号更多,扩展性更好。
DAPLink有一个有用的功能是自动复位,就是通过复制文件方式下载新的程序后,在完成程序写入后,可以自动复位用户单片机,实现自动运行的效果。默认情况下,这个功能是关闭的,每次都需要按一下复位键才能运行程序,稍微有点麻烦,因此就想把自动复位功能加上。

要查看自动复位(auto_rst)功能是否允许了,可以打开DAPLink所在的磁盘,可以看到有一个DETAILS.TXT文件。我们打开这个文件,可以看到下面的内容,其中第4行就显示了自动复位功能。

[Plain Text] 纯文本查看 复制代码
# DAPLink Firmware - see https://mbed.com/daplink
Unique ID: 040900004d8043d800000000000000000000000097969904
HIC ID: 97969904
Auto Reset: 0
Automation allowed: 0
Daplink Mode: Interface
Interface Version: 0241
Bootloader Version: 0242
Git SHA: 1dae6a4f19d03a5050d5d8ee43cdaebaeab64e03
Local Mods: 1
USB Interfaces: MSD, CDC, HID
Bootloader CRC: 0x8db0eef9
Interface CRC: 0x25b50efc


在0241以后版本中,DAPLink可以通过MSD Commands设置一些状态开关,详细的MSD Commands可以参考这里。通过复制文件auto_rst.cfg到DAPLink就可以打开自动复位功能(复制文件同时需要按住RESET键),但是可惜的是,MAXREFDES100HDK可以响应这个命令(复制文件后打开DETAILS.TXT,可以看到Auto Reset变为了1),但是不能保存,掉电后又会恢复为禁用状态。

MAXIM也没有提供这个仿真器的源码,所以不能通过编译源码方式实现自动复位功能。经过几次实验,发现通过修改bin文件(将0xCA90处的0改为1),可以实现自动复位功能,使用新的固件文件后,只要复制bin文件到DAPLink磁盘后,就会自动运行,不需要再按复位键了。


固件文件:


升级固件的方法是:

  • 下载固件文件(可以只下载我修改后的文件)
  • 按住RESET键不放,然后连接USB到计算机。
  • 保持RESET不放,直到出现MAINTENANCE(维护)磁盘
  • 复制新的固件文件到MAINTENANCE磁盘,复制完成后会自动复位
  • 再次打开DETAILS.TXT,查看Auto Reset是否变为了1,如果不是检查并重复上述步骤



测试文件:

  • 几个编译好的bin文件,方便大家测试:



本文来自论坛,点击查看完整帖子内容。

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2017-12-19 06:07 , Processed in 0.139742 second(s), 11 queries , Redis On.

Powered by EEWORLD电子工程世界

© 2017 http://bbs.eeworld.com.cn/

返回顶部