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

[复制链接]
8701|38
 楼主| 龙荡乾坤 发表于 2016-3-17 10:21 | 显示全部楼层 |阅读模式
最近画了一块板子,当单片机没有跑程序的时候,AD采样电压都是正确的,一旦单片机跑AD采集程序,采样的电压从1.5V升高到2.1V,单片机的AD读出的值一直为4095。这个程序以前用过,没有问题,现在不知道什么问题,请各位大神不吝赐教。感谢!!
玄德 发表于 2016-3-17 10:41 | 显示全部楼层

听不懂。


 楼主| 龙荡乾坤 发表于 2016-3-17 10:46 | 显示全部楼层

单片机没有烧写程序时,AD要采集的电压是1.5V,一旦单片机烧写程序了,1.5V就升高到2.1V了,用万用表测量的。
玄德 发表于 2016-3-17 10:55 | 显示全部楼层

应当说“AD输入管脚的电压是。。。”
输入端口配置错了。


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

大神,当时也考虑是不是配置出了问题,但是这个程序测试过,在其他的板子上都可以正常读取AD值。
风去 发表于 2016-3-17 11:11 | 显示全部楼层
外部采样电阻检查一下
 楼主| 龙荡乾坤 发表于 2016-3-17 13:03 | 显示全部楼层
风去 发表于 2016-3-17 11:11
外部采样电阻检查一下

同样的电阻,存在这种差异。
Jessicakjdsl 发表于 2016-3-17 13:34 | 显示全部楼层
不太懂你说的什么意思,一直是4095说明是溢出了啊
 楼主| 龙荡乾坤 发表于 2016-3-17 14:42 | 显示全部楼层
Jessicakjdsl 发表于 2016-3-17 13:34
不太懂你说的什么意思,一直是4095说明是溢出了啊

是的,但是我用万用表测量AD输入管脚的电压是2.1V。
magic_yuan 发表于 2016-3-18 00:08 | 显示全部楼层
楼主描叙不清,别人也不知道怎么帮你分析
 楼主| 龙荡乾坤 发表于 2016-3-18 09:15 | 显示全部楼层
magic_yuan 发表于 2016-3-18 00:08
楼主描叙不清,别人也不知道怎么帮你分析

哎,这个现象的描述我也很纠结,就是两个10K电阻分压(3V),一个电阻分1.5V。如果单片机空跑(无程序),分压就是1.5V。一旦给单片机下载好程序后,1.5V的分压就变成2.1V和0.9V了。而这个程序之前测试过都是能够正常运行的。现在纠结死了。
 楼主| 龙荡乾坤 发表于 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
magic_yuan 发表于 2016-3-18 11:37 | 显示全部楼层
龙荡乾坤 发表于 2016-3-18 09:15
哎,这个现象的描述我也很纠结,就是两个10K电阻分压(3V),一个电阻分1.5V。如果单片机空跑(无程序) ...

很明显单片机引脚吸收或者放出电流了。从而导致分压不是以前的1:1了。
gmm2015 发表于 2016-3-18 11:42 | 显示全部楼层
对应管脚配置成浮空输入。
你是不是把管脚配置成上拉输入了?
xmshao 发表于 2016-3-18 11:46 | 显示全部楼层
认同楼上看法,是不是配置错了。要配置为analog input.
还有就是注意管脚是否有其它复用冲突问题。
 楼主| 龙荡乾坤 发表于 2016-3-18 11:46 | 显示全部楼层
gmm2015 发表于 2016-3-18 11:42
对应管脚配置成浮空输入。
你是不是把管脚配置成上拉输入了?

我就是配置成浮空输入,这个程序在其他的板子上测试过,没有问题。所以很纠结。
 楼主| 龙荡乾坤 发表于 2016-3-18 11:50 | 显示全部楼层
magic_yuan 发表于 2016-3-18 11:37
很明显单片机引脚吸收或者放出电流了。从而导致分压不是以前的1:1了。

这个板子,焊过两块,同样的程序烧写进去,一个可以正常运行,一块就出现这种问题。感觉是硬件出了问题,就是不知道到底什么地方出错了。
gmm2015 发表于 2016-3-18 11:52 | 显示全部楼层
本帖最后由 gmm2015 于 2016-3-18 11:54 编辑
龙荡乾坤 发表于 2016-3-18 11:11
就是这个分压电路,想要测量TempIn_1的电压。一跑程序原来TempIn_1的1.5V就被拉升到2.1V。 ...


那估计是硬件问题。temp1怎么接的?
去掉R28、把C35改成电阻,看看有没有问题?
gmm2015 发表于 2016-3-18 11:55 | 显示全部楼层
龙荡乾坤 发表于 2016-3-18 11:50
这个板子,焊过两块,同样的程序烧写进去,一个可以正常运行,一块就出现这种问题。感觉是硬件出了问题, ...

那你硬件图要贴完整点的。最起码要把TempIn1和temp1的通路贴出来
 楼主| 龙荡乾坤 发表于 2016-3-18 11:55 | 显示全部楼层
gmm2015 发表于 2016-3-18 11:52
那估计是硬件问题。temp1怎么接的?
去掉R28、把C35改成电阻,看看有没有问题?
...

temp1直接加到单片机的AD口。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

19

帖子

0

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