01 UART輸出模擬量
一、前言
昨天,有人在“串口音樂(lè)” VLOG 后面留言,提出了一個(gè)很好的問(wèn)題。那就是利用單片機(jī)的串口輸出信號(hào)低通濾波得到的模擬量,與使用傳統(tǒng)的PWM輸出信號(hào)低通濾波得到的模擬量相比,有什么優(yōu)勢(shì)呢??對(duì)此,有人回答道,至少在普通的計(jì)算機(jī)接口中,UART接口比較普遍,而PWM接口則難覓蹤跡。除了以上觀點(diǎn)之外,下面還是通過(guò)實(shí)際對(duì)比來(lái)看一下 UART 和 PWM 輸出模擬量的差異性。
ADTest2024PWM
二、測(cè)試方法
那么下面設(shè)計(jì)測(cè)試電路,還是使用昨天的STM32單片機(jī),接口做了簡(jiǎn)化,將 串口2 的輸出端口引出,另外把 TIME4 的 兩個(gè) PWM 通道引出,最后再加上一個(gè) IO口,用作示波器同步信號(hào)。手工鋪設(shè)單面PCB板。最終有兩個(gè)飛線,焊接時(shí)利用 0 歐姆電阻進(jìn)行短接。
▲ 圖1.2.1 測(cè)試電路原理圖
▲ 圖1.2.2 測(cè)試電路PCB版圖
??通過(guò)一分鐘制版方法,制作測(cè)試電路板。實(shí)際上制作了兩次。第一次,由于沒(méi)有對(duì)腐蝕液稀釋?zhuān)斐闪司€路過(guò)腐蝕。第二次,在腐蝕液中增加了水,放慢了腐蝕速度,可以看到線路制作的非常完美。下面焊接測(cè)試。
焊接電路板。對(duì)它進(jìn)行清洗??梢钥吹接行┑胤讲](méi)有清洗干凈。后面使用超聲波再次進(jìn)行清洗。
三、測(cè)試結(jié)果
在面包板上搭建測(cè)試電路。提供單片機(jī)工作電壓3.3V。通過(guò)探針夾子下載測(cè)試軟件。
▲ 圖1.3.1 串口輸出信號(hào)
??使用示波器觀察串口2 輸出信號(hào)。上面青色信號(hào)是 TXD2信號(hào),下面黃色是電路中 IO口輸出的 DMA中斷信號(hào)。兩個(gè)中斷信號(hào)之間是 32個(gè)發(fā)送字節(jié)?,F(xiàn)在發(fā)送的數(shù)據(jù)為 0x0,看到的這些脈沖是 串口通訊中的停止位。32個(gè)字節(jié)中總共有 256 比特可以被設(shè)置。
現(xiàn)在將 256位可控 比特中 25% 的設(shè)置成高電平。這些置為高電平的比特是均勻分布在 256 位中的。作為對(duì)比,設(shè)置單片機(jī)的 TIME4 輸出 PWM波形,它的預(yù)分頻參數(shù)設(shè)置為 79,這樣就可以形成與 串口輸出 32個(gè)字節(jié)相同周期的 PWM信號(hào),PWM 精度也是 256個(gè)等級(jí)。在示波器中,紫色的信號(hào)為 PWM 波形,占空比也是 25% ,上面是 UART輸出的占空比25% 的PWM波形。由此我們知道,UART輸出的信號(hào)實(shí)際上屬于 PDM,也就是脈沖密度調(diào)制信號(hào)。實(shí)際調(diào)制頻率為 1MHz,這是 串口設(shè)置的波特率。
▲ 圖1.3.2 輸出占空比25%對(duì)應(yīng)的輸出波形
▲ 圖1.3.3 PWM和UART都輸出25%占空比的波形
四、信號(hào)對(duì)比
下面分別做兩個(gè)測(cè)量。一個(gè)是測(cè)量UART和PWM輸出信號(hào)中的直流電壓,一個(gè)是測(cè)量在 RC 低通濾波之后,信號(hào)中的交流分量的大小。先測(cè)量 UART 在不同的占空比設(shè)置下對(duì)應(yīng)的直流分量,使用數(shù)字萬(wàn)用表DM3068的直流檔測(cè)量輸出信號(hào),通過(guò)串口控制單片機(jī) UART 輸出信號(hào)中高電平所占的比例。從 0 ?一直到 100%。輸出電壓直流分量與占空比呈現(xiàn)完美的線性關(guān)系。由于存在著起始位和停止位,所以 輸出電壓不是從 0V 開(kāi)始增加,最大值也比信號(hào)高電平要低。接下來(lái)測(cè)量 PWM 信號(hào)的直流分量。測(cè)量結(jié)果顯示 輸出電壓與占空比是正比關(guān)系。對(duì)比 UART 和 PWM信號(hào)中的直流分量,可以看到 UART 輸出直流信號(hào)的范圍 比 PWM 小了 20% 左右。
▲ 圖1.4.1 UART輸出電壓
▲ 圖1.4.2 PWM 輸出電壓
▲ 圖1.4.3 UART,PWM輸出電壓對(duì)比
??利用RC低通濾波器對(duì) UART 輸出信號(hào)進(jìn)行濾波,電阻為 10k歐姆,電容為 0.1微法。利用 DM3068交流檔測(cè)量輸出信號(hào)中的交流信號(hào)的有效值。記錄在不同占空比下,交流信號(hào)有效值的大小。從觀察的波形上來(lái)看,輸出信號(hào)非常平穩(wěn)。測(cè)量結(jié)果也顯示,輸出信號(hào)中的交流分量隨著占空比變化呈現(xiàn)大體增加的趨勢(shì)。最大為 4mV左右。接下來(lái),測(cè)量 PWM信號(hào)在同樣的RC低通濾波器濾波后存在的交流分量??梢杂^察到,在輸出濾波信號(hào)中存在上下波動(dòng),測(cè)量結(jié)果顯示 ,當(dāng)占空比為 50% 的時(shí)候,交流分量達(dá)到最大,超過(guò)了 84mV。對(duì)比 串口信號(hào)和 PWM信號(hào)中的交流分量,我們就可以看出 串口輸出的信號(hào)的優(yōu)勢(shì),那就是在RC低通濾波之后,信號(hào)波動(dòng)很小,只是 普通 PWM波形的 20分之一左右。
▲ 圖1.4.4 UART輸出信號(hào)中的交流分量
▲ 圖1.4.5 PWM輸出信號(hào)中的交流分量
▲ 圖1.4.6 對(duì)比UART和PWM輸出信號(hào)中的交流分量
※ 總??結(jié) ※
本文對(duì)比了單片機(jī)通過(guò) 串口和 PWM 端口輸出 直流量的特性。由于存在固定的起始位和停止位,所以串口輸出信號(hào)的直流分量變化范圍只能達(dá)到工作電壓范圍的 80%。但 PWM 輸出信號(hào)中的直流分量可以達(dá)到工作電壓的范圍。但使用串口輸出信號(hào)中的交流分量,在同樣的 RC 低通濾波情況下,比 PWM 輸出信號(hào)小了 20倍。這也許是 串口輸出模擬量的一個(gè)優(yōu)勢(shì)吧。當(dāng)然,這種優(yōu)勢(shì)也是因?yàn)樗敵鑫粩?shù)比較低所帶來(lái)的。比如實(shí)驗(yàn)中,串口輸出模擬量只相當(dāng)于 8位 的 DAC。今天的結(jié)果是通過(guò)實(shí)驗(yàn)測(cè)量得到的,理論上的分析,可以用于下學(xué)期再信號(hào)與系統(tǒng)課程中的實(shí)驗(yàn)作業(yè)的內(nèi)容。