打印
[STM32F0]

STM32F030单片机,AD采样电压被拉高

[复制链接]
8042|38
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
龙荡乾坤|  楼主 | 2016-3-17 10:21 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
最近画了一块板子,当单片机没有跑程序的时候,AD采样电压都是正确的,一旦单片机跑AD采集程序,采样的电压从1.5V升高到2.1V,单片机的AD读出的值一直为4095。这个程序以前用过,没有问题,现在不知道什么问题,请各位大神不吝赐教。感谢!!
沙发
龙荡乾坤|  楼主 | 2016-3-17 10:46 | 显示全部楼层

单片机没有烧写程序时,AD要采集的电压是1.5V,一旦单片机烧写程序了,1.5V就升高到2.1V了,用万用表测量的。

使用特权

评论回复
板凳
龙荡乾坤|  楼主 | 2016-3-17 11:03 | 显示全部楼层
玄德 发表于 2016-3-17 10:55
应当说“AD输入管脚的电压是。。。”
输入端口配置错了。

大神,当时也考虑是不是配置出了问题,但是这个程序测试过,在其他的板子上都可以正常读取AD值。

使用特权

评论回复
地板
龙荡乾坤|  楼主 | 2016-3-17 13:03 | 显示全部楼层
风去 发表于 2016-3-17 11:11
外部采样电阻检查一下

同样的电阻,存在这种差异。

使用特权

评论回复
5
龙荡乾坤|  楼主 | 2016-3-17 14:42 | 显示全部楼层
Jessicakjdsl 发表于 2016-3-17 13:34
不太懂你说的什么意思,一直是4095说明是溢出了啊

是的,但是我用万用表测量AD输入管脚的电压是2.1V。

使用特权

评论回复
6
龙荡乾坤|  楼主 | 2016-3-18 09:15 | 显示全部楼层
magic_yuan 发表于 2016-3-18 00:08
楼主描叙不清,别人也不知道怎么帮你分析

哎,这个现象的描述我也很纠结,就是两个10K电阻分压(3V),一个电阻分1.5V。如果单片机空跑(无程序),分压就是1.5V。一旦给单片机下载好程序后,1.5V的分压就变成2.1V和0.9V了。而这个程序之前测试过都是能够正常运行的。现在纠结死了。

使用特权

评论回复
7
龙荡乾坤|  楼主 | 2016-3-18 11:11 | 显示全部楼层
本帖最后由 龙荡乾坤 于 2016-3-18 11:13 编辑

C:\Documents and Settings\Administrator\桌面\2016-03-18_091016.png就是这个分压电路,想要测量TempIn_1的电压。一跑程序原来TempIn_1的1.5V就被拉升到2.1V。

2016-03-18_091016.png (14.14 KB )

2016-03-18_091016.png

使用特权

评论回复
8
龙荡乾坤|  楼主 | 2016-3-18 11:46 | 显示全部楼层
gmm2015 发表于 2016-3-18 11:42
对应管脚配置成浮空输入。
你是不是把管脚配置成上拉输入了?

我就是配置成浮空输入,这个程序在其他的板子上测试过,没有问题。所以很纠结。

使用特权

评论回复
9
龙荡乾坤|  楼主 | 2016-3-18 11:50 | 显示全部楼层
magic_yuan 发表于 2016-3-18 11:37
很明显单片机引脚吸收或者放出电流了。从而导致分压不是以前的1:1了。

这个板子,焊过两块,同样的程序烧写进去,一个可以正常运行,一块就出现这种问题。感觉是硬件出了问题,就是不知道到底什么地方出错了。

使用特权

评论回复
10
龙荡乾坤|  楼主 | 2016-3-18 11:55 | 显示全部楼层
gmm2015 发表于 2016-3-18 11:52
那估计是硬件问题。temp1怎么接的?
去掉R28、把C35改成电阻,看看有没有问题?
...

temp1直接加到单片机的AD口。

使用特权

评论回复
11
龙荡乾坤|  楼主 | 2016-3-18 13:03 | 显示全部楼层

那TempIn1端通过一个2.54的接线端子,通过一个电阻箱进行分压的。

2016-03-18_130253.png (68.89 KB )

2016-03-18_130253.png

使用特权

评论回复
12
龙荡乾坤|  楼主 | 2016-3-18 14:11 | 显示全部楼层
gmm2015 发表于 2016-3-18 13:48
看下temp2端是否正常,如果正常的话。就实在不知道你的问题出在哪了?

两个都不正常,都是4095.

使用特权

评论回复
13
龙荡乾坤|  楼主 | 2016-3-18 14:12 | 显示全部楼层
xmshao 发表于 2016-3-18 14:09
把VDD/VDDA这些电源脚确认一遍。

VDD/VDDA这些电源脚都已经确认,使用示波器进行测量,纹波也是在可以接收的范围。

使用特权

评论回复
14
龙荡乾坤|  楼主 | 2016-3-18 15:11 | 显示全部楼层
chaplin 发表于 2016-3-18 14:44
你有兼容5v io口接5v的外设么。好像会导致内部电压升高

外围没有5V的外设,我再考虑是不是洗板水会影响单片机的正常工作呢?

使用特权

评论回复
15
龙荡乾坤|  楼主 | 2016-3-21 10:09 | 显示全部楼层
Ryze 发表于 2016-3-18 20:05
4095,说明直接干到最大了都

我用万用表测量采样电阻上的电压是2.1V(temp1的对地电压)。

使用特权

评论回复
16
龙荡乾坤|  楼主 | 2016-3-22 16:27 | 显示全部楼层
springvirus 发表于 2016-3-21 14:22
冷静下,传份网上的资料,看看是否可以找到大的解决问题方向

谢谢您的资料,我仔细看了,发现单片机的AD管脚设置成模拟输入,悬空时管脚有3V的电压。有可能是AD管脚电压输出把采样的电压拉高了。

使用特权

评论回复
17
龙荡乾坤|  楼主 | 2016-3-23 11:30 | 显示全部楼层
IversonCar 发表于 2016-3-22 22:15
ad的采样值一直是溢出的啊

是的,所以不知道这是原因。不知道是软件还是硬件的问题。

使用特权

评论回复
18
龙荡乾坤|  楼主 | 2016-3-23 11:33 | 显示全部楼层
springvirus 发表于 2016-3-22 18:02
恩恩,可以做做实验,验证下

验证一下,就是单片机的AD管脚输出了电压。但是程序设置的是模拟输入啊。不知道什么原因引起的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

19

帖子

0

粉丝