微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > DAC8734输出不变

DAC8734输出不变

时间:10-02 整理:3721RD 点击:

每一个发送的数据时序没问题。但DAC8734只能把第一个接收到的数字数据输出,我用的是TI公司自己的DAC8734EVM。可能有哪些原因导致的呢?是上电顺序的原因吗?

这个情况更像是时序有问题,有用示波器检查过时序吗? 你的LDAC是怎么样更新的?

LDAC我设置的一直是低电压,所以LDAC应该没问题。

SPITransmitData1(SOC_SPI_1_REGS,data1);
SPITransmitData1(SOC_SPI_1_REGS,data2);
SPIDat1Config(SOC_SPI_1_REGS,SPI_DATA_FORMAT0,0x01);

上面是我的发送语句,这三句循环执行。我把DSP的SP配置成12位的,两个发送语句是24位。然后拉高CS。循环发送时的时序如图。

 I

这个时序看起来是没问题的!SCLK的时钟速率有多快?

有没有测试过写入寄存器,然后读出该寄存器,这样读出的数据是否正常呢?

程序中的第三句是干嘛的?

能否将你的测试结果发上来看看,比如说发送什么数据,实测结果是什么?

SCLK在4MHZ,第三句是用来拉高CS的。在双极模式下,发的数是

1.      32768  (data1=72,data2=0)            测试结果是-10

2.      49152(data1=76,data2=0)           测试结果是-5

3.      65535(data1=79,data2=4095)    测结果是0

这都没问题,只发一个数得到结果是对的。连续发就只显示第一个数。

我想问一下,用SPI控制DAC连续发送的程序框架是什么?

你的系统中只有一片DAC8734吧?

LDAC一直拉低的情况下,DAC 连续在CS拉高的时候更新,只要你的输入是有效的,输入后将CS拉高,就可以更新了。

你的程序,能够连续正确地读写寄存器吗?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top