打印

请教: AD558应用中遇到的一个怪异问题

[复制链接]
1278|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wf.yang|  楼主 | 2013-11-28 08:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 wf.yang 于 2013-11-28 08:35 编辑

当输入数字量为奇数时,输出模拟电压是正确的;

当输入数字量为偶数时,输出模拟电压比正确值偏小。多数情况比正确值低一个LSB的电压,有时低几个LSB的电压;

特别是输入数字量为4, 8, 16, 32, 64, 128时,输出模拟电压均为2个LSB对应的模拟电压。

现在,完全可以排除数据线交叉错误、单片机发送错误。因为在0~255之间的每个输入数据,在AD558的数据线上均测量到正确的八位数据。

也排除了万用表测量错误,因为在能够正确转换的输入数据情况下,每个输出模拟电压正好对应相应输入数据。

曾经怀疑AD558芯片存在问题,换了三片,都存在同样的问题。

请求老师指点,感谢感谢!

连续输入0~255时,得到的锯齿波如下(输入为4、8时,不太好画,没有画出,只画出了对应16、32、64、128的情形;偶数输入时错误输出造成的毛刺也没画出):

相关帖子

沙发
大前门| | 2013-11-28 09:20 | 只看该作者
具体情况不太了解,DAC/ADC内部基准源或相关电路在一定时刻的波动可能会造成missing code,基本上就是你遇到的现象。
我觉得可以试试在VCC上多加一些去耦,在CS,CE等数据线上串联电阻以减缓上升下降沿和过冲,还可以试试改变数据传输锁定等的时序。

使用特权

评论回复
板凳
wf.yang|  楼主 | 2013-11-28 10:08 | 只看该作者
好!

谢谢你!

使用特权

评论回复
地板
wf.yang|  楼主 | 2013-11-28 10:16 | 只看该作者
不可理解的是,电压波动造成的影响,也太有规律了。

使用特权

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

本版积分规则

34

主题

836

帖子

2

粉丝