[STM32L0] stm32l051c8t6 adc采集的电压与实际测得的电压不同

[复制链接]
 楼主| 66大顺 发表于 2018-2-8 17:53 | 显示全部楼层 |阅读模式
本帖最后由 66大顺 于 2018-2-8 18:08 编辑
  1. 用的内部LSI时钟配置ADC时钟,VDD=3.3V做参考电压,采集内部温度和外部通道9的电压,但发现我用ADC采集通道9电压为1.39多V,但用万用表和示波器测通道9管脚的电压都是1.2V左右,通道管脚电压应该就是ADC采集、计算出来的电压,现在不同(不准)的原因可能是什么,另外我让改管脚悬空,ADC居然也有值=0.4多V!大家看看是我计算、配置有问题还是别的原因?



get.png
code.png
mmuuss586 发表于 2018-2-8 17:55 | 显示全部楼层
悬空0.4V也正常啊;
接个下拉电阻看看;

另外1.3V时测试电压不对,是不是换算方式有问题,正常不会差这么多的;
 楼主| 66大顺 发表于 2018-2-8 18:05 | 显示全部楼层
哇,这配置、计算代码居然没显示!
AD值是1735,VDD=3.6,计算出来就是1.4左右。
用万用表测引脚时,AD采集的电压就变1.2V,万用表表笔离开管脚和地,又变1.4
准备擦掉这部分板子电路,重新焊电阻看看
 楼主| 66大顺 发表于 2018-2-8 18:09 | 显示全部楼层
想问下有没有人遇到ADC采集值与电压不一致的情况,会是软件还是硬件造成的
598330983 发表于 2018-2-8 18:36 | 显示全部楼层
管脚是不可以悬空的,悬空测不准。
caijie001 发表于 2018-2-9 09:12 | 显示全部楼层
用过f1的ADC,准确。
 楼主| 66大顺 发表于 2018-2-9 17:25 | 显示全部楼层
原本的ADC管脚接了几M级的简单电阻分压,现在分压比例不变,只是将M级电阻变成k级电阻就好了,明明f103接M级分压电阻毫无问题的,为什么呢?
GOIO口配置都是模拟输入无上下拉,为什么l0的这ADC脚电压被拉高了0.2V,莫非它的口自带弱上拉?
仰望星期五 发表于 2019-1-29 11:22 | 显示全部楼层
HAL_ADCEx_Calibration_Start(&hadc,ADC_SINGLE_ENDED);添加一条该命令试下   我也遇到测试不准   百度了一下  又网友说添加校准命令就可以了   我试了下  问题就解决了。

评论

大佬说得很对,谢谢大佬,大佬真好!(此楼为正确答案)  发表于 2020-4-28 11:25
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

4

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部