標(biāo)題: 單片機(jī)實(shí)現(xiàn)16位電阻分壓快速DAC電路 Multisim仿真原理圖 [打印本頁(yè)]

作者: hhh402    時(shí)間: 2022-6-14 23:44
標(biāo)題: 單片機(jī)實(shí)現(xiàn)16位電阻分壓快速DAC電路 Multisim仿真原理圖
單片機(jī)實(shí)現(xiàn)16位快速DAC,速度<1us。使用R-2R電阻分壓法實(shí)現(xiàn),16位DAC需要16個(gè)IO口,如果只需要8位就需要8個(gè)IO口。DAC精度與VCC電壓和電阻精度有關(guān),VCC必須使用線(xiàn)性穩(wěn)壓電源,電阻使用1%電阻。運(yùn)算放大器起到電壓跟隨的作用,也可以不要。

仿真原理圖如下(Multisim仿真工程文件可到本帖附件中下載)



R-2R電阻分壓DAC
速度快,1us,使用IO多
16位DAC,使用單片機(jī)16個(gè)IO口數(shù)模轉(zhuǎn)換
S1~S16就是16位2進(jìn)制數(shù)。比如1000000000000000就得到2.5000V
0000000000000111就得到457.739UV
Vout=二進(jìn)制數(shù)/65536*VCC

Multisim仿真電路: R-2R電阻分壓DAC16位.zip (295.95 KB, 下載次數(shù): 41)

作者: Y_G_G    時(shí)間: 2022-6-15 16:04
DAC要是能這么簡(jiǎn)單的想當(dāng)然的去設(shè)計(jì),人家DAC芯片就沒(méi)有有要了
作者: Hephaestus    時(shí)間: 2022-6-15 17:13
16位是65536,相對(duì)精度0.0015%,你那些0.1%的電阻只能用來(lái)%%。
作者: hhh402    時(shí)間: 2022-6-15 19:36
Y_G_G 發(fā)表于 2022-6-15 16:04
DAC要是能這么簡(jiǎn)單的想當(dāng)然的去設(shè)計(jì),人家DAC芯片就沒(méi)有有要了

會(huì)就簡(jiǎn)單,R-2R電阻分壓法實(shí)現(xiàn)DAC是成熟的方案,我只是整理出來(lái)而已,有仿真可以自己驗(yàn)證。
作者: hhh402    時(shí)間: 2022-6-16 00:17
Hephaestus 發(fā)表于 2022-6-15 17:13
16位是65536,相對(duì)精度0.0015%,你那些0.1%的電阻只能用來(lái)笑掉大牙。

16位DA,5V參考電壓,理論精度為5V/65536=76.29uV,使用1%電阻誤差是76.29UV*1%=0.7629uV。已經(jīng)足夠小,不是需要0.00115%誤差的電阻,市場(chǎng)上沒(méi)有怎么高精度的電阻,有也買(mǎi)不下起。
作者: wulin    時(shí)間: 2022-6-16 07:15
理想很豐滿(mǎn),現(xiàn)實(shí)很骨感。仿真結(jié)果只能代表基本原理沒(méi)有問(wèn)題。實(shí)際電路的效果未必優(yōu)于簡(jiǎn)單的PWM DAC。
作者: hhh402    時(shí)間: 2022-6-16 12:31
R-2R電阻分壓法實(shí)現(xiàn)DAC與PWM DAC的區(qū)別,電阻分壓法特點(diǎn)是快,IO口輸入數(shù)字量直接出模擬量,速度<1us,缺點(diǎn)是需要IO口多,PWM DAC就是把方波通過(guò)n級(jí)低通濾波得到直流電壓,通過(guò)時(shí)間換取精度,如果對(duì)時(shí)間要求低,使用比較大的電容電阻也可以得到紋波很小的直流電,優(yōu)點(diǎn)是只需要1個(gè)IO口。下面談?wù)劸龋?nbsp; 為了提高輸出能力一般都需要用運(yùn)放做電壓跟隨或放大,加入運(yùn)放會(huì)帶來(lái)額外的誤差,誤差在幾微伏到幾毫伏。這么大的誤差還能用嗎?為了減少誤差,下面談?wù)勑?zhǔn)。IO口輸出1000得到一個(gè)電壓用6位半萬(wàn)用表測(cè)量電壓為77.5899mv(理論電壓=5000mv*1000/65536=76.2939)誤差=1.296mv的確太大。再用IO口輸出5000得到一個(gè)電壓用6位半萬(wàn)用表測(cè)量電壓為382.769mv(理論電壓=5000mv*5000/65536=381.470)誤差=1.299mv。這就得到兩組準(zhǔn)確的數(shù)據(jù):數(shù)字1000對(duì)應(yīng)77.5899mv,數(shù)字5000對(duì)應(yīng)382.769mv,1000到5000用插值法得到,V=77.5899+(382.769-77.5899)/(5000-1000)*n=77.5899+0.076294775*n。數(shù)字2000對(duì)應(yīng)電壓=77.5899+0.076294775*2000=230.179mv,這個(gè)電壓誤差就很小了。再測(cè)量幾組數(shù)據(jù),10000、20000、30000、40000、50000、60000。數(shù)據(jù)越多誤差就越小。
作者: Hephaestus    時(shí)間: 2022-6-16 16:47
hhh402 發(fā)表于 2022-6-16 00:17
16位DA,5V參考電壓,理論精度為5V/65536=76.29uV,使用1%電阻誤差是76.29UV*1%=0.7629uV。已經(jīng)足夠小, ...

R1、R2誤差1%能造成多大精度損失?你這計(jì)算完全是小學(xué)妹畢業(yè)的水平。
作者: Y_G_G    時(shí)間: 2022-6-16 20:55
hhh402 發(fā)表于 2022-6-15 19:36
會(huì)就簡(jiǎn)單,R-2R電阻分壓法實(shí)現(xiàn)DAC是成熟的方案,我只是整理出來(lái)而已,有仿真可以自己驗(yàn)證。

你用仿真來(lái)說(shuō)話(huà)?
一,電阻精度直接影響最終輸出結(jié)果,計(jì)算方法并不是你說(shuō)的那樣,自己改變一下仿真電路的電阻值進(jìn)行仿真就知道了,精度是不可能達(dá)到0.7629uV的,不知道你的老師以前是不是教體育的
二,想要精度高,就得用貴的電阻,1%精度是肯定不行,最終的結(jié)果就是電阻的錢(qián)能買(mǎi)好多個(gè)DAC,這種電阻至少是3塊一個(gè)起步......
三,你有焊過(guò)實(shí)際的電路進(jìn)行過(guò)實(shí)際測(cè)量和理論對(duì)比嗎?如果沒(méi)有,那就是扯
作者: 名字不是重點(diǎn)    時(shí)間: 2022-6-16 21:01
p你這仿真的是典型的“逐次逼近”型DAC,最極端的時(shí)侯,需要對(duì)比32768次才能出結(jié)果,每一次都要設(shè)電壓、待穩(wěn)定,再讀取比較值、再獲取電壓值,你算一下,要多長(zhǎng)時(shí)間?
作者: hhh402    時(shí)間: 2022-6-17 00:10
樓上不懂不要亂說(shuō)虛心一點(diǎn),R-2R電阻分壓法實(shí)現(xiàn)DAC就是實(shí)現(xiàn)DAC的方法之一,不懂可以百度。這個(gè)方法不是我想出來(lái)的,我只是把它仿真出來(lái)給大家研究一下。網(wǎng)上介紹的就是使用1%電阻,精度足夠一般使用,其實(shí)運(yùn)算放大帶來(lái)的誤差更大,如果使用通用運(yùn)算放大器(比如LM358)誤差更大,用萬(wàn)用表校準(zhǔn)才可以減少誤差。10樓還是百度一下再說(shuō),R-2R電阻分壓法實(shí)現(xiàn)DAC特點(diǎn)就是速度快。
作者: 188610329    時(shí)間: 2022-6-17 01:12
你說(shuō),仿真出來(lái),大家研究一下,我就和你一起,紙上談兵的 “研究” 一下。
說(shuō)到快,我好奇問(wèn)一下,撇開(kāi)其他所有的不談,假定,你的仿真理論都能搬到現(xiàn)實(shí)中,并且成真,你打算用什么單片機(jī)來(lái)驅(qū)動(dòng)?
假定,一個(gè)總線(xiàn)8個(gè)IO,  那么16個(gè)IO,就是兩條總線(xiàn)。 那么,在驅(qū)動(dòng)的時(shí)候,就是兩條指令。兩條指令就有時(shí)間差,換句話(huà)說(shuō),你會(huì)先輸出一個(gè)不是你想要的電壓,也不是原本電壓的,中間電壓,之后再次給出正確值之后也是需要時(shí)間來(lái)穩(wěn)定的。而,你又寄希望于它的速度,真按你認(rèn)為的“速度<1us”來(lái)設(shè)計(jì), 那么,你這個(gè)“速度<1us” 所得到的結(jié)果,只是最快的速度得到一個(gè)錯(cuò)誤的電壓而已。

最后,你覺(jué)得如果,真的到實(shí)現(xiàn)你的預(yù)想目的,和直接弄個(gè)DAC芯片,究竟哪個(gè)更好?
作者: 名字不是重點(diǎn)    時(shí)間: 2022-6-17 09:04
hhh402 發(fā)表于 2022-6-17 00:10
樓上不懂不要亂說(shuō)虛心一點(diǎn),R-2R電阻分壓法實(shí)現(xiàn)DAC就是實(shí)現(xiàn)DAC的方法之一,不懂可以百度。這個(gè)方法不是我想 ...

我把DAC和ADC搞 混了
我這段是對(duì)于ADC來(lái)的
作者: hhh402    時(shí)間: 2022-6-17 09:06
的確有時(shí)間差,但是對(duì)輸出影響很小,想要快肯定要1T單片機(jī),常用24MHz主頻,刷新一次1/24us,正常的應(yīng)用輸出電壓都是連續(xù)變化的,也就是說(shuō)大部分時(shí)候高8位是相同的,刷新時(shí)先刷低8位,再刷高8位。實(shí)在是擔(dān)心會(huì)輸出錯(cuò)誤電壓可以在輸出端到地加一個(gè)小電容,比如102電容,這個(gè)電容越大輸出電壓越穩(wěn)定但是速度越慢,就看大家取舍,R-2R電阻分壓法實(shí)現(xiàn)DAC速度快是因?yàn)橹挥玫介_(kāi)關(guān)和電阻,理想情況下是不需要時(shí)間的,但實(shí)際電路會(huì)有寄生電容所以需要一點(diǎn)時(shí)間才能穩(wěn)定,這個(gè)時(shí)間與電阻大小有關(guān),10K,20K電阻可以做到速度<1us,相關(guān)資料網(wǎng)上有,STC8H系列單片機(jī)手冊(cè)也有相關(guān)介紹,我也是看到了R-2R電阻分壓法實(shí)現(xiàn)DAC這個(gè)方法通過(guò)仿真覺(jué)得可行,所以發(fā)出來(lái)與大家討論一下,這個(gè)“R-2R電阻分壓法實(shí)現(xiàn)DAC”真不是我設(shè)計(jì)的,仿真才是我自己畫(huà)的。想研究更細(xì)一些可以百度,也可以看看STC8H系列單片機(jī)手冊(cè)。
作者: hhh402    時(shí)間: 2022-6-17 09:20
名字不是重點(diǎn) 發(fā)表于 2022-6-17 09:04
我把DAC和ADC搞 混了
我這段是對(duì)于ADC來(lái)的

ADC的話(huà)16位只需要16次比較就出結(jié)果,不管什么電壓都是需要16次比較,12位ADC就需要12次比較,不存在極限情況,具體百度一下有詳細(xì)介紹。
作者: hhh402    時(shí)間: 2022-6-17 09:32
關(guān)于電阻精度問(wèn)題,1%足夠大多數(shù)應(yīng)用,3位半萬(wàn)用表只用到1%電阻,4位半萬(wàn)用表大部分只用到1%電阻,但是都實(shí)現(xiàn)了小于1%的誤差,0.1%電阻很少用,0.01%只是傳說(shuō),校準(zhǔn)才是減少誤差的捷徑。
作者: Y_G_G    時(shí)間: 2022-6-17 13:24
hhh402 發(fā)表于 2022-6-17 09:32
關(guān)于電阻精度問(wèn)題,1%足夠大多數(shù)應(yīng)用,3位半萬(wàn)用表只用到1%電阻,4位半萬(wàn)用表大部分只用到1%電阻,但是都實(shí) ...

那您就做去吧
反正這電路現(xiàn)實(shí)中不會(huì)有人用,就算有,也是DIY玩玩的,一個(gè)16位的工業(yè)級(jí)DAC才幾塊錢(qián),兩個(gè)IO就能控制
有誰(shuí)用16個(gè)IO來(lái)控制?
作者: hhh402    時(shí)間: 2022-6-17 13:47
查了一個(gè)16位DAC,也是用R-2R電阻分壓法實(shí)現(xiàn)的。網(wǎng)站介紹如下:
TM8211是兩路16位數(shù)模轉(zhuǎn)換集成 電路 ,可廣泛應(yīng)用于數(shù)字音頻、多媒體系統(tǒng)。
芯片采用CMOS工藝設(shè)計(jì),內(nèi)部電路結(jié)構(gòu)基于R-2R電阻網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì),并在全 電源
電壓范圍內(nèi)實(shí)現(xiàn)16bit的動(dòng)態(tài)范圍。 TM8211可通過(guò)采用數(shù)字串行總線(xiàn)數(shù)據(jù)輸入,采
用快速R-2R網(wǎng)絡(luò)結(jié)構(gòu)來(lái)支持8X的過(guò)采樣音頻信號(hào)處理。

作者: 名字不是重點(diǎn)    時(shí)間: 2022-6-17 14:09
hhh402 發(fā)表于 2022-6-17 09:20
ADC的話(huà)16位只需要16次比較就出結(jié)果,不管什么電壓都是需要16次比較,12位ADC就需要12次比較,不存在極限 ...

謝謝!我知道我的思路錯(cuò)在哪了
作者: lgwd    時(shí)間: 2022-6-17 16:04
仿真沒(méi)有問(wèn)題只能說(shuō)明理論上是正確的。你實(shí)際搭個(gè)電路試試,看看能否達(dá)到目的?會(huì)不會(huì)出現(xiàn)多種問(wèn)題?
作者: 名字不是重點(diǎn)    時(shí)間: 2022-6-17 16:35
lgwd 發(fā)表于 2022-6-17 16:04
仿真沒(méi)有問(wèn)題只能說(shuō)明理論上是正確的。你實(shí)際搭個(gè)電路試試,看看能否達(dá)到目的?會(huì)不會(huì)出現(xiàn)多種問(wèn)題?

我百度了一下,一般產(chǎn)品是不會(huì)采用這種電路的,只會(huì)在土豪版的產(chǎn)品上用它,
比如音響類(lèi)的。那上邊不止16BIT,24BIT的都有。玩HIFI音響的都是不缺錢(qián)的主。
要不然單那幾十個(gè)電阻就可以買(mǎi)到一顆不錯(cuò)的DAC的IC了。
作者: 名字不是重點(diǎn)    時(shí)間: 2022-6-17 16:43

這個(gè)產(chǎn)品圖看一下,標(biāo)價(jià)RMB12K,僅僅是一個(gè)DAC
High End Discrete R-2R Sign Magnitude DAC / HeadAmp
旗艦!
全平衡!
27 bit!
DSD256/PCM384

售價(jià): RMB 11,980

dac1541 internals        dac1541 retail packaging
Specifications:
THD @ -1 dB         <0.005%
THD @ -60 dB        <0.02%
Resistor Precision        27 bit, 0.01% – 0.02% Resistors
Clock Jitter RMS        0.3 pS typical
S/N 20 Khz Bandwith        >123 dB unweighted
Frequency Range +0.1 -1.0 dB        20hz – 20Khz
USB Input        Type B, Isolated, Full/High Speed
USB Input Mode Selectable        Audio Class 1.0 or Audio Class 2.0
SPDIF / AES / Toslink Inputs         Up to 24 bit / 192 Khz
USB Input PCM        Up to 24 Bit / 384 Ksps
USB Input DSD        Up to DoP-128 and DSD-256
Digital volume control        -80 dB to +10 dB
Output Line        RCA, 2.0V RMS, Zout 50 ohm
Output Line Balanced        3 pins XLR, 4.0V RMS, Zout 100 ohm
Output Headphones        6.3 mm Jack, 6.5V RMS, Zout 1.5 ohm
1300mW @ 32Ω
Output Headphones Balanced        4 pins XLR, 13V RMS., Zout 3.0 ohm
4400mW @ 32Ω
Power Consumptation        90-265V AC, max 35W
Size        250 x 205 x 40 mm
Weight        1.5 Kg
Warranty        3 Years
作者: hhh402    時(shí)間: 2022-6-17 17:12
有不少使用這種電路的DAC芯片,比如MCP4726A0T-E、TM8211,也不貴。估計(jì)用的電阻精度比較低吧。
也有用0.1%電阻的,很貴。下面有個(gè)介紹R-2R的視頻:
https://www.bilibili.com/video/B ... 4108bde1b8b3565f372
作者: hhh402    時(shí)間: 2022-6-17 23:15
22#是數(shù)字功放吧,只能看看
作者: 名字不是重點(diǎn)    時(shí)間: 2022-6-18 08:58
本帖最后由 名字不是重點(diǎn) 于 2022-6-18 09:04 編輯
hhh402 發(fā)表于 2022-6-17 23:15
22#是數(shù)字功放吧,只能看看

不是數(shù)字功放,只是單純的DAC解碼器+耳放
作者: 名字不是重點(diǎn)    時(shí)間: 2022-6-18 09:13
這是某人設(shè)計(jì)的圖,陣容豪華:
24bit全平衡雙聲道DAC.pdf (125.52 KB, 下載次數(shù): 22)
FPGA.pdf (68.77 KB, 下載次數(shù): 13)


作者: Y_G_G    時(shí)間: 2022-6-18 21:27
hhh402 發(fā)表于 2022-6-17 17:12
有不少使用這種電路的DAC芯片,比如MCP4726A0T-E、TM8211,也不貴。估計(jì)用的電阻精度比較低吧。
也有用0.1 ...

還在折騰這玩意?
怪不得你覺(jué)得這電路好
DAC里面怎么可能用一堆電阻呢?
芯片里面的電阻在絕大多數(shù)的情況下只有兩種:一種是三極管代替電阻,一種是場(chǎng)效應(yīng)管代替電阻
而你說(shuō)的這個(gè)MCP4726用的就是場(chǎng)效應(yīng)管做成的數(shù)字電位器,不是電阻
框圖是這么個(gè)樣子而已,里面用的是數(shù)字電位器,原理是這個(gè)原理,但實(shí)用性幾乎等于0
你要真這個(gè)電路出來(lái),你看一下能不能達(dá)到0.7929uV,能有1mV的精度你就笑了
參考電壓,溫度漂移,電阻誤差,這三個(gè)加一塊,沒(méi)有做過(guò)實(shí)際電路,你是不會(huì)知道這其中的影響有多大的
作者: 188610329    時(shí)間: 2022-6-19 10:42
hhh402 發(fā)表于 2022-6-17 09:06
的確有時(shí)間差,但是對(duì)輸出影響很小,想要快肯定要1T單片機(jī),常用24MHz主頻,刷新一次1/24us,正常的應(yīng)用輸 ...

知道為什么帶DAC的單片機(jī)那么貴么?
知道為什么STC不出帶DAC的單片機(jī),只出帶PWM的單片機(jī)么?
知道為什么STC寧可不聲不響,給每個(gè)IO加上4.7K上拉電阻,也不搞個(gè)R-2R的DAC出來(lái)抬高身價(jià)么?

這就不是幾個(gè)電阻的問(wèn)題。你搭個(gè)真實(shí)電路出來(lái),試一下就明白了。與其仿真千遍,不如實(shí)干一次。
作者: hhh402    時(shí)間: 2022-6-19 22:44
TM8211就是R-2R原理做的16位DAC芯片,還有不少DAC芯片是使用R-2R原理的,便宜的也有,非常貴的也有。這么多芯片在用至少說(shuō)明這種R-2R電阻分壓DAC電路是有實(shí)用價(jià)值的。STC8H單片機(jī)手冊(cè)已經(jīng)提到R-2R電阻分壓DAC電路,以后是不是加入DAC就不知道了,不過(guò)16位的應(yīng)該不會(huì),10位或12位就難說(shuō)了。
作者: hhh402    時(shí)間: 2022-6-19 22:57
Y_G_G 發(fā)表于 2022-6-18 21:27
還在折騰這玩意?
怪不得你覺(jué)得這電路好
DAC里面怎么可能用一堆電阻呢?

你是說(shuō)MCP4726A0T-E、TM8211這種DAC是做來(lái)玩的沒(méi)有實(shí)用價(jià)值嗎?芯片都做出來(lái)銷(xiāo)售了,你還說(shuō)沒(méi)有做過(guò)實(shí)際電路,至于誤差還是看看芯片的資料吧
作者: Y_G_G    時(shí)間: 2022-6-21 22:29
hhh402 發(fā)表于 2022-6-19 22:57
你是說(shuō)MCP4726A0T-E、TM8211這種DAC是做來(lái)玩的沒(méi)有實(shí)用價(jià)值嗎?芯片都做出來(lái)銷(xiāo)售了,你還說(shuō)沒(méi)有做過(guò)實(shí)際 ...

好的,就此打住了
你就好好的做你的DAC去吧,做好了別忘了發(fā)個(gè)帖子慶祝一下
作者: qqshei51    時(shí)間: 2022-10-4 17:04
Y_G_G 發(fā)表于 2022-6-17 13:24
那您就做去吧
反正這電路現(xiàn)實(shí)中不會(huì)有人用,就算有,也是DIY玩玩的,一個(gè)16位的工業(yè)級(jí)DAC才幾塊錢(qián),兩個(gè)IO就 ...

主要是老師非要求我這么做,我才問(wèn)樓主的,抱歉啊
作者: qqshei51    時(shí)間: 2022-10-4 17:10
樓主您好,我想問(wèn)一下咱這個(gè)電路怎么通過(guò)單片機(jī)控制,直接輸出與單片機(jī)IO口相連嗎?Vref又要接多少的穩(wěn)壓電源呢?
作者: hhh402    時(shí)間: 2022-10-5 14:33
左邊20K電阻接IO口,8位就接8個(gè)IO,16位就接16個(gè)IO,Vcc=需要輸出最大電壓。以16位為例:設(shè)Vcc=5V,16個(gè)IO分別為0000 0000 1111 1111,將這個(gè)二進(jìn)制數(shù)轉(zhuǎn)化為10進(jìn)制等于255,這是輸出電壓V=255/65536*5V=19.45mV。如果16個(gè)IO分別為0000 1111 0000 1111,將這個(gè)二進(jìn)制數(shù)轉(zhuǎn)化為10進(jìn)制等于3855,這是輸出電壓V=3855/65536*5V=294.11mV。當(dāng)然這是理論計(jì)算值,實(shí)際因?yàn)閱纹瑱C(jī)IO有內(nèi)阻所以輸出電壓會(huì)偏低,實(shí)際電路中運(yùn)放不是電壓跟隨而是放大倍數(shù)可調(diào)的放大器,先將所以IO置1,再調(diào)節(jié)運(yùn)放可變電阻使輸出電壓等于5V,這時(shí)DA輸出為0-5V(16位分辨率),如果調(diào)節(jié)運(yùn)放可變電阻使輸出電壓等于10V,這時(shí)DA輸出為0-10V(16位分辨率)。
作者: xianfajushi    時(shí)間: 2022-10-5 16:02
因該用ISIS 仿真直接單片機(jī)控制并監(jiān)測(cè)輸出有數(shù)據(jù)
作者: Hephaestus    時(shí)間: 2022-10-8 00:10
hhh402 發(fā)表于 2022-6-17 17:12
有不少使用這種電路的DAC芯片,比如MCP4726A0T-E、TM8211,也不貴。估計(jì)用的電阻精度比較低吧。
也有用0.1 ...

MCP4726, 12bit
你自己看看這片子誤差有多大!



作者: 老愚童63    時(shí)間: 2022-10-8 07:09
hhh402 發(fā)表于 2022-6-17 13:47
查了一個(gè)16位DAC,也是用R-2R電阻分壓法實(shí)現(xiàn)的。網(wǎng)站介紹如下:
TM8211是兩路16位數(shù)模轉(zhuǎn)換集成 電路 ,可 ...

通常商品DAC內(nèi)部的網(wǎng)絡(luò)電阻都是經(jīng)過(guò)激光修正的,比我們平時(shí)購(gòu)買(mǎi)的電阻的精度要高的多。沒(méi)有可比性
作者: 老愚童63    時(shí)間: 2022-10-8 07:15
hhh402 發(fā)表于 2022-6-16 00:17
16位DA,5V參考電壓,理論精度為5V/65536=76.29uV,使用1%電阻誤差是76.29UV*1%=0.7629uV。已經(jīng)足夠小, ...

驗(yàn)證DAC原理可以,但實(shí)際應(yīng)用肯定不現(xiàn)實(shí)。不要說(shuō)1%精度的電阻,就是給你0.1%電阻也不一定能夠達(dá)到仿真效果。畢竟,仿真是按理想狀態(tài)給出的可能結(jié)果。
作者: hhh402    時(shí)間: 2022-10-8 08:48
既然已經(jīng)做成了芯片并且還在銷(xiāo)售至少說(shuō)明R-2R分壓做DAC芯片是可行的,精度低是相對(duì)的,畢竟是12位DAC,精度再低也強(qiáng)過(guò)8位,10位的吧。其實(shí)有人做有人買(mǎi)已經(jīng)證明方案可行。
作者: Y_G_G    時(shí)間: 2022-10-8 09:13
hhh402 發(fā)表于 2022-10-8 08:48
既然已經(jīng)做成了芯片并且還在銷(xiāo)售至少說(shuō)明R-2R分壓做DAC芯片是可行的,精度低是相對(duì)的,畢竟是12位DAC,精度 ...

快4個(gè)月了,有什么進(jìn)展沒(méi)有?不會(huì)只停留在仿真階段吧
作者: 人中狼    時(shí)間: 2022-10-8 09:15
樓主估計(jì)搞錯(cuò)了一些概念,這個(gè)DAC結(jié)構(gòu)是沒(méi)問(wèn)題的,也是常用的,只是用分立電阻元件和集成電路芯片里的電阻元件的制造方法和誤差是不同的,在集成電路芯片里的電阻精度在于芯片本身設(shè)計(jì)時(shí)的定位以及生產(chǎn)能達(dá)到的精度,這個(gè)極有可能超過(guò)1%的
作者: hhh402    時(shí)間: 2022-10-8 10:17
不知道40#想表達(dá)什么?22#給出的難道不是分立元件的?
作者: 老愚童63    時(shí)間: 2022-10-8 14:38
hhh402 發(fā)表于 2022-10-8 08:48
既然已經(jīng)做成了芯片并且還在銷(xiāo)售至少說(shuō)明R-2R分壓做DAC芯片是可行的,精度低是相對(duì)的,畢竟是12位DAC,精度 ...

原理是可行的!商品化生產(chǎn)的芯片肯定可行,芯片廠商的工藝不是DIY可以復(fù)制的,因?yàn)閺?fù)制的成本太高!
作者: imxuheng    時(shí)間: 2022-10-8 15:51
STC單片機(jī)手冊(cè)上面也介紹過(guò)這個(gè)R-2R電路,轉(zhuǎn)換時(shí)間很快,有時(shí)間也搭個(gè)電路試試,手頭有不少74573之類(lèi)的芯片,二者組合起來(lái)用,就當(dāng)自?shī)首詷?lè)DIY
作者: 快樂(lè)眼淚    時(shí)間: 2022-11-8 08:29
好熱鬧!真是學(xué)到不少知識(shí)!
作者: dbxzjq    時(shí)間: 2024-2-5 22:52
這樣直接使用開(kāi)關(guān)來(lái)仿真是可以得到正確的結(jié)果的,但是如果使用單片機(jī)IO的話(huà),就問(wèn)題非常大了,因?yàn)镮O無(wú)法完全輸出0伏,完全輸出為0伏,這樣才能正確的輸出結(jié)果的,我也做過(guò)相關(guān)的仿真,使用SPI驅(qū)動(dòng)兩片595,接成這樣的R2R,結(jié)果是到某些值時(shí),輸出的電壓倒回來(lái)了,不能線(xiàn)性,分析原因就是因?yàn)闊o(wú)法家祭無(wú)完全做到開(kāi)關(guān)在0伏或者高電平狀態(tài),因?yàn)殡娮杞油ê筮是存在電流的,嘗試換為100K和200K組成R2R后電流降下來(lái)輸出結(jié)果還算可以,但還是不能線(xiàn)性級(jí)進(jìn),畢竟還存在一定電流,595的引腳還是無(wú)法完全達(dá)到0電平狀態(tài)
作者: dbxzjq    時(shí)間: 2024-2-5 22:59
這種R2R原理是正確的,但是唯一的問(wèn)題是Io無(wú)法切底的輸出0伏(低電平),因?yàn)槭褂玫碾娮柽會(huì)拉電流,造成Io更加的不能完全為0伏,另外高電平時(shí)也無(wú)法完全達(dá)到參考電壓,這就是問(wèn)題,所以根本無(wú)法達(dá)到線(xiàn)性級(jí)進(jìn)輸出電壓,而且還會(huì)到某些邏輯組合時(shí)還會(huì)輸出倒退回來(lái)的電壓值,實(shí)際上與電阻的精度是否影響是無(wú)關(guān)的,即使電阻精度影響只會(huì)影響級(jí)進(jìn)的線(xiàn)性度,但不會(huì)級(jí)進(jìn)后電壓倒退回來(lái),我也是通過(guò)仿真分析出來(lái)原因,除非使用16個(gè)繼電器,硬件式開(kāi)關(guān),這樣保證在低電平時(shí)處于完全的0伏,高電平時(shí)完全處于參考電壓,這樣出來(lái)隨便使用0.1%精度的電阻都能得到非常線(xiàn)性的輸出結(jié)果,所以關(guān)鍵就是模擬開(kāi)關(guān)或者595移位寄存器的引腳(包括單片機(jī)的IO)都不能完全的低電平和高電平,所以用這種方案只有一條路,使用微型繼電器實(shí)現(xiàn),但這樣一來(lái)就無(wú)法高速度DAC的,只能單純的低速輸出電壓了,除非找到一種模擬開(kāi)關(guān)能達(dá)到純0伏低電平和純參考電壓的高電平
作者: dbxzjq    時(shí)間: 2024-2-5 23:08
如果使用HC595,這芯片引腳如果真的能輸出0伏,完全為0伏,然后R2R分別使用1M歐和2M歐作組合,也不會(huì)被上拉到HC595的引腳在低電平時(shí)造成不完全0伏,哪么這樣出來(lái)的結(jié)果也是可以的,只是電阻這么大,估計(jì)切換速度也快不起來(lái),實(shí)際上看了HC595手冊(cè)介紹,輸出引腳是無(wú)法輸出0伏的,而且還要看對(duì)應(yīng)的引腳負(fù)載電流的大小引腳上的低電平電壓也不一樣的,單片機(jī)IO低電平輸出的電壓可以看對(duì)應(yīng)的單片機(jī)的手冊(cè),這就是為什么這種R2R不能這樣使用的原因了,并不是什么電阻精度的問(wèn)題,電阻精度的原因只會(huì)造成每步進(jìn)一個(gè)值,可能不哪么線(xiàn)性,每一級(jí)的間隔電壓不完全一樣,或者電阻溫飄造成輸出結(jié)果的變化而已,但不會(huì)造成電壓倒退回來(lái)的現(xiàn)象,所以只要電阻精度能保證一點(diǎn),使用繼電器作為低頻率DAC是非常不錯(cuò)的,只是成本高
作者: dbxzjq    時(shí)間: 2024-2-5 23:23
更詳細(xì)的說(shuō)一下原因,比如輸出某個(gè)DAC值的數(shù)字,對(duì)應(yīng)著R2R的每一個(gè)端的開(kāi)關(guān)狀態(tài),比如有好幾處是低電平,好幾片是高電平,這樣組合出來(lái)后,每一處的低電平和高電平上的電阻拉出來(lái)的電流都不會(huì)相同的,所以每一個(gè)低電平或者高電平都不可能完全在0伏或者參考電壓值,它是有偏差的,可能 是0.01伏,0.1伏,0.005伏這個(gè)樣子,高電平如果參考電壓為5伏這樣子對(duì)吧,哪么有的高電平引腳處可能是4.999伏,有的高電平為4.89x伏,這樣一樣造成的輸出結(jié)果就無(wú)法保證輸出電壓是按照 DAC的級(jí)進(jìn)值來(lái)輸出了,而且在某些輸出的DAC值的高低電平組合下,輸出的電壓比前好幾級(jí)的值的電壓都要低許多,電壓比前好幾級(jí)DAC值的電壓倒退回去了,比如上一級(jí)輸出1伏,DAC值加1后,會(huì)輸出0.9伏,再加1后輸出1.1伏這個(gè)樣子,這只因?yàn)楦叩碗娖降慕M合的位置剛好造成各電阻上下拉的電流嚴(yán)重的偏差,所以讓后一級(jí)輸出的電壓比前幾級(jí)的電壓都更低的原因了,電阻精度只要用精度高的電阻測(cè)量表選出來(lái)非常接近的也沒(méi)什么影響的,但是開(kāi)關(guān)的高低電平影響是極大的
作者: hhh402    時(shí)間: 2024-2-6 12:04
樓上的對(duì)單片機(jī)要求太高了,對(duì)電壓精度要求也太高,首先說(shuō)參考電壓5v,正常使用的是7805穩(wěn)壓,要求高的用TL431穩(wěn)壓,TL431電壓精度1%最高可以達(dá)到0.5%,再找一個(gè)幾十元的電壓基準(zhǔn)芯片AD584,電壓精度0.3%,也就是說(shuō)要得到5v,0.1%的參考電壓都是非常困難的事情,萬(wàn)用表的精度4位半的0.5%,6位半的0.1%,就算是電壓檢測(cè)要達(dá)到0.1%精度也是非常困難的事情。連參考電壓都很難達(dá)到0.1%精度,DA更加不可能了,不僅是R2R結(jié)構(gòu)的,其它結(jié)構(gòu)的DA也很難到達(dá)0.1%精度,DA芯片只給出了分辨率,很少會(huì)給出精度。
作者: hhh402    時(shí)間: 2024-2-6 16:53
16位DA指的是16位分辨率,不是指16位精度,R2R結(jié)構(gòu)DA想減少誤差,1是使用大一點(diǎn)的電阻,比如100K和200K,2是使用導(dǎo)通電阻比較小的模擬開(kāi)關(guān),595比單片機(jī)IO效果要好,SGM3157導(dǎo)通電阻只有5歐姆更好,如果用單片機(jī)做能夠達(dá)到1%以下精度就不錯(cuò)了,如果需要更高精度那就用萬(wàn)用表校準(zhǔn)。如果不校準(zhǔn)16位DA與12位DA精度差別不大,如果校準(zhǔn)16位DA比12位DA精度高。還有一點(diǎn),R2R結(jié)構(gòu)DA帶負(fù)載能力很差,一般都需要用運(yùn)放做電壓跟隨,運(yùn)放會(huì)帶來(lái)0.1~5mv左右的誤差,這對(duì)于低電壓輸出比如10mv時(shí)誤差是很大的。
作者: angmall    時(shí)間: 2024-2-6 19:02
16位的DAC就是用兩組8位IO組成16個(gè)輸出接R-2R輸出,由于電阻精度、電源精度和噪聲的影響,太高的分辨率沒(méi)有意義,一般超過(guò)12位的意義不大。
作者: 1600277881    時(shí)間: 2024-2-6 20:49
hhh402 發(fā)表于 2022-6-16 00:17
16位DA,5V參考電壓,理論精度為5V/65536=76.29uV,使用1%電阻誤差是76.29UV*1%=0.7629uV。已經(jīng)足夠小, ...

算錯(cuò)了, 你挑一個(gè)電壓最低的來(lái)算其誤差試試, 1%的阻所導(dǎo)致的電壓誤差是大于1%的, 不信你試試動(dòng)手算。
作者: Hephaestus    時(shí)間: 2024-2-7 23:12
到現(xiàn)在樓主也沒(méi)拿出什么證據(jù)證明精度有多高。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1