一、ST-LINK中的问题
所有问题出现之前,先检查有没有连线松动
1、ST-LINK connection error
解决方法:拔掉ST- LINK,断电,重插,上电
2、no target connected
解决方法1:将BOOT0引脚接高电平,程序烧写完成后再将BOOT0引脚接低电平
解决办法2:BOOT0=0;BOOT1=0
3、no target detected
可能是使用CubeMx生成工程的时候在SYS——debug里没有选择Serial Wire,配置工程再选上就行了
4、设备管理器可以识别到ST-LINK但是后面没有COM号
可能是这个ST-LINK不具备转COM功能,可以再接一个DB9母线转USB
二、串口问题
1、串口被占用
如果同一个串口连接过两个开发板,从一个开发板换到另一个开发板的时候可能提示串口被占用
解决办法:Win+R快捷键打开设备管理器——找到该串口——卸载——用手把串口拔出来——再重新插回去
预防办法:在用串口连另一个设备前断电操作
2、串口助手没有任何反应,复位后也不打印,但是又显示串口是打开的
解决办法:同上
3、串口不打印
如果程序没有其他问题可能是printf 没有重定向
解决办法:在main.c里添加
#include"stdio.h"
int fputc(int ch,FILE *stream)
{
while ((USART->ISR&UART _FLAG_TC==0));
USART->TDR=(uint8_t)ch;
return ch;
}
(这是新打的不是程序复制粘贴的 呼 平板敲代码好难打 建议搜一下Printf重定向再复制粘贴一下别人的)