打印

硬件BUG???:启用AD时PB10会有0.6-0.7V的电压

[复制链接]
2877|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lixun00|  楼主 | 2012-6-11 11:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 lixun00 于 2012-6-11 11:35 编辑

1.硬件
stm32rdt6.
确认硬件OK,无短路

2,软件

启用adc1,规则通道1--16(对应adc0-adc15),循环DMA传输
adc1-16对应管脚模拟输入,PB10输入浮空,下拉100K到地

启用pa,pb,pc,DMA1_CH1,ADC1外设时钟

其它外设未开

单步调试时,发现最后执行以下语句时
/* Start ADC1 Software Conversion */
ADC_SoftwareStartConvCmd(ADC1, ENABLE);

PB10会有0.61V左右的电压

不知是不是硬件BUG
沙发
lixun00|  楼主 | 2012-6-11 11:57 | 只看该作者
汗。
布线的原因。
因为这个电压精度要求非常低,布板的时候没和模拟工程师讲

结果。。。

模拟无小事啊

使用特权

评论回复
板凳
lai832| | 2012-6-11 12:41 | 只看该作者
以后标NET时,在NET里分清是A还是D,这样就明白了...也不担心忘了告诉别的同事.

使用特权

评论回复
地板
lixun00|  楼主 | 2012-6-11 13:49 | 只看该作者
同事是知道是A/D的,标号也标了
但是不执行
/* Start ADC1 Software Conversion */
ADC_SoftwareStartConvCmd(ADC1, ENABLE);

电压是0

内部肯定也是有关系的

使用特权

评论回复
5
airwill| | 2012-6-11 18:28 | 只看该作者
不应该的。内部要出现这样的问题,这芯片都不敢用了!

使用特权

评论回复
6
lixun00|  楼主 | 2012-6-13 08:52 | 只看该作者
我重复了以上动作,确实是打开A/D后电压为0.6V,没打开后为0V

不过后来发现有个硬件bug,下拉100k电阻虚焊。

但是打开A/D后电压为0.6V,没打开后为0V

这个在下拉电阻没焊上是正确的!

使用特权

评论回复
7
IJK| | 2012-6-13 10:12 | 只看该作者
本帖最后由 IJK 于 2012-6-13 10:13 编辑

把相应通道的采样时间延长,这种情况会改善、或消失。
记得ST有文档谈这个问题,这是 SAR ADC 的结构自身造成的【输入阻抗很大时,看上去通道之间有串扰】,并不是STM32 AD 独有的。

使用特权

评论回复
8
yinyangdianzi| | 2012-6-13 12:02 | 只看该作者
信猿哥,无BUG

使用特权

评论回复
9
jgphu| | 2012-6-13 15:13 | 只看该作者
你为什么要搞一个这么大的电阻,用10K试试。还有,你可以将其它的通道的AD停掉,单然将这个通道进行AD采样。

使用特权

评论回复
10
lixun00|  楼主 | 2012-6-14 15:25 | 只看该作者
没办法,要用到这个。

我是用万用表测量的!

使用特权

评论回复
11
figo20042005| | 2012-6-14 20:21 | 只看该作者
100K好像太大了吧,用表量下AD口的电压,再换10K的,量下,看是硬件原因,还是软件的

使用特权

评论回复
12
IJK| | 2012-6-15 10:11 | 只看该作者
很简单,把DMA部分注释掉,再看。

使用特权

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

本版积分规则

56

主题

683

帖子

3

粉丝