Xilinx Spartan 6 驱动ADS1278/4

本文详细介绍了如何使用Xilinx Spartan 6 FPGA驱动ADS1278/4模拟信号输入芯片,重点讨论了ADS1278/4的特性、接口配置以及在FPGA中实现Frame-Sync模式通信的Verilog代码。通过设置不同的工作模式和电源控制,实现了对多个通道的模拟信号采集。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Spartan6驱动ADS1278/4,编译环境为ISE12.2,仿真为isim。

以下为ADS1278/4的引脚图:


个人总结ADS1278/4的特征:

ADS1278/4在芯片设计时,去掉了ADS1278/4的内部寄存器,对于ADS1278/4的工作方式的配置不需要通过通信的方式进行,直接通过IO的电平配置,达到预期的效果。

Ainp1-Ainn1到Ainp8-Ainn8为模拟信号输入端。

CLK:                   ADS1278/4的主时钟输入端

DIN:                    在一般的情况下是没有用的,在多片级联的时候才能用的到。

SCLK:                 ADS1278/4通信时用到的时钟输入端

DRDY/FSYNC:    ADS1278/4通信时数据发送使能端口。

DOUT1-DOUT7:   ADS1278/4的数据输出端

SYNC:               从新启动数据转换的端口,当SYNC为低时,AD转换停止。

CLKDIV:               ADS1278/4主时钟的选择端

//--------------------------------------------------------------------------------------//

MODE0:  MODE1:

工作模式选择:    00:High-Speed

                           01:High-Resolution

                           10:Low-Power

                           11:Low-Speed

//--------------------------------------------------------------------------------------//

Test0:

Test1:          测试用的引脚

//--------------------------------------------------------------------------------------//

PWDN1- PWDN7:关掉相应AD通道的电源,低电平有效,为了降低功耗。

//--------------------------------------------------------------------------------------//

Format0:

Format1:

Format2:

通信模式选择:

000:SPI                   TDM          Dynamic

001:SPI                   TDM          Fixed

010:SPI                   Discrete      —

011:Frame-Sync      TDM          Dynamic

100:Frame-Sync      TDM          Fixed

101:Frame-Sync      Discrete     —

110:Modulator          —             —

//--------------------------------------------------------------------------------------//

TDM模式: time division multiplexed

Fixed 模式:Fixed-Position Data:所有的信号输出在一根数据线上,即DOUT1.


 Dynamic 模式:DynamicPosition Data不发送相应关掉的电源通道的数据。


如图:通道1与3电源被关断,所以数据不发送。

最终IO的选择:

Format0:         1

Format1:         0

Format2:         1    Frame-Sync 数据发送模式

//--------------------------------------------------------------------------------------//

Test0:                        0

Test1:                        0

//--------------------------------------------------------------------------------------//

MODE0:                    0

MODE1:                    0            高速模式

//--------------------------------------------------------------------------------------//

PWDN1:          1    开启1、2、3通道

PWDN2:          1

PWDN3:          1

PWDN4:          0

PWDN5:          0

PWDN6:          0

PWDN7:          0

//--------------------------------------------------------------------------------------//

 

ADS1274与FPGA的通信:

此次设计为Frame-Sync模式,时序图为下图:


时序制作时需要注意以下几点:

1.          FSYNC为高电平启动数据传输, SCLK的第一个低电平时,AD1274准备第一个数据,在FSYNC为高电平后的SCLK的第一个上升沿取第一个数据。

2.          FSYNC的高电平必须大于一个SCLK的时钟周期

3.          FSYNC的周期必需大于CLK256倍,且小于2560倍。这个一定要注意,开始的时候就是因为这个导致数据出错。

4.          SCLK为必须为CLK1

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值