求助!如何用STM32F407对0~5V的模拟电压进行AD转换?

2019-07-20 02:27发布

我在做一个小项目,用想STM32对PH传感器采集的模拟电压值进行AD转换,但是PH传感器采集的模拟电压范围为0~5V,而开发板默认参考电压Vref+接了VDDA,也就是3.3V。我先自己做了尝试。
首先,AD转换例程上用的是ADC1通道5(PA5),我看数据手册上PA5属性是TTa,即3V容忍;于是我把AD转换端口修改为了PA6,因为PA6对应ADC1通道6,并且属性为FT,即5V容忍。
其次,我把P7上的Vref+接到了5V电压上。
我原以为进行上述修改就可以实现对在0~5V范围的模拟电压的AD转换。结果我进行测试,PA6用杜邦线接GND,采集数字值为1490左右;PA6用杜邦线接3.3V电压,采集数字值为4044左右;PA6用杜邦线接5V电压,采集数字值为4070左右。
显然,我失败了
那么问题来了。
1.是我哪里没考虑到导致了失败还是STM32F407本身就不能够支持0~5V模拟电压的AD转换?
2.如果是前者请大佬们给找出问题并解决,如果是后者请提出另外一种成熟的详细的解决方案(不要简单的和我说什么电阻分压)。
诚心请教技术,不胜感激!!!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
samglz
1楼-- · 2019-07-20 19:44
用运放
szczyb1314
2楼-- · 2019-07-20 20:16
 精彩回答 2  元偷偷看……
ChenTianyu
3楼-- · 2019-07-21 00:53
gw826943555 发表于 2018-4-28 07:59
参考电压3.3v 也就是3.3v的时候 采样值就4095满量程了,想都不用想肯定不能直接接,你这样可能直接导致ADC ...

还是需要想想的,之前没在手册上看到在“模拟配置中,I/O引脚不能为5V容忍”。
ChenTianyu
4楼-- · 2019-07-21 06:00
samglz 发表于 2018-4-28 11:08
用运放

模电没学好。。。
ChenTianyu
5楼-- · 2019-07-21 08:52
 精彩回答 2  元偷偷看……
ChenTianyu
6楼-- · 2019-07-21 11:04
xuyaqi 发表于 2018-4-28 09:19
通过电阻分压,把被测电压降为AD输入电压。

正打算试一下呢,请问用多大的电阻来分压比较合适呢?对电流也有些要求吧?

一周热门 更多>