烧录器用多了,便有了想做烧录器的想法,终于因为手头上有了几片STM32F103C8T6,才将想法付出行动
先是将目标定在了STLINK上,因为自己使用的大多数芯片都是ST旗下的,于是便在网络上搜集STLINK的开源资料,找到了以STM32F103C8T6为主控的开源方案,以及官方的STLINK固件
放成果图,一直嫌外面买的烧录器个头大,到自己设计的时候就将所有的电阻电容全部改成了0402封装,晶振也采用的小封装贴片晶振,预留了TYPE-C接口和两排排针口,整个板子体积做到了13*33mm,外层套了透明的热缩管,整体效果看着还行
硬件做出来后,才发现有很多的坑,电脑是WIN10系统,需要事先装好STLINK的驱动,并且还要安装一个兼容WIN10系统的驱动,装好驱动后,有出现过一直无法识别USB设备的问题
遇到这种情况,我通过网上搜集多个版本的STLINK固件,在一个个尝试下,终于有一个固件烧录进去后,电脑能正常识别STM32 STLink
接下来就迫不及待的想在KEIL5 MDK上烧录STM32程序,找了一个STM32开发板,接上STLINK后,软件就提示STLINK固件版本过低,需要升级
STM32F103C8T6内存64KB,没有足够的内存满足KEIL5最新的STLINK固件的烧录,这意味着没法使用KEIL软件来直接使用STLINK烧录程序
事实证明,STM32F103C8T6不太适合用作STLINK的主控芯片使用,为了不浪费做的STLINK烧录器,装了一个STM32 ST-LINK Utility软件
该软件可以很好的识别到STLINK烧录器,通过这个软件,也可以将程序HEX文件烧录到板子上,就是没法办法直接使用KEIL软件,感觉终究还是差了点
经历过上面的失败后,又将目标改成了CMISI_DAP烧录器,DAP烧录器也是采用SWD方式下载,它有一个优点是可以同时兼容串口功能,相当于是二合一了,最关键是网上也有相关使用STM32F103C8T6当主控的DAP烧录器的开源资料
在一顿操作后,也是将电阻电容全改成了0402封装,晶振也采用的小封装贴片晶振,预留了TYPE-C接口和两排排针口,结合上一版STLINK的经验将板子稍微做大了一点,并且将板子的颜色改成了黑色,整个板子体积做到了15*35mm,外层也套了透明的热缩管,成果图如下:
在给DAP烧录器烧录固件后,插上电脑WIN10系统可以直接识别,不需要安装驱动,这一点就非常友好
打开KEIL5 MDK软件后,发现也可以正常的识别DAP烧录器
将DAP烧录器接上开发板进行测试,烧录器可以识别到开发板的STM32芯片,可以正常的进行程序烧录,证明用KEIL烧录是没问题的
接下来用串口功能测试烧录单片机,用的单片机是STC89C52RC,使用stc-isp助手进行烧录,软件能正常的识别到COM口
测试烧录程序,点击打开程序文件,加载想下载的HEX文件,加载好后;再点击下载/编程,通过冷启动,可以成功的将程序下载进入到单片机上
事实证明,STM32F103C8T6用来做DAP烧录器还是没有问题的,后续会持续对DAP烧录器进行测试使用,可能也会研究研究JLINK烧录器的制作