FPGA驱动AD7175-8 调试总结

一、AD7175-8介绍

		AD7175-8是一款比较新的ADC器件了,至今还没有找到完整的FPGA的驱动例程,从get新板到最终调试OK也花了快一个月的时间了,终于调试完成。当然,产品介绍在ADI官网上更加详细,我只是简单说几个比较重要,我们经常考虑的几个特点吧:
		通道扫描数据速率:50 kSPS
		可配置通道数:1-16个
		输出数据位宽:24位宽(最高位为符号位,剩下23位就都是数据位了,因此精度是相当高的)

二、调试过程

1.Verilog源代码链接:
		输入输出如下图所示:

在这里插入图片描述

2.使用介绍:
	fpga_clk_i:外部FPGA模块的主控时钟;
	adc_clk_i:将要输出给ADC器件的SCLK的数据传输时钟,即SPI时钟信号线,一般为20MHz;
	reset_n_i:复位信号;
	start_conversion_i:读取数据寄存器使能,即将该变量置1时,该模块将读取AD7175-8采样到的电压数值;
	dma_data_o:该变量32位宽,高8位为对应通道数值,低24位为采样到的电压数值;
	dma_data_rdy_o:读取数据寄存器完成信号线,读完后拉高,即表示dma_data_o中存储了电压数值;
	start_transmission_i:写寄存器使能,拉高有效;
	tx_data_i:寄存器的地址与配置数值;
	tx_data_rdy_o:一个寄存器配置完成信号,配置完后拉高,即表示该寄存器配置完成;
	start_read_i:读寄存器使能,高有效;
	rx_data_o:要读取的寄存器的地址;
	rx_data_rdy_o:寄存器读取完成信号,读取完成后拉高,即该数值中为要读取的寄存器地址;
	adc_sdo_i:来自ADC器件的SPI输入信号
	adc_sdi_o:给ADC器件的SPI输出信号
	adc_cs_o:SPI片选信号,低有效
	adc_sclk_o:SPI时钟信号
	sclk_cnt_o:给顶层输出的当前模块状态判断
3.调试过程:
小编建议,如下调试步骤:
    1.读懂上述代码的具体作用与功能;
	2.读取ADC器件的ID寄存器,若为3CDX,则表示时序无问题;
	3.写入寄存器,再读取写入的寄存器,若两者一致表示寄存器读写完全OK;
	4.配置单通道,并完成电压信号的采集
	5.配置多通道,完全Ok

小编也是花了一个多月的时间才调试OK,中途肯定会遇到很多莫名其妙的问题,但一定要有耐心解决噢,终于可以松一口气啦!	
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值