近日参加活动,开发板没有提供烧录外设,只提供了SWD接口,手上没有可用的烧录器,于是在群里沟通,有朋友说了,可用用ESP32做个,于是我想到了我有个ESP8266和Arduino,一查不要紧,这两个都可以使用开源项目固件做成烧录器CMSIS-DAP于是我准备用ESP8266做一个。
我手头上的8266型号为Adafruit HUZZAH ESP8266 breakout
在Arduino IDE 添加
http://arduino.esp8266.com/stable/package_esp8266com_index.json
之后在开发板管理搜ESP8266,安装依赖文件,之后选择该板子型号,设置波特率
接下来下载开源项目文件
https://codeload.github.com/thevoidnn/esp8266-wifi-cmsis-dap
本贴提供我修改过的,上面WIFI账号密码是我用的,你可以修改成自己的
esp8266-wifi-cmsis-dap.zip
(40.66 KB)
另外我在原版基础上添加的配置好网络后通过串口打印IP的指令。
如果条件允许可以单独做个板子,实现按键选择模式,以及OLED显示IP地址以及其他功能。
之后编译烧录。
烧录方式
按住GPIO0按钮,红色 LED 将亮起
按住GPIO0 的同时,单击“RESET”按钮
释放RESET,然后释放GPIO0
当您松开RESET按钮时,红色 LED 将微弱亮起,这意味着它已准备好启动加载
接下来确定连接线
该配置信息在如下文件中,因为前面注释掉了这些内容,所以实际编译段为框中部分
连线方式,如下,上面Arduino配置的端口编号,就是ESP8266板子上的编号。
接下来需要使用服务软件启动相关服务
USBIP.zip
(668.59 KB)
安装虚拟USB驱动
因为这个驱动没有签名,所以我们需要把Windows的测试模式打开。以管理员身份打开命令行工具,输入以下命令:
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
完成上面操作后,重启电脑
如果你需要关闭测试模式,可以输入:
bcdedit -set TESTSIGNING OFF
解压上面压缩包内的driver.7z备用,打开设备管理器,然后点击操作-添加过时硬件:
之后单击下一步,选择手动
再单击下一步,选择从磁盘安装
找到刚才解压的驱动,安装即可。
之后会在设备管理器的系统设备中多一个内容:USP/IP Enumerator
接下来运行服务程序USBIP
在文件夹目录输入cmd回车
然后输入
usbip.exe -D -a 192.168.10.247 1-1
回车
这个时候启动MDK就可以看到有DAP设备了
按照上面的链接图连接EPS8266上的SWD三线端口,以及给目标芯片提供供电。
然后就可以烧录了。
|
https://blog.csdn.net/while0l1/article/details/90766151 参考