This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DAC80501: DAC80501 SPI通信

Part Number: DAC80501

DAC80501说明书中 SPI通信用法写的很简单,不像I2C那样写的详细,我想知道具体SPI发送指令的格式和用法

  • 您好,

    数据手册写的确实不详细,SPI通信时,需要看表4和表5中的命令格式,如下截图,其中表4的B23 ~B20都是0在表5中没有写,表5中是B19 ~B0,加上B23 ~B20的4个0,一共是24bits。

    要与DACx0501通信,使用与芯片选择引脚类似的/SYNC引脚。

    SPI通信时使用手册中图58 Valid write sequence 如下截图,进行24位传输,SYNC管脚的使用类似芯片的片选管脚

    例如,需要将8000h写入DAC DATA 寄存器。要访问寄存器,您需要发送命令位08h。对于其他位,您将发送80 00,总的需要发送的24bits是08 80 00,如下所示:

    SYNC充当芯片选择,数据在SCLK下降沿传输到设备中。

    如果哪里还有疑问请回复帖子

  • 收到,通信协议我了解了。目前还是无法设置DAC80501,麻烦帮我看下波形有没有问题?我发的是0x08AAAA

  • 通信期间,对应的SYNC的波形是怎样的?

    对于SPI模式操作,SYNC 在至少24个SCLK下降沿保持低电平,并且在SYNC 上升沿上寻址的DAC寄存器更新。但是,如果SYNC 在第24个SCLK下降沿之前拉高,则此事件将作为写入序列的中断。移位寄存器复位,写入序列被丢弃。数据缓冲区或DAC寄存器内容不会更新,操作模式也不会改变,如datasheet中图 58所示

  • 已测SYNC 远大于24个SCLK,波形没抓,我觉得发的数据没问题,但是DAC输出电压一直是0V,芯片也换了一个,TI原装的,还是没输出,不知道问题出在哪?

  • 麻烦帮我看下波形的毛刺,会不会影响通信

  • SYNC对SCLK之间也存在一定的时序要求,看下是否满足:

    对于毛刺,不太确定是否会影响通信,您在SDIN信号线上串联22Ω或者47Ω的电阻,看看是否对毛刺有所改善?

    对于没有输出,您的寄存器是怎样配置的? 特别是REF-DIV bit的配置,因为它的值决定了您输入的基准电压是否在合适的范围内。

  • SYNC对SCLK之间也存在一定的时序要求,具体要求是什么?

  • 您可以查看datasheet 图1 ,如上截图,对应的时间参数在datasheet的时序要求表格中,如下截图:

x 出现错误。请重试或与管理员联系。