給你一個單片機,你能造出一個示波器嗎?
發布時間:2017-03-01 責任編輯:susan
【導讀】本文解析如何實現一個簡易的示波器,整個係統結構簡單,清晰。充分利用了AVR單片機內部資源使係統電路得以簡單化,通過測試該係統在測量頻率方向的誤差很小,可以用來比較準確的測量測試信號的頻率。
1、係統結構框圖

圖1.係統結構圖
1.1、信號調理電路
信號調理電路要完成的功能是:程控放大,疊加直流分量。程控放大的作用是:當輸入信號的幅度很小的時候就需要對輸入信號進行放大,使得被測信號可以在LCD上盡可能清楚的顯示出來。疊加直流分量的作用是:ATmega16自帶的A/D是單電源的,沒辦法輸入負壓而待測信號又往往有負壓。這時候就需要這樣一個電路,可以把負壓抬高到0電平以上。

圖2.信號調理電路原理圖
R1,R2分別由一個模擬開關CD4051來連接不同的電阻,不同的R1,R2通過公式:這樣就可以實現程控放大功能了。可調電阻R9用來設置信號調理電路加入的直流分量的大小。放大後的信號和直流分量最後由U3模擬加法器疊加後輸出。
輸入信號與輸出信號的關係:隻要R4、R6、R7的阻值相同,調理電路輸入與輸出的關係簡化為:。
Ux為U3的輸出電壓,輸出電壓的電壓值與可調電阻R9中間抽頭的電壓一至。
1.2、主控芯片軟件設計
這個係統的主控芯片選擇的是,Atmel公司的AVR係列單片機ATmega16,最高可達到16MPIS指令速度。ATmega16有16K的flash, 1K的SRAM, 512 B的EEPROM,單片機內部自帶一個10 bits精度的逐次逼近型模數轉換器,內建采樣/保持電路。ADC的時鍾是可編程的,在這個設計中為了太到最高的采樣頻率100KHz ADC的時鍾設置為2MHz。ADC的觸發源選擇為定時器/計數器0溢出,ATmega16的定時器的時鍾源也是可編程的。這樣就可以通過控製定時器/計數器0溢出中斷頻率來控製ADC的采樣頻率。

圖3.簡易示波器係統程序流程圖
1.2.1、鍵盤功能
在這個係統中設置了7個按鈕分別為:運行與停止,放大倍數增大,放大倍數減小,采樣頻率增大,采樣頻率減小,觸發電平上移,觸發電平下移。
運行與停止鍵:是通過開啟和關閉ATmega16 ADC轉換完畢中斷的方式來實現的。
放大倍數的增大與減小:是通過ATmega16控製模擬開關CD4051來實現放大倍數的數字化控製。CD4051為8通道的模擬開關,所以程控放大器可以有8檔。
采樣頻率的增大與減小:是通過控製ATmega16的定時器0的時鍾源及定時器的初始值來實現係統所需要的各個采樣頻率。定時器0的中斷頻率就等於ADC的采樣頻率。
觸發電平的上移與下移:是shi通tong過guo對dui采cai樣yang來lai的de數shu據ju進jin行xing數shu字zi觸chu發fa時shi,當dang數shu據ju的de二er進jin製zhi值zhi在zai增zeng加jia的de過guo程cheng中zhong某mou個ge數shu據ju的de大da小xiao剛gang好hao與yu數shu字zi觸chu發fa的de二er進jin製zhi數shu值zhi一yi樣yang,在zai此ci以yi後hou的de波bo形xing數shu據ju才cai存cun入ru顯xian示shiRAM中。
當這7個按鍵中的某一個被觸發,都會置位相應的標誌位,以便刷新LCD液晶屏上相應的顯示信息。
1.2.3、數字觸發功能
如ru何he實shi現xian觸chu發fa呢ne?用yong硬ying件jian來lai完wan成cheng的de話hua又you會hui增zeng加jia係xi統tong硬ying件jian電dian路lu的de複fu雜za度du,我wo就jiu想xiang了le一yi個ge辦ban法fa,有you軟ruan件jian的de方fang式shi來lai實shi現xian觸chu發fa的de功gong能neng。實shi現xian的de過guo程cheng如ru下xia:
for (ik=0;ik<500;ik++){
if (k0_ram){
if (box_buff[ik] < trigger) {
kk_ram = 1 ;
}
if (kk_ram){
if ((box_buff[ik] >= trigger) & (ik < 402)){
en_ram = 1 ;
k0_ram = 0 ;
kk_ram = 0 ;
}}}
if (en_ram){
boxing[adc_data]=box_buff[ik] ;
adc_data++ ;
if (adc_data > 96){
adc_data = 0x00 ;
en_ram = 0 ;
}}}
trigger的大小可以通過觸發電平上移與觸發電平下移按鍵來設置它的大小。
1.2.3、還原波形
GDM12864A是一個具有128點x 64點的點陣LCD。根據所選的LCD的特點,Y軸上隻有64個點,所以能顯示的數據範圍為0到63而采樣得到的數據為8位的二進製數據為0到255。為了能在這個LCD上顯示隻取8位數據的高6位。那麼如何把這高6位的二進製數據轉換成在LCD上的Y軸座標和數據值呢?我想了這樣一個計算的方法:
LCD的縱向分為8個地址從上到下依次為0~7,每個地址段有8個數據點。在某個數據段中如果想依次讓這些位從上到下點亮就需要依次向這個地址段送數據0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,送入0x00後這個地址段的8個數據點將不被點亮。實現的具體過程如圖4所示。
dat = dat>>2
y = 7
dat >= 8 ?
dat = dat – 8; y--;
y == 1 ?
dat > 7 ?
dat = 7 ;
dat = 0x80 >> dat
write_add(y,x) ;
write_data(dat) ;
否
否
否

圖4.數據還原成波形上點的程序流程圖
1.2.4、ADC采樣頻率控製
ADC的采樣頻率在上文已有提及,ADC中斷的計算公式為:,通過ATmega16的特殊功能寄存器TCCR0的低3位CS02,CS01,CS00的設置就可以改變的頻率,再把TCNT0設置成不同的數值就可以得到這個係統所需要的各個采樣頻率值了。表1中的數據是通過上麵的公式計算出來的數據再經實際的係統調試並修正後的數據。

表1.采樣頻率的設置
係統性能指標及誤差
2.1、係統性能指標
係統主要性能指標見表2所示。

表2.係統主要性能指標
2.2、係統誤差
係統的誤差主要出在信號調理電路,因為模擬開關有一定的內阻約為80Ω對調理電路的放大倍數會造成一定的影響。通過1.1中的計算公式計算出來的電阻值在實際中不存在,通過幾個電阻串聯來實現也還是會有一定的誤差。平衡電阻R3是固定的在R1,R2發生變化的時候,平衡電阻可能就不能平衡也會給運算放大器引入一定的誤差。
2.3、可以改進的地方
係(xi)統(tong)可(ke)以(yi)進(jin)一(yi)步(bu)改(gai)進(jin)的(de)地(di)方(fang)在(zai)於(yu)信(xin)號(hao)調(tiao)理(li)電(dian)路(lu),可(ke)以(yi)通(tong)過(guo)選(xuan)擇(ze)性(xing)能(neng)更(geng)好(hao)的(de)模(mo)擬(ni)開(kai)關(guan)和(he)運(yun)算(suan)放(fang)大(da)器(qi),更(geng)合(he)理(li)的(de)選(xuan)擇(ze)電(dian)阻(zu)這(zhe)樣(yang)就(jiu)可(ke)以(yi)提(ti)高(gao)信(xin)號(hao)調(tiao)理(li)電(dian)路(lu)的(de)放(fang)大(da)的(de)準(zhun)確(que)度(du)。使(shi)整(zheng)個(ge)係(xi)統(tong)的(de)性(xing)能(neng)得(de)以(yi)進(jin)一(yi)步(bu)改(gai)善(shan)。
2.4、係統實際工作情況
LCD顯示的信息分別有,波形圖像,在波形的上麵是橫軸的標尺,在屏幕的右邊為係統的運行狀態(Run / Stop),Time為整個波形框的時間長度,Volt-為電壓檔,在波形框與信息框之間有個小點為信號的觸發電平。信號的頻率=波形框中信號的周期數/Time。
結論
用這種方法可以實現一個簡易的示波器,整個係統結構簡單,清晰。充分利用了AVR單片機內部資源使係統電路得以簡單化,就連係統的工作時鍾也是AVR內部自帶的。通過測試該係統在測量頻率方向的誤差很小,可以用來比較準確的測量測試信號的頻率。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 築基AI4S:摩爾線程全功能GPU加速中國生命科學自主生態
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
微波功率管
微波開關
微波連接器
微波器件
微波三極管
微波振蕩器
微電機
微調電容
微動開關
微蜂窩
位置傳感器
溫度保險絲
溫度傳感器
溫控開關
溫控可控矽
聞泰
穩壓電源
穩壓二極管
穩壓管
無焊端子
無線充電
無線監控
無源濾波器
五金工具
物聯網
顯示模塊
顯微鏡結構
線圈
線繞電位器
線繞電阻





