如何優(yōu)雅的將PWM轉(zhuǎn)換成DAC?
一、前言
本文引用地址:http://2s4d.com/article/202501/466095.htm很多單片機(jī)都不具備DAC輸出,但會(huì)有多路PWM輸出,下面測(cè)試?yán)?a class="contentlabel" href="http://2s4d.com/news/listbylabel/label/PCA">PCA芯片,GP8500,將PWM信號(hào)轉(zhuǎn)換成模擬電壓信號(hào)。測(cè)試一下這個(gè)方案,以備之后應(yīng)用積累經(jīng)驗(yàn)。
二、電路設(shè)計(jì)
設(shè)計(jì)基于STC32G單片機(jī)的測(cè)試電路。選擇 PWMB中的第四個(gè)通道,也就是PWM8 的信號(hào)發(fā)送給 GP8500,由它將 PWM信號(hào)轉(zhuǎn)換成模擬電壓。鋪設(shè)單面PCB,適合一分鐘制板方法制作測(cè)試電路板。
一分鐘之后得到測(cè)試電路板,焊接清洗之后 進(jìn)行測(cè)試?,F(xiàn)在電路板工作電源為 5V。
三、測(cè)試結(jié)果
下載STC32G程序的時(shí)候,?選擇內(nèi)部時(shí)鐘為35MHz,?基于此,在PWM初始化的時(shí)候,設(shè)置時(shí)鐘為單片機(jī)內(nèi)部時(shí)鐘7分頻,周期為1000。這樣,輸出PWM信號(hào)為5kHz,現(xiàn)在設(shè)置的占空比為四分之一。
▲ 圖1.3.1 頻率5kHz,占空比為四分之一的PWM波形
此時(shí),測(cè)量GP8500模擬電壓輸出,會(huì)發(fā)現(xiàn),它上面出現(xiàn)了高頻寄生震蕩波形。平均電壓為 1.25V,符合在占空比為四分之一情況下對(duì)應(yīng)5V的四分之一的電壓。為什么 會(huì)出現(xiàn)這個(gè)高頻震蕩呢。想起了在焊接電路的時(shí)候,GP8500輸出端口的濾波電容,我想當(dāng)然的使用了手邊的 0.1微法的電容進(jìn)行濾波。但是,在GP8500器件手冊(cè)中,要求 GP8500輸出端口的濾波電容只能在 0 到 100pf之間。是否就是因?yàn)檫@個(gè)原因造成了 GP8500輸出震蕩呢?? 為了證實(shí)這個(gè)怨言,將這個(gè)電容去掉,在電路板上不焊接任何電容。重新測(cè)量,可以看到,GP8500輸出信號(hào)中就不再出現(xiàn)高頻震蕩了。
▲ 圖1.3.2 輸出電壓波形中帶有高頻震蕩
▲ 圖1.3.3 去掉GP8500輸出濾波電容之后,輸出電壓不再震蕩了
下面,每隔一毫秒,更新一次PWM輸出占空比,讓占空比按照正弦規(guī)律進(jìn)行變化,此時(shí)可以看到PCA輸出了正弦波信號(hào)。中間的斷續(xù)顯然應(yīng)該是因?yàn)楦碌臅r(shí)間間隔比較大。不過,其中還包含有令人不安的波形。比如這里出現(xiàn)了非常細(xì)小的毛刺波形。這種毛刺出現(xiàn),好像也不是隨機(jī)的。感覺應(yīng)該是在特殊的輸出數(shù)值中出現(xiàn)的。具體是什么原因,現(xiàn)在一時(shí)毫無頭緒。
▲ 圖1.3.4 輸出正弦波的PWM信號(hào)
示波器單次捕捉這個(gè)毛刺,放大之后,可以看到,這是 STC32G單片機(jī)輸出PWM信號(hào)出現(xiàn)了抖動(dòng)。于是乎就破壞了前后兩次的PCA 轉(zhuǎn)換結(jié)果。所以,這個(gè)毛刺的問題,應(yīng)該有 STC32G單片機(jī)來背這個(gè)鍋。這是另外一次捕捉的毛刺結(jié)果,是同樣的問題。那么問題來了,為何STC32G單片機(jī)在輸出PWM波形的時(shí)候,會(huì)出現(xiàn)這種抖動(dòng)呢?
※ 總結(jié) ※
本文測(cè)試了利用STC32G的PWM輸出,通過GP8500產(chǎn)生模擬信號(hào)的功能。在測(cè)試過程中,發(fā)現(xiàn),GP8500模擬信號(hào)輸出端口不能夠并聯(lián) 0.1微法的電容,否則就會(huì)出現(xiàn)高頻震蕩。輸出端口可以不焊接任何電容。另外一個(gè)意外,那就是STC32G單片機(jī)輸出PWM波形中,會(huì)出現(xiàn)抖動(dòng)。這究竟是什么原因,現(xiàn)在還不得而知。
參考資料
[1]如何將GP8101 的工作電壓改為5V?: https://zhuoqing.blog.csdn.net/article/details/136605372
[2]GP8500 PAC 芯片的特性: https://zhuoqing.blog.csdn.net/article/details/136774706
[3]測(cè)量GP8500的動(dòng)態(tài)特性: https://zhuoqing.blog.csdn.net/article/details/137201737
[4]重新測(cè)試 GP8500 芯片: https://zhuoqing.blog.csdn.net/article/details/137200037
評(píng)論