国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

數字電壓表設計教程之使用FPGA實現SPI協議通訊

友晶FPGA ? 來源:友晶FPGA ? 2025-10-07 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

代碼解析

LTC2308通過一個標準4線SPI數字接口進行通信。LTC2308模數轉換芯片有8個ADC通道和12位的分辨率,輸入信號時鐘頻率范圍不超過500KHz,按照Nyquist采樣定理則建議輸入信號在250KHz以下。

以下是DE10-Standard開發板上的LTC2308電路:

c92816c8-8c65-11f0-8c8f-92fbcf53809c.png

從電路圖可知,LTC2308的COM引腳接GND,代表當前DE10-Standard開發板上的LTC2308被固定為單極性輸入。

LTC2308的SPI協議時序圖如下:

c989f690-8c65-11f0-8c8f-92fbcf53809c.png

LTC2308控制模塊(adc_ltc2308.v)框圖如下:

c9ea0724-8c65-11f0-8c8f-92fbcf53809c.png

信號列表如下:

ca443168-8c65-11f0-8c8f-92fbcf53809c.png

模塊參數設計:

DE10-Standard開發板手冊(DE10-Standard_User_manual.pdf)提到如果想設置采樣率100Ksps,只需設置tHCONVST 為 320即可。接下來看看320這個數值是如何計算出來的。

根據LTC2308數據手冊我們知道其最高采樣率是500ksps, SCK最高能達到40MHz, tCONV 的典型值是1.3 us,最大值是 1.6 us。100Ksps的時間周期是10us,40MHz的時間周期是25ns。一次整個過程(包括轉換和采樣)要占用10us/25ns=400 個周期。1.6us/25ns= 64, 那么tCONV 最多占用64個時鐘周期。

caa64cb8-8c65-11f0-8c8f-92fbcf53809c.png

根據時序圖和代碼來看,64+12+320=396大約是400 。

adc_ltc2308.v代碼里面參數設定如下:

cb03b56a-8c65-11f0-8c8f-92fbcf53809c.png

代碼詳解:

一旦檢測到觸發信號measure_start的上升沿,adc_ltc2308 模塊的系統復位信號就置0:

cb62783e-8c65-11f0-8c8f-92fbcf53809c.png

設計一個計數器,對LTC2308的一次完整轉換和采集過程所需的時鐘周期數進行數節拍:

cbba2c96-8c65-11f0-8c8f-92fbcf53809c.png

輸出ADC_CONVST信號(也就是標記出tWHCONV時間段):

cc126b7c-8c65-11f0-8c8f-92fbcf53809c.png

輸出SCK時鐘,ADC_SCK周期為40MHz,但每一次只有12個周期輸出,其他時間輸出低電平0 :

cc6f7fec-8c65-11f0-8c8f-92fbcf53809c.png

在clk下降沿時刻,將轉換完成的數據寫入到到寄存器中:

ccc84f14-8c65-11f0-8c8f-92fbcf53809c.png

measure_done是一次采集完成標志,每次檢測到LTC2308的觸發信號上升沿時measure_done信號歸0,當一次采集完成后置1:

measure_done是一次轉換+傳輸+采樣完成的標志,measure_done信號在開始新一輪采樣后清0,當傳輸完成后置1:

cd2131b0-8c65-11f0-8c8f-92fbcf53809c.png

reset_n、clk_enable、measure_done、ADC_CONVST和ADC_SCK信號波形標出如下:

cd7c7e6c-8c65-11f0-8c8f-92fbcf53809c.png

根據輸入(measure_ch)的通道選擇不同的配置字存儲到寄存器config_cmd:

cdd7c736-8c65-11f0-8c8f-92fbcf53809c.png

然后根據LTC2308的時序圖標記出配置字的三個階段(三個狀態):config_init(配置初始化時間段) 、config_enable(可配置時間段) 和 config_done(配置完成時間段)。

config_init(配置初始化時間段):初始狀態下,將配置字的高字節賦給ADC_SDI

config_enable(可配置時間段):將配置字剩余的5個bit逐個賦給ADC_SDI

config_done(配置完成時間段):配置完成階段將0賦給ADC_SDI

ce390f46-8c65-11f0-8c8f-92fbcf53809c.png

ce9a4022-8c65-11f0-8c8f-92fbcf53809c.png

打開~DE10_Standard_ADCstp1.stp 文件(關于Signaltap調試工具的使用請參考之前的推文:SDRAM讀寫),采樣時鐘設置的是PLL outclk_0輸出的100M,ADC_CONVST作為觸發信號:

cef44770-8c65-11f0-8c8f-92fbcf53809c.png

可得到 LTC2308控制模塊(adc_ltc2308.v)內部信號的波形如下。

測量11次,第一次的數據忽略, 取后面10次的數據:

cf5d2dc6-8c65-11f0-8c8f-92fbcf53809c.png

ADC_CLK 輸出12個時鐘周期:

cfbb2a84-8c65-11f0-8c8f-92fbcf53809c.png

若 stp1.stp 文件采樣時鐘設置為PLL outclk_1輸出的40M,則波形細節如下:

ADC_CONVST占用4個時鐘周期(tick=0、1、2、3):

d017cce4-8c65-11f0-8c8f-92fbcf53809c.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1660

    文章

    22408

    瀏覽量

    636203
  • 接口
    +關注

    關注

    33

    文章

    9519

    瀏覽量

    157014
  • adc
    adc
    +關注

    關注

    100

    文章

    7511

    瀏覽量

    555905
  • 引腳
    +關注

    關注

    16

    文章

    2111

    瀏覽量

    55680
  • SPI協議
    +關注

    關注

    0

    文章

    24

    瀏覽量

    8833

原文標題:05-基于FPGA和LTC2308的數字電壓表設計-用FPGA實現SPI協議通訊

文章出處:【微信號:友晶FPGA,微信公眾號:友晶FPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于FPGA和LTC2308模數轉換芯片的數字電壓表設計

    通過FPGA對模數轉換芯片(LTC2308)的采樣控制,實現一個簡易的數字電壓表。
    的頭像 發表于 08-16 08:58 ?5580次閱讀
    基于<b class='flag-5'>FPGA</b>和LTC2308模數轉換芯片的<b class='flag-5'>數字</b><b class='flag-5'>電壓表</b>設計

    源碼系列:基于FPGA數字電壓表(AD)設計

    今天給大俠帶來基于FPGA數字電壓表設計,附源碼,獲取源碼,請在“FPGA技術江湖”公眾號內回復“數字
    發表于 05-28 17:29

    基于Labview串口通訊的虛擬數字電壓表的設計

    基于Labview串口通訊的虛擬數字電壓表的設計
    發表于 09-04 13:47

    版主 你好,我在論壇查到FPGA數字電壓表的設計已經過期了。

    版主你好,我在論壇查到FPGA數字電壓表的設計已經過期了。能不能重新發一份FPGA數字電壓表
    發表于 04-08 14:42

    請問如何利用CPLD實現智能數字電壓表的設計?

    如何利用CPLD實現智能數字電壓表的設計?數字電壓表系統是如何組成的?其工作原理是什么?如何實現
    發表于 04-13 06:07

    怎么利用FPGA實現數字電壓表的設計

    怎么利用FPGA實現數字電壓表的設計?
    發表于 05-06 10:19

    數字電壓表的VHDL設計與實現

    數字電壓表的VHDL設計與實現 介紹數字電壓表的組成及工作原理,論述了基于VHDL語言和FPGA
    發表于 10-12 19:14 ?2186次閱讀
    <b class='flag-5'>數字</b><b class='flag-5'>電壓表</b>的VHDL設計與<b class='flag-5'>實現</b>

    數字電壓表的設計

    數字電壓表的設計 設計內容與要求: 1)設計數字電壓表電路;要求直流電壓測量范圍:0V~1.999V,0V~19.99V, 0V~199
    發表于 05-24 18:10 ?5890次閱讀
    <b class='flag-5'>數字</b><b class='flag-5'>電壓表</b>的設計

    電壓表protues仿真 基于51數字電壓表仿真設計 電壓表程序

    電壓表protues仿真 基于51數字電壓表仿真設計 電壓表程序設計
    發表于 01-14 22:32 ?242次下載

    基于LabVIEW8.2的虛擬數字電壓表的設計和實現

    。對虛擬數字電壓表的設計和實現進行了詳細描述,包括基于LabVIEW 8.2的虛擬信號發生器的實現過程,它能產生正弦、方波、三角波及由輸入數學公式確定的復雜自編輯波形。最后,對設計的虛
    的頭像 發表于 08-13 08:08 ?8575次閱讀
    基于LabVIEW8.2的虛擬<b class='flag-5'>數字</b><b class='flag-5'>電壓表</b>的設計和<b class='flag-5'>實現</b>

    FPGA數字電壓表的程序資料免費下載

    本文檔的主要內容詳細介紹的是FPGA數字電壓表的程序資料免費下載。
    發表于 02-26 16:26 ?34次下載
    <b class='flag-5'>FPGA</b><b class='flag-5'>數字</b><b class='flag-5'>電壓表</b>的程序資料免費下載

    如何使用FPGA實現數字電壓表的設計

    :采用 EDA(電子設計自動化)技術和 FPGA(現場可編程門陣列)芯片設計數字電壓表。 整個設計采用 VHDL由 ADC0809轉換控制模塊、數據轉換模塊、譯碼模塊組成。并在 MAX +PLUSⅡ 下進行軟件編程
    發表于 04-28 08:00 ?11次下載
    如何使用<b class='flag-5'>FPGA</b><b class='flag-5'>實現</b><b class='flag-5'>數字</b><b class='flag-5'>電壓表</b>的設計

    基于FPGASPI協議及設計實現

    基于FPGASPI協議及設計實現博主微信:flm13724054952,不懂的有疑惑的也可以加微信咨詢,歡迎大家前來投稿,謝謝!引言介紹在電子通信領域里采用的通信
    發表于 11-05 19:05 ?24次下載
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>SPI</b><b class='flag-5'>協議</b>及設計<b class='flag-5'>實現</b>

    數字電壓表的原理與特點

    數字電壓表(DVM,也稱為數字多用表或簡稱DMM)是現代電子測量領域中不可或缺的一種測量儀器。與傳統的模擬電壓表相比,數字
    的頭像 發表于 05-21 16:54 ?5004次閱讀

    數字電壓表概述_數字電壓表的作用

    數字電壓表(Digital Voltmeter,簡稱DVM)是一種采用數字化測量技術,將連續的模擬量轉換成不連續、離散的數字形式并加以顯示的電子儀器。以下是對
    的頭像 發表于 01-28 14:14 ?2893次閱讀