OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 12635|回复: 17

dac输出信号,adc接受信号

[复制链接]

3

主题

12

帖子

1

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2011-5-17
在线时间
0 小时
发表于 2011-7-24 21:15:26 | 显示全部楼层 |阅读模式
 各位南来的,北往的老大,我做了一个dac输出正弦波,然后用adc接受的小程序。
dac输出很正常,1024个数据,最小值0,最大值4095,刚好正弦的一个周期,示波器也监视到了波形,
用adc接受的时候出了问题,接收到的也是正弦波,最大值只有3720,最小值是300,不晓得怎么回事,
那位大侠给解释下撒
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2011-7-24 21:32:45 | 显示全部楼层
DAC输出0的时候,DAC输出口的电压是多少伏?
DAC输出4095的时候,dac输出口的电压又是多少伏?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

12

帖子

1

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2011-5-17
在线时间
0 小时
 楼主| 发表于 2011-7-24 21:46:23 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
因为不断变化,没有把数据固定下来测,我把输出速度放慢后,用万用表测了下,可观察到的最小值是0.006v,最大值是3.270v
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2011-7-24 21:54:58 | 显示全部楼层
根据这两个值,那你可以估算出来,adc的读数应该是多少了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

12

帖子

1

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2011-5-17
在线时间
0 小时
 楼主| 发表于 2011-7-24 23:35:41 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
min=7,max=4057,不对,群里有人跟我聊过这个

等待(59081197) 21:41:52 
有可能采样前型号没处理,运放输出不加负电压,输出不0伏的,还有电源有稳波干扰,REF基准电压不稳,所以接受到的只是从200到3700的,实际电路很难接受到0到4905的 
听海(584025175) 21:47:28 
因为不断变化,没有把数据固定下来测,我把输出速度放慢后,用万用表测了下,可观察到的最小值是0.006v,最大值是3.270v 
 
听海(584025175) 21:47:43 
万用表响应比较慢了 
听海(584025175) 21:48:10 
不过按照这个比例来看,误差也应该小于1%的 
听海(584025175) 21:54:34 
难道是我连接用的导线电阻太大了? 
等待(59081197) 21:57:36 
不知道你的硬件是如何搭建的,具体也不清楚,一般是器件自身性能有关,到达最大值是3.270v时,不一定4905,当489X是就到了3.270v,所以后面不断的加到4905之间,电压就不变了 
听海(584025175) 21:58:19 
硬件是火牛的板子 
等待(59081197) 22:03:09 
火牛的板子我没有哈,你断开ADC采样,直接用表测,看DAC输出是否是0V~3。3V,最好用彷真器,单步调
 
听海(584025175) 22:03:34 
嗯,测了 
听海(584025175) 22:03:41 
基本上是 
听海(584025175) 22:04:01 
0.005到3.270 
等待(59081197) 22:06:39 
你的电路是DAC输出脚串一电阻直接与ADC相连吗
 
听海(584025175) 22:07:13 
没有,一根导线接到adc去的 
听海(584025175) 22:07:29 
导线的电阻我测了一下,2.5欧 
听海(584025175) 22:07:34 
不算很高啦 
等待(59081197) 22:08:55 
还有你板子不通电,测输出是0。005V还是0。000V,表上4位表还是5位表 
听海(584025175) 22:12:17 
四位表 
听海(584025175) 22:12:42 
板子不通电?测哪里啊? 
听海(584025175) 22:12:46 
额,我得回去了 
听海(584025175) 22:12:50 
一会聊 
等待(59081197) 22:15:54 
那精度不够,表尾数自己都波动1~3的
 
等待(59081197) 22:30:14 
你是通过管脚直接输出,没有电路进行处理,STM32管脚内有上下拉电阻,采用推挽输出,就有漏电流,产生压降,所以管脚输出是不能做的0~3。3V的。况且DAC和ADC是12位的,以前我做的16位的ADC,再加正负电源,高精度稳压基准源,OP07运放,都达不到从0V开始的。 
等待(59081197) 22:37:46 
如果你要做高精度的DAC和ADC最好是用专用的DAC和ADC芯片,否则精度很难做的高的 
听海(584025175) 22:45:07 
哦 
听海(584025175) 22:45:34 
那也不至于差别这么大吧 
听海(584025175) 22:46:29 
我在dac与adc连接的情况下,用万用表测量了,最小是0.007,最大是3.267 
回复 支持 反对

使用道具 举报

3

主题

12

帖子

1

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2011-5-17
在线时间
0 小时
 楼主| 发表于 2011-7-26 11:13:42 | 显示全部楼层
采样时间不够,结贴,呵呵,谢谢原子老大了
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2011-7-26 12:28:05 | 显示全部楼层
原来是采样时间的问题.呵呵.你之前的采样时间是多少?
现在呢?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

12

帖子

1

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2011-5-17
在线时间
0 小时
 楼主| 发表于 2011-7-31 07:54:26 | 显示全部楼层
回复【7楼】正点原子:
---------------------------------
以前的忘记了,现在的是72MHz下,对TIM1 4分频,自动预装载300,采样周期71.5,大概是4us

而且之前用的是dma传输,进入dma中断,adc并没有停止,dma内存区域被不断重写,所以老是有问题,后来才发现
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2012-5-1
在线时间
0 小时
发表于 2012-5-1 14:27:55 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子大哥,我现在也在研究dac,我的问题是dac  out的两个口电压和我想的不一样啊,我输入0电压也不为o,大约0.06v,最大也上不去,达不到3.3v,我输入的数最大3300显示的电压2.988v,请问怎么回事,不胜感激啊!!!!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-5-1 14:53:22 | 显示全部楼层
回复【9楼】592412740:
---------------------------------
输出不能为0,貌似是ST DAC的一个bug.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
发表于 2014-11-17 15:09:50 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
DAC输出0,测量0.008V
DAC输出4095,4.95V
问题是,2048时,也是4.95V
而1024时,就是2.47V。

怎么回事???
小小蜗牛
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-11-17 20:32:18 | 显示全部楼层
回复【11楼】jiutianshenjian:
---------------------------------
能输出4.9V,说明的DAC离死不远了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
发表于 2014-11-18 13:28:14 | 显示全部楼层
回复【12楼】正点原子:
---------------------------------
前面有个,据说叫运放。有两个电阻
小小蜗牛
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-11-19 00:09:58 | 显示全部楼层
回复【13楼】jiutianshenjian:
---------------------------------
直接测试下3.3V的结果
就是DAC直接输出的结果。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
发表于 2014-11-19 08:08:08 | 显示全部楼层
回复【14楼】正点原子:
---------------------------------
当输出4095时,
测量DAC_OUT1电压:3.28V
测量DAC_OUT2电压:3.28V

当输出2047时,
测量DAC_OUT1电压:1.641V
测量DAC_OUT2电压:1.641V

当输出0时,
测量DAC_OUT1电压:0.002V
测量DAC_OUT2电压:0.002V
小小蜗牛
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-11-20 01:04:41 | 显示全部楼层
回复【15楼】jiutianshenjian:
---------------------------------
这不很正常么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2016-6-6
在线时间
16 小时
发表于 2016-10-27 11:12:52 | 显示全部楼层
看到楼主是11年的  前辈  我也遇到这个问题。但是我采样周期都设为239.5了 最低为0.12V。可以的话能否发下程序 不胜感激。另外我出的DAC正弦波 示波器没正常波形显示,但用万能表却能测得幅值正常变化。
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2017-1-8
在线时间
2 小时
发表于 2017-1-8 19:32:12 | 显示全部楼层
speedfly 发表于 2016-10-27 11:12
看到楼主是11年的  前辈  我也遇到这个问题。但是我采样周期都设为239.5了 最低为0.12V。可以的话能否发下 ...

我也遇到类似问题了,你解决了吗?可否发一下程序
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-29 06:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表