FPGA配置高速ADC篇(9)_ADS52j90四线SPI配置实战

FPGA配置高速ADC篇(1)_什么是SPI-CSDN博客

FPGA配置高速ADC篇(2)_4线SPI配置时序分析-CSDN博客

FPGA配置高速ADC篇(3)_3线SPI配置时序分析-CSDN博客

FPGA配置高速ADC篇(4)_基于verilog的4线SPI实现-CSDN博客

FPGA配置高速ADC篇(5)_基于verilog的3线SPI实现-CSDN博客

FPGA配置高速ADC篇(6)_AD9639四线SPI配置实战-CSDN博客

FPGA配置高速ADC篇(7)_AD9639三线SPI配置实战-CSDN博客

FPGA配置高速ADC篇(7)_AD9639三线SPI配置实战-CSDN博客

FPGA配置高速ADC篇(9)_ADS52j90四线SPI配置实战-CSDN博客

FPGA配置高速ADC篇(10)_ADS528X_SPI配置实战-CSDN博客

*******获取工程代码,加V博主:FPGA_GO*******

前几篇博主小飞介绍了ADI公司的ADC和FPGA的3线、4线SPI配置方法,本篇博主将继续以TI公司的多通道高速ADC—ADS52J90为实例,向大家演示FPGA是如何通过SPI接口向该ADC读写寄存器配置数据的。

如下图所示为ADS52J90的功能框图,其为8/16/32通道、10/12/14bit采样精度、65/80/100 MSPS的多通道高速ADC,且其SPI接口只为4线模式:

本篇实现的方式同样采用的是kintex7系列的FPGA,操作软件为vivado2017.4。如下图所示为博主设计的基于该款ADC的8/16/32通道FPGA数据采集系统:

TI的该款ADC的SPI写配置时序图如下所示:

简单描述就是SEN为低电平期间,SCLK的上升沿时,SDIN依次串行写入8bit的地址和16bit的数据,经过24个SCLK周期完成一次SPI写操作。

其 SPI读配置时序图如下所示:

简单来说,就是在在SEN低电平期间,SCLK上升沿时,SDIN写入8bit的地址和16bit任意数,共24个SCLK周期完成。而从第9个SCLK上升沿到第24个SCLK上升沿期间,FPGA从SDOUT依次获取16bit的寄存器数据。

本次的4线配置逻辑的顶层逻辑接口如下图所示:

本例程实现了76个寄存器的写操作以实现ADC的正常操作,以及11个寄存器的读操作来验证写操作的正确性,配置个数可以任意改动,只要改变Wr_n这个写参数和Rd_n读参数个数即可,如下图所示:

如下图所示为写操作的逻辑,只需要两个状态即可循环完成76个的寄存器的写操作:这里的操作方法和前几篇所说的完全一样。

如下图所示为读操作的逻辑,同样只需要两个状态即可,然后一直循环11次:

如下图所示为读11个寄存器的时序图,大家对照datasheet就可以发现,最终咱们读到的寄存器值与预期值完全一致,配置成功!

咱们再看看逻辑实现的写过程的具体时序图吧,下图所示为写某个寄存器的实际时序:

咱们再看读某一个寄存器的时序图:

本篇的说明很少,主要是想告诉大家,无论是ADI还是TI公司的adc配置,其实都是一样的,代码都相同,只不过这两家公司的数据定义格式有区别罢了。TI公司的3线SPI配置其实和前几篇所说的是一样的,本人就不再另篇说明了~

至此,咱们最常用的两家公司ADC的SPI配置就完全的介绍完了,应该来说,对所有需要SPI配置的高速ADC来说都适合!

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值