STM32的调试下载器中,这两年最火的,肯定是CMSIS-DAP了。
开源、免驱、稳定、虚拟串口......!!
下面以淘自魔芯科技的CMSIS-DAP为例, 详细解释使用中的设置步骤,其它的商家产品,设置步骤基本一致。
一、接线图示
- 3.3V 和STLink必须连接3.3V作为参考电压不同,它是真实的3.3V 500ma供电,如果目标板已有供电,这根线可以不接;
- GND 共地, 必须接
- SWDIO 数据线,必须接
- SWCLK 时钟线,必须接
- nRST 复位线,使用电平信号复位,可以不接,因为CMSIS-DAP更常使用软件信号复位;
- 背面 RX 虚拟串口,贼好用, 记得和板子反接,RX接TX, TX接RX
- 背面 TX 同上
二、软件设置图示
注意:最常见的能识别目标芯片,但调试下载失败,常常是第7步忽略了。
三、常见故障解决
1、弹窗: 不能识别设备
- 多发生在win7或以下系统. CMSIS-DAP是免驱动的, 插上就能直接使用. 如果提示不能识别设备, 是指系统没能找到虚拟串口驱动, 百度一下CMSIS-DAP的虚拟串口驱动, 安装一个就好了, 另外, win10无需此驱动.
- 如果不安装虚拟串口的驱动, 一直提示不能识别, 也不影响CMSIS-DAP的调试下载使用
2、不能发现CMSIS-DAP设备
- 这个还真常见,现象:把CMSIS-DAP插到电脑后, 没文字弹窗提示, 或者没声音提示, 或者Keil里没找到相应设备;
- 插到电脑之后,观察CMSIS-DAP的指示灯,闪烁表示已正常连接电脑,无闪烁表示连接不成功,没能建立连接;
- 能正常闪烁的:检查杜邦线或更换杜邦线,杜邦线用久了之后,会出现松动、内部断线....;
- 能正常闪烁的:检查接线有没有接错了,别犯低级错误;
- 不能闪烁:重新插拔,或换一个U口;
- 不能闪烁:如果是使用内置CMSIS-DAP的板子,如魔芯、魔女的开发板,经Micro USB接口使用数据线连接至电脑的,千万别以为充电用的安卓线就一定是数据线!!不一定!!
3、能发现CMSIS-DAP,但不能识别目标芯片
- 检查杜邦线,万用表测量是否断路,或更换杜邦线,防止松动或内断
- 检查接线是否接错了
- 检查上图5-3中的第6步选项,必须参数!是否已选中SW参数!与相邻的时钟速度无关。
4、能识别目标芯片,但下载或调试失败
- 检查图5-3中的第7步,同样是必须参数,意思是使用软件复位;
- 万用表测量杜邦线,是否断路;
- 使用更短的杜邦线,以减少干扰;
- 降低时钟速度
- 如果是刚移植或新建的工程,检查工程的启动文件,是否与芯片的容量型号相匹配,分ld,md,hd.....
- 同上,移植或新建的工程,要检查FLASH的下载算法,是否与芯片的容量型号相匹配。