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,中途肯定會遇到很多莫名其妙的問題,但一定要有耐心解決噢,終於可以鬆一口氣啦!	
發佈了15 篇原創文章 · 獲贊 5 · 訪問量 1411
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章