STM32 最小系统 焊完之后的测试

1.
现象:在boot0和boot1都接地的情况下,单片机无法下载
解决方案:由于有的单片机可能会有休眠情况,所以在第一次烧录的时候将boot0拉高,成功之后再将其拉低,进行之后的烧录。

注意!!:事后使用了4块板子进行重新测试!发现其实不需要在第一次的时候将Boot0拉高,也可以成功烧录。
在boot0拉高的情况下烧录的情况如下:
烧录正常,但是运行不正常。因为当时没有截图。。。。。所以只能用不正常三个字来概括。。。

2.
现象:
在使用回流焊(reflow soldering)将最小系统1和2焊好之后,直接用我的电脑下载程序,失败,不能下载(boot0为高)。
用D的电脑下载成功。
将Boot0拉低,用我的电脑下载后,下载成功,但是运行有问题。以下是使用完全一样的程序和下载方式(SWD)之后的现象。
板子1:下载成功,运行不正常,全局变量初始化OK,但是进入硬件中断函数中的While(1)里面出不来了。几次尝试现象一样。(由于电压不足可能会进入这个中断,但是后来经过测试,3.3V供电依然一样,排除电压原因导致)
板子二:下载成功, 运行不正常,全局变量初始化OK,然后就是有一个在终端中循环加加的变量正常,但是ADC读数什么的都不正常。
原来的开发板:下载成功,运行正常,ADC,串口都正常。

可能的原因:
a:供电问题
原来用3V电池供电,但是似乎电池内阻比较大,接到板子上就只有2.几伏特了。
后来换3V稳压源供电,现象没有变化,在换3.3V稳压源供电,没有变化。(都用万用表测试过芯片的供电引脚的电压)
初步排除是供电不足的原因。

b:晶振的原因 crystal
正常的8M晶振的两端都是用万用表测量,有约为2V的电压。我的板子一最终是因为晶振有问题。

而板子二不知道为什么后来就好了。。。。。

总结:
问:如何在板子成功下载程序的之后看运行程序出的问题都是什么问题?
答:进行单步执行。

STM32 最小系统 焊完之后的测试_第1张图片

你可能感兴趣的:(工具调试笔记)