|
MAX32630的带自动复位功能DAPLink固件
[复制链接]
本帖最后由 dcexpert 于 2017-8-2 22:13 编辑
MAX32630开发板带有一个DAPLink仿真器(MAXREFDES100HDK)。DAPLink是CMSIS-DAP的升级,支持CMSIS-DAP的所有功能,支持的芯片型号更多,扩展性更好。
DAPLink有一个有用的功能是自动复位,就是通过复制文件方式下载新的程序后,在完成程序写入后,可以自动复位用户单片机,实现自动运行的效果。默认情况下,这个功能是关闭的,每次都需要按一下复位键才能运行程序,稍微有点麻烦,因此就想把自动复位功能加上。
要查看自动复位(auto_rst)功能是否允许了,可以打开DAPLink所在的磁盘,可以看到有一个DETAILS.TXT文件。我们打开这个文件,可以看到下面的内容,其中第4行就显示了自动复位功能。
- # DAPLink Firmware - see [url=https://mbed.com/daplink]https://mbed.com/daplink[/url]
- 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磁盘后,就会自动运行,不需要再按复位键了。
固件文件:
|
|