01 梯形電阻
一、前言
剛剛拿到了購買的高精度電阻,200片 10k 歐姆電阻。下面將會利用它,重新測試一下 R2R 梯形電阻 DAC的精度。這是前兩天使用普通制作的 10 bit DAC的效果。在 3.3V的范圍內(nèi),線性誤差最大達到了 28mV。下面來看一下使用這些 千分之一精度的電阻制作的效果。對于究竟能夠達到多高的精度,我現(xiàn)在也是充滿著好奇。
二、電路設(shè)計
這一次使用的單片機為 STM32F401。由于手邊只有10k歐姆高精度電阻,所以使用兩個 10k電阻并聯(lián)形成 5k 電阻。鋪設(shè)單面電路板,適合一分鐘制板方法。
▲ 圖1.2.1 電路原理圖
ADTest2024MarchR2RF40110K.SchDoc
▲ 圖1.2.2 PCB電路
??一分鐘之后獲得了電路板。使用的覆銅板表面有些氧化,對后面焊接很不友好。但這還不是最致命的,直到焊接前,才意識地自己犯了一個愚蠢的錯誤。所購買的電阻是 0805 封裝,但是制作的測試電路板則是0603 封裝。沒有辦法,重新修改電路板再制作一塊實驗電路板。
將原來的 0603 封裝的電阻修改成 0805 封裝。一分鐘之后,得到了新的電路板。下面對它進行焊接。電路比較簡單,焊接很容易。QFN封裝的單片機應(yīng)用熱風槍進行焊接,下面開始對電路進行上電測試。
好事多磨,現(xiàn)在使用 ST-LINK 無法訪問到 單片機。這就不好玩了,這樣無法進行軟件測試了呀。這個電路實在是太簡單了,因此猜測在原來電路設(shè)計中,是直接把 BOOT0 連接到地線造成的影響?,F(xiàn)在使用 一個 ?10k歐姆把 BOOT0 接地。重新制版,焊接后測量,果然,現(xiàn)在可以訪問了。不過這就奇怪了,在其他單片機單片機電路設(shè)計中,直接到BOOT0 接地沒有問題的。不知道為什么在這里翻船了。
三、軟件測試
下載測試軟件,可以看到電路板開始運行。下面將之前測試的程序,移植到現(xiàn)在的工程文件中。輸出鋸齒波,可以看到信號變化正常。
使用萬用表測量 DAC 在不同的設(shè)置下對應(yīng)的輸出電壓。記錄 100個數(shù)據(jù)點,DAC 輸出從 0 到 1023 變化。通過記錄的數(shù)據(jù),來評估一下輸出DAC的特性。沒有對比,就沒有傷害,可以看到使用高精度電阻之后,輸出電壓與DAC之間的線性關(guān)系非常好。通過計算,可以知道,輸出電壓與線性擬合之間的誤差,在正負1.5mV 之內(nèi)。只有一個數(shù)據(jù)超過了這個誤差范圍。
▲ 圖1.3.1 DAC輸出與電壓
▲ 圖1.3.2 DAC的線性誤差
※ 總??結(jié) ※
本文測試了高精度電阻組成的梯形電阻 DAC 的性能。在輸出 3.3V的范圍內(nèi),誤差在正負1.5mV 之內(nèi)。這比起前兩天使用普通電阻對應(yīng)的 28mV的誤差范圍來看,精度得到了很大的提高。在電路設(shè)計中,對于STM32F401單片機,不知道為何需要使用電阻將 BOOT0 連接到地線,直接連接ST-LINK 無法訪問單片機。不過后來,將 10k歐姆電阻替換成0歐姆,單片機也能夠被訪問了。所以,開始遇到的問題也許是其他的故障。