第二篇以德州儀器(TI)的高速ADC芯片——ads52j90為例,介紹完了4線SPI配置時(shí)序。本篇將以該芯片SPI結(jié)構(gòu)為例,具體介紹如何利用verilog實(shí)現(xiàn)4線SPI配置時(shí)序。
無(wú)論實(shí)現(xiàn)讀還是寫(xiě)功能,都先要提供SCLK。假如FPGA系統(tǒng)工作時(shí)鐘40MHz,我們可以利用計(jì)數(shù)器產(chǎn)生一個(gè)n分頻的時(shí)鐘作為SCLK,本例中n取8,SCLK頻率5MHz。SCLK產(chǎn)生的代碼如下:
SCLK時(shí)鐘有了,接下來(lái)我們建立一個(gè)狀態(tài)機(jī)實(shí)現(xiàn)讀和寫(xiě)功能:
初始化狀態(tài)的下一個(gè)狀態(tài)就是寫(xiě)寄存器操作了,每次SCLK的上升沿寫(xiě)入數(shù)據(jù):
寫(xiě)完一個(gè)寄存器參數(shù),CSB先拉高。接下來(lái)在進(jìn)入下一個(gè)狀態(tài),本篇例子下一個(gè)狀態(tài)的操作是讀取對(duì)應(yīng)寄存器地址的數(shù)據(jù)。我們首先需在SCLK的上升沿寫(xiě)入8bit的寄存器地址,接下來(lái)在SCLK的下降沿讀取16bit的數(shù)據(jù)。
到此,讀寫(xiě)操作都完成了。代碼上的注釋可以便于大家理解,大家還可以仿真看一下波形加深理解。
-
Verilog
+關(guān)注
關(guān)注
28文章
1351瀏覽量
110163 -
SPI
+關(guān)注
關(guān)注
17文章
1711瀏覽量
91781 -
ADC芯片
+關(guān)注
關(guān)注
3文章
78瀏覽量
20350
原文標(biāo)題:FPGA通過(guò)SPI對(duì)ADC配置簡(jiǎn)介(四)---Verilog實(shí)現(xiàn)4線SPI配置
文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論