最近做一个产品,要测试多串锂电池的电压,系统也是用锂电池供电的。选择的是STM32F101RBT6,稳压管用的是HT7533;电池每串的电压范围是2.8~4.2V,目前我系统上做到10串,电压采集直接用分压电阻按照15:1来做的。
问题是:我用电压模拟的时候,ADC采集数据都是好的,但直接把多串电池直接接上,第一次还能正常采集,但热插拔几次,ADC采集出来的数据就全部变成4095,我再尝试读取内部的参照电压和温度传感器,依然是4095;再把ADC输入的几个管脚配置成IO,能进行正常的电平变化;我再小心翼翼的换上另外一块装有同样程序同样电路的板子,ADC就能正常采集数据了。我再测试那个异常的板子,串口通讯、PWM、定时器等都是好的,所以我几乎可以肯定是STM32的ADC外设损坏了。这个问题在我的实验中已经碰到了两次,在没有找出最可能的原因之前都不敢做实验了,不是芯片太贵,而且拆卸一次太麻烦了,请大家帮我分析下原因,谢谢! |