分享USB_CDC库, USB_HID库, SDCC版, IAR版, @Ai8051U-8Bit - SDCC, IAR C++ for 51, GCC, VSCode,Linux, MacOS 国芯技术交流网站 - AI32位8051交流社区
使用了大佬的SDCC库,实现了SDCC编译,不停电下载。方法跟keil下使用一样,就是引用USB库。
虽然能够不停电下载了,但是Vscode中编译完成后,还要打开STCISP软件点一下下载按钮,使用自动检测hex文件变化自动下载有太频繁了,并不是每次编译后都需要下载。
官方的STCISP又不支持命令行下载,第三发下载工具stcgal之类的下载器可以命令行下载烧录操作,但作者很久没更新了,不支持ai8051u的USB下载。
经过上面帖子大佬的醍醐灌顶,有了思路,那就是利用STCISP软件的文件自动下载检测,复制一份hex,然后在VSCODE中eide插件的下载按钮里调用脚本完成复制,我们在STCISP里下载复制备份的文件,勾选自动检测文件变化就下载选项。
这样,每次需要下载,我们点击下载按钮,就会自动运行脚本复制备份,也就间接实现了方便的点击下载功能。
具体操作:
1、准备批处理程序download.bat,我这里存放到工程根目录的tools文件夹下,我已经写好,文件内容如下:
- cd /d %~dp0
- copy /Y %1 %1.bak.hex
复制代码
2、在eide的下载选项配置下载命令:
- .\tools\download.bat ${ExecutableName}.hex
复制代码
3、点击下载按钮运行一次,产生备份文件供STCISP下载用
4、在STCISP中配置好你的下载选项,选中“当目标文件变化时自动装载并发送下载命令”
打开后缀为.bak.hex的程序文件,点击下载一次程序。
5、此时STCISP后台保持打开就行,直接在EIDE中点击下载按钮即可完成程序下载(此时会运行批处理download.bat复制hex程序文件,后台的STCISP检测到复制后的文件变化就会下载程序,等待下载完成即可)
这样只需要在STCISP通过USB接口点击下载一次程序,就可以在VSCODE安心写代码下载,不用再管STCISP,避免了重复的程序切换工作。
download.bat
(38 Bytes, 下载次数: 38)
|