這套課程首先給大家介紹一下通用示波器的一些基本功能,由我們的工程師來做實際的操作演示,全面了解構成一款示波器最基本的功能以及相應的參數,并在我們自己的DIY示波器中實現相應的一些最基本、最核心的相應的功能。
參照的是Tektronix的TBS1202B,這是一款經濟型的通用數字存儲示波器。其它的通用數字示波器在指標、功能以及操作界面方面有些許的差別,但它們的主要功能、控制機制以及接口方式基本上都是類似的。
實物圖片
官網圖片
先來看看示波器最主要的功能及指標:
從儀器的面板上可以看出它是一款雙通道200MHz、2Gsps的數字示波器,200MHz(Hz為頻率的單位)表示這款示波器能夠觀察的模擬信號的帶寬(3dB)為200MHz,后者2Gsps(sps - 每秒的樣點數)表示這款示波器內部的ADC采樣率最高為2Gsps,這兩個指標有一定的關聯,模擬帶寬越高,需要的采樣率也就越高,但并非一一對應關系,比如2Gsps采樣率的示波器有50MHz模擬帶寬的,也有100MHz、200MHz帶寬的。這兩個指標都非常重要,有時候我們說這是個100M的示波器,要弄清楚這里的100M是指100MHz的模擬帶寬,還是100Msps的采樣率。
二者之間的關系我們會在后面的課程中還會做詳細介紹。
從官網的產品介紹中可以看到它的記錄長度為2500個點,也就是說一次采集能夠獲取并保留2500個點到存儲器中,可用于后期的處理、縮放顯示等。
那我們的DIY示波器能做到多少呢?
雙通道
模擬帶寬 - 100KHz
ADC采樣率 - 2.5Msps(單通道)、1.25Msps(雙通道)
記錄長度:256個點(顯示屏為128*128個點,顯示區域設定為100*100)
我們用于DIY示波器的板卡實物
我們用于DIY示波器的功能框圖
相比起來指標很低,但麻雀雖小,五臟俱全,對于理解示波器的構成原理已經足夠,100KHz的模擬帶寬以及2.5Msps的采樣率對于我們常用到的音頻信號也已經足夠,對于學習模擬電路的原理也能派上用場了。
下面我們再從該產品的數據手冊中看一下更具體的指標參數:
我們知道任何一個電信號都可以分解成多個單頻信號的疊加,而每個單頻信號的兩個主要參數為幅度和頻率(相位),示波器的主要功能就是將隨時間變化的電信號以通過二維的顯示屏幕,以圖形化的方式展示出來,在縱軸方向展示電壓的變化、在水平軸方向展示隨時間的變化。
顯示屏幕周邊的旋鈕就是用來調節這些圖形在水平和垂直方向的刻度,對采集到的信號進行縮放和移動顯示,以及其它的一些設置功能。
除了 能淋漓盡致地顯示波形之外,示波器還有測量波形參數的功能,可以自動測量,也可以手動測量,主要測量下面的一些參數:
與電壓相關的特性參數:
幅度
最大和最小電壓
平均電壓
與時間相關的特性參數:
信號的頻率和周期
占空比
上升時間和下降時間
參數測量的設置菜單
我們先看一下電壓方面的指標:
垂直分辨率 -?8?bits,也就是內部使用了8位的ADC對模擬信號進行量化
輸入信號靈敏度范圍:-?2mV to 5?V/div
DC增益準確度:±3%, 從10mV/div到5?V/div
最大輸入電壓范圍:300?VRMS?CAT II; derated at 20?dB/decade above 100?kHz to 13?Vp-p?AC at 3?MHz and above
偏移電壓范圍:2?mV to 200?mV/div: ±1.8?V,?>200?mV to 5?V/div: ±45?V
帶寬限制:20?MHz
輸入耦合方式:AC, DC, GND
輸入阻抗:1?MΩ 并聯20?pF
再看看水平軸方向與時間、頻率、相位相關的指標:
時基范圍:2.5?ns to 50?s/div
時基準確度:50?ppm
我們再看一下示波器的主要構成部分的相應功能:
一個典型的數字示波器的功能框圖
數據采集系統:
采集模式
峰值檢測 - 針對高頻信號或隨機毛刺信號的捕捉,能夠捕捉到窄至12ns的信號
取樣
平均:波形平均,可以選擇4、16、64、128個波形進行平均
單次采集
滾動采集
觸發系統:
外部觸發輸入
觸發模式:自動、正常、單序列
觸發類型:
邊緣觸發
視頻觸發
脈沖寬度觸發?(或毛刺)
觸發源:雙通道模式:CH1, CH2, Ext, Ext/5, AC Line
觸發查看:讀出觸發信號的頻率
波形測量:
使用光標手動測量
類型:幅度、時間
能夠測量:ΔT, 1/ΔT, ΔV
自動測量:周期、頻率、脈寬、峰峰值。。。。。。
波形計算
算術:加、減、乘
數學函數:FFT,2048個樣品點
FFT:加窗:Hanning, Flat Top, Rectangular
源:雙通道模式:CH1 - CH2, CH2 - CH1, CH1 + CH2, CH1 × CH2
時域波形和對應的頻譜
自動設置
自動設置菜單
方波
正弦波
視頻 (NTSC, PAL, SECAM)
自動調節范圍- 采用最合適的采樣率、增益、顯示刻度
頻率計數器
分辨率:6位數字
準確度:?+ 51?parts per million including all frequency reference errors and +1?count errors
頻率范圍:AC coupled, 10?Hz minimum to rated bandwidth
頻率計數器的信號源
顯示系統
內插:Sin (x)/x
波形風格:點, 矢量
暫留時間:關, 1秒, 2秒, 5秒,?無限
格式:YT和XY
基于以上針對常規示波器的功能總結,我們就可以設定我們的DIY示波器要實現的功能和對應的技術指標了:
主要功能參數 | 常規示波器TBS1202B | DIY示波器 - STM32 |
通道數 | 2 | 2 |
模擬帶寬 | 200MHz | 100KHz |
采樣率 | 2Gsps | 2.5Msps |
采樣深度 | 2500個點 | 256個點 |
幅度范圍 | 2mVpp -?50Vpp | 2mVpp - 50Vpp |
ADC分辨率 | 8位 | 12位 |
采集系統 | 多種采集模式 | 支持單次、連續采集 |
觸發系統 | 支持多種觸發模式 | 支持電平和邊緣觸發 |
參數測量 | 支持自動測量和手動測量 | 支持自動測量和手動測量 |
波形計算 | 支持2048點FFT | 支持256點FFT |
自動設置 | 支持多種波形的自動設置 | 支持正弦波的自動設置 |
自動調節范圍 | 支持 | 支持 |
頻率計數器 | 支持 | 支持 |
屏幕顯示 | 點、矢量 | 點、矢量 |
在后續的嵌入式系統編程部分的課程中我們就帶著大家一步一步實現上面表格中的功能,完成了這些功能,也就是實現了一個完整的示波器的功能。從軟件編程的角度,更多的功能都是可以通過編程進行支持的,但技術指標則受限于如下的一些因素:
模擬鏈路的性能- 按照100KHz的模擬帶寬設計,增益的調整設定了1:1和10:1兩種,但由于我們使用的ADC為12位精度,也能夠處理2mVpp到50Vpp范圍的模擬信號;
STM32G031內部的ADC采樣率為2.5Msps,如果雙通道同時工作,則降為1.25Msps/通道,采集100KHz的正弦波,一個周期內能夠有12.5個采樣點;
STM32G031內部RAM只有8KB,既要用于數據采集又要用于波形的顯示以及其它的數據處理,因此每次采集能夠存儲的波形控制在256個點,這也是在FFT中使用的點數;
顯示區域:商用的示波器顯示屏都比較大,TBS1202B的分辨率為800*480,顯示信息量比較大,我們采用了128*128的OLED顯示屏,顯示區間很小,比較合適的顯示區域是100*100;
輸入控制:通用示波器面板上的旋鈕很多,能夠支持多種功能,而我們的DIY示波器只有一個旋轉編碼器和兩個按鍵,比較簡單,需要在小的顯示屏幕上顯示更多的功能,在菜單設計上需要下很大的功夫,在支持的功能上也只能簡化一些。
在正式的課程之前,大家可以觀看一下硬禾學堂和Tek合作制作的示波器系列視頻。
下一節我們來看一下“電信號”的基本指標。
審核編輯:湯梓紅
評論
查看更多