<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 牛人業(yè)話(huà) > 小梅哥和你一起深入學(xué)習FPGA之DAC驅動(dòng)

小梅哥和你一起深入學(xué)習FPGA之DAC驅動(dòng)

作者: 時(shí)間:2015-08-05 來(lái)源:網(wǎng)絡(luò ) 收藏

  本實(shí)驗中,我們使用來(lái)驅動(dòng)了一片芯片TLC5620,該芯片的特性如下所示:

本文引用地址:http://dyxdggzs.com/article/278347.htm

  TLC5620特性:

  4路8位電壓輸出;

  單電源5V供電;

  串行接口;

  參考電壓輸入高阻;

  可編程的1次或2次輸出范圍;

  同時(shí)更新的能力;

  內部自帶上電復位功能;

  低功耗;

  半緩沖輸出。

  小梅哥設計的該芯片的驅動(dòng)模塊的接口如下所示:

  

 

  各個(gè)端口定義如下:

  以下是代碼片段:

  input Clk;

  input Rst_n;

  input Do_DA; /*使能單次轉換*/

  input [10:0]Data;/*{Addr1,Addr0,Range,Data_bit[7:0]}*/

  output reg _Dout; /*數據線(xiàn)*/

  output reg DAC_Clk; /*DAC時(shí)鐘線(xiàn),最高速度1M*/

  output reg DAC_LDAC; /**/

  output reg DAC_LOAD; /**/

  output reg DA_Done; /*單次轉換完成標志信號*/

  該芯片提供了類(lèi)似于SPI的數字接口,因此,我們只需要使用該接口與芯片進(jìn)行通信,再配合LOAD和LDAC兩個(gè)控制線(xiàn),即可實(shí)現對該DAC芯片的控制。TLC5620一次轉換的操作時(shí)序如下:

  

 

  圖1 TLC5620單次轉換時(shí)序圖

  TLC5620每次寫(xiě)入的數據為11位,其中前兩位為DAC選擇位A1、A0,通過(guò)不同的組合可以選擇不同通道的DAC,具體分配為:

  

 

  表1 DAC通道選擇位與對應通道關(guān)系

  第三位是電壓輸出增益位,0代表不變,1代表兩倍,當設定參考電壓為2.5V時(shí),取這一位為1就可以得到最高5V的輸出電壓。后面8位是數據位,其中第四位是數據的最高位。對于TLC5620的輸出電壓公式是:

  VO=VREF ×CODE/256×(1+RNG)

  VREF是參考電壓,CODE是待轉換的8位二進(jìn)制代碼,RNG是增益倍數。

  寫(xiě)入數據時(shí),首先LOAD和LDAC寫(xiě)高電平,這樣在CLK的每個(gè)下降沿寫(xiě)入的每位數據被鎖存到DATA端,當11位數據傳送完畢后,拉低LOAD,芯片根據前兩位數據,判斷是哪一路DAC通道,然后將8位數據移入相應的通道,進(jìn)行DA轉換,這時(shí)拉低LDAC,再拉高LDAC,就可以再下次轉化之前,保持此次的模擬輸出。

  TLC5620正常工作時(shí)的具體電壓和時(shí)間參數如下表所示,通過(guò)該表,可知該芯片串行數字接口的時(shí)鐘信號(CLK)最高為1MHz。該參數將作為我們采用產(chǎn)生TLC5620數字接口時(shí)鐘的依據。同時(shí),還有輸入數據建立時(shí)間tsu(data-clk)為50ns,即,數據送出,到能夠被TLC5620正常讀取,至少需要50ns,因此FPGA單位數據輸出保持時(shí)間不得少于50ns。tv(data-clk)為時(shí)鐘下降沿到來(lái)后多久時(shí)間數據線(xiàn)上的數據才能被芯片內部采集,該時(shí)間確定了,時(shí)鐘下降沿出現多久后,數據線(xiàn)上的數據可以被更新。tsu(LOAD-LDAC)為L(cháng)OAD的上升沿到LDAC下降沿的建立時(shí)間,這里最小為0ns,因此忽略,即兩者同時(shí)發(fā)生即可。tw(LDAC)為L(cháng)DAC低電平所需的最短時(shí)間,為250ns。

  

  表2 TLC5620關(guān)鍵參數

  通過(guò)對TLC5620一次完整轉換的時(shí)序進(jìn)行分析,列出以下序列機對應的序列點(diǎn):該序列機總共包含26個(gè)點(diǎn),其中,當Cnt1=0(ST0)時(shí),為空閑態(tài),ST1—ST22為數據發(fā)送狀態(tài),ST23時(shí)拉低LOAD,即將數據加載入對應通道的DAC中,ST24時(shí)釋放LOAD,同時(shí)拉低LDAC,以產(chǎn)生LDAC的下降沿,將對應通道的模擬輸出保持住。ST25拉高LDAC,完成一次轉換。

  表3 TLC5620單次轉換控制序列機

  序列機的計數器計數條件如下

  表4 TLC5620序列機計數器計數條件

fpga相關(guān)文章:fpga是什么


路由器相關(guān)文章:路由器工作原理


路由器相關(guān)文章:路由器工作原理


塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: FPGA DAC

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>